## API参考文档 主要的API参考文档如下: #### from uiotedgedriverlinksdk * **[getLogger()](#getLogger)** --- #### from uiotedgedriverlinksdk.client * **[getConfig()](#getConfig)** * **[Config()](#Config)** * Config#**[getDeviceInfos()](#getDeviceInfos)** * Config#**[getDriverInfo()](#getDriverInfo)** --- #### from uiotedgedriverlinksdk.exception * BaseEdgeException * EdgeDriverLinkException * EdgeDriverLinkTimeoutException * EdgeDriverLinkDeviceConfigException * EdgeDriverLinkDeviceOfflineException * EdgeDriverLinkOfflineException * EdgeDriverLinkDeviceProductSecretException --- #### from uiotedgedriverlinksdk.client * **[SubDevice()](#subdevice)** * SubDevice#**[set_product_sn()](#set_product_sn)** * SubDevice#**[set_device_sn()](#set_device_sn)** * SubDevice#**[set_product_secret()](#set_product_secret)** * SubDevice#**[set_msg_callback()](#set_msg_callback)** * SubDevice#**[login()](#login)** * SubDevice#**[logout()](#logout)** * SubDevice#**[publish()](#publish)** * SubDevice#**[registerDevice()](#registerDevice)** --- #### from uiotedgedriverlinksdk.edge * **[register_device()](#register)** * **[set_on_topo_change_callback()](#set_on_topo_change_callback)** * **[set_on_status_change_callback()](#set_on_status_change_callback)** * **[get_topo()](#get_topo)** * **[add_topo()](#add_topo)** * **[delete_topo()](#delete_topo)** --- * **[get_edge_online_status()](#get_edge_online_status)** --- ### getLogger() 返回驱动内置logger。 --- ### getConfig() 返回驱动相关配置。 --- ### Config() 基于当前驱动配置字符串构造新的Config对象。 --- ### Config. getDeviceInfos() 返回所有设备相关信息,返回DeviceInfo`List` DeviceInfo包括如下信息: * productSN `str `: 官网申请的productKey。 * deviceSN `str `: 设备名 * config`dict `:设备自定义配置 --- ### Config. getDriverInfo() 返回驱动相关信息,返回DriverInfo`List` --- ### SubDevice(product_sn,device_sn, on_msg_callback) 设备接入客户端类, 用户主要通过它上下线设备和主动上报消息 * product_sn`str`: 云端分配的ProductSN * device_sn`str`: 云端分配的DeviceSN * on_msg_callback`func(topic:str, msg:b'')`: 云端下发消息回调,消息类型 []byte, 例如:` def callbacl(topic:str, msg:b''): print(str(msg,'utf-8')` --- ### SubDevice.set_product_sn(product_sn) 设置子设备的productSN * product_sn`str`: 云端分配的ProductSN --- ### SubDevice.set_device_sn(device_sn) 设备子设备的DeviceSN * device_sn`str`: 云端分配的DeviceSN --- ### SubDevice.set_product_secret(product_secret) 设置子设备的Product Secret * product_secret`str`: 云端分配的Product Secret --- ### SubDevice.set_product_secret(product_secret) 设置子设备的Product Secret * product_secret`str`: 云端分配的Product Secret --- ### SubDevice.set_msg_callback(msg_callback) 设置子设备的接收消息的回调函数 * set_msg_callback`func`: 子设备收消息回调,例如:` def callbacl(topic:str, msg:b''): print(str(msg,'utf-8')` --- ### SubDevice.login(sync=False, timeout=5) 上报上线事件到Link IoT Edge * sync`bool`: 是否异步登陆 * timeout`int`: 等待响应超时时间,单位s(秒) --- ### SubDevice.logout(sync=False, timeout=5) 上报下线事件到Link IoT Edge * sync`bool`: 是否异步登陆 * timeout`int`: 等待响应超时时间,单位s(秒) --- ### SubDevice.publish(topic, payload) 上报消息到Link IoT Edge。异步 * topic`str`: 上报消息到Link IoT Edge的mqtt topic。 * payload`[]byte`: 上报消息到Link IoT Edge的消息内容 --- ### SubDevice.registerDevice(timeout) 动态注册一个设备到Link IoT Edge。同步 * timeout`int`: 等待响应超时时间,单位s(秒) --- --- ### register_device(product_sn, device_sn, product_secret, timeout=5) 上报动态注册到Link IoT Edge。同步执行,等待响应 * product_sn`str`: 云端分配的ProductSN * device_sn`str`: 自定义的DeviceSN * product_secret`str`: ProductSecret * timeout`int`: 等待响应超时时间,单位s(秒) --- ### set_on_topo_change_callback(callback) 云端topo信息变化的下发消息的回调函数 * callback`func`: 云端下发消息回调,消息类型 {}, 例如: `def callback(msg): print(msg)` --- ### set_on_status_change_callback(callback) 云端设备启用和禁用信息变化的下发消息的回调函数 * callback`func`: 云端下发消息回调,消息类型 {}, 例如: `def callback(msg): print(msg)` --- ### get_topo(timeout=5) 上报get topo信息到Link IoT Edge。同步执行,等待响应 * timeout`int`: 等待响应超时时间,单位s(秒) --- ### add_topo(product_sn, device_sn, timeout=5) 上报add topo信息到Link IoT Edge * product_sn`str`: 云端分配的ProductSN * device_sn`str`: 云端分配的DeviceSN * timeout`int`: 等待响应超时时间,单位s(秒) --- ### delete_topo(product_sn, device_sn, timeout=5) 上报delete topo信息到Link IoT Edge * product_sn`str`: 云端分配的ProductSN * device_sn`str`: 云端分配的DeviceSN * timeout`int`: 等待响应超时时间,单位s(秒) --- ### get_edge_online_status() 获取网关的在线状态,返回True / False ---