说明:
控制数据传输,用于现场设备和远端设备之间的二进制数据通信。两端SDK均提供一个数据发送接口和一个数据接收回调接口。
注意:
现场设备 SDK,数据发送接口会向与该现场设备处于会话连接中的所有远端设备发送数据消息。
远端设备 SDK,数据发送接口可以向会话连接中的指定现场设备发送数据消息,仅当该远端设备拥有现场设备控制权时,才可发送成功。
现场设备:
向远端设备发送数据
说明:
该接口会向与该现场设备处于会话连接中的所有远端设备发送数据消息。 发送消息单条长度限制 qos0 为 1KB,qos1 为 10KB,发送频率限制为 100Hz。每秒数据大小 100KB。
/*** @name TRRO_sendControlData* @brief 向远端设备发送数据* @param[in] msg 消息体* @param[in] len 消息体长度* @param[in] qos 0:unreliable 1:reliable* @return 1 for success, other failed*/extern "C" TRRO_EXPORT int TRRO_sendControlData(const char* msg, int len, int qos = 0);
参数 | 含义 |
msg | 消息内容 |
len | 消息长度 |
qos | 发送 qos 类型。 0:超低时延传输,网络不佳时可能会有丢失 1:可靠传输 |
返回值 | 成功:1 失败:<= 0 |
注册控制消息回调
/*** @name TRRO_registerControlDataCallback* @brief 注册远端设备消息回调函数* @param[in] context 上下文指针,回调时会返回该上下文指针* @param[in] callback 回调函数* @return 1 for success, other failed*/extern "C" TRRO_EXPORT int TRRO_registerControlDataCallback(void* context, TRRO_onControlData * callback);
参数 | 含义 |
context | 回调上下文 |
TRRO_onControlData | 回调函数 |
回调函数定义/*** @name TRRO_onControlData* @brief 接收远端设备消息回调* @param[in] context 上下文指针,返回注册时传入的context* @param[in] controller_id 远端设备ID* @param[in] msg 消息体内容* @param[in] len 消息体长度* @param[in] qos 消息qos类型 0:unreliable, 1:reliable* @return void*/typedef void TRRO_onControlData(void *context, const char *controller_id, const char* msg, int len, int qos);
参数 | 含义 |
context | 回调上下文 |
controller_id | 控制端设备id |
msg | 控制消息字符串 |
len | 字符串长度 |
qos | 消息 qos 类型: 0:超低时延传输,网络不佳时可能会有丢失 1:可靠传输 |
远端设备
向现场设备发送数据
/** @name : TRRO_sendControlData* @brief : 向现场设备发送控制数据* @input : gwid 目标现场设备 ID* msg 发送消息,二进制透传* len 消息长度* qos 消息传输qos 0:超低时延传输 1:可靠传输* @return : 成功 1 失败 <= 0*/extern "C" TRRO_EXPORT int TRRO_sendControlData(const char* gwid, const char* msg, int len, int qos = 0);
参数 | 含义 |
gwid | 现场设备 ID |
msg | 发送二进制数据 |
len | 消息长度 |
qos | 发送 qos: 0:超低时延传输,网络不佳时可能会有丢失 1:可靠传输 |
返回值 | 成功:1 失败:<= 0 |
注册控制消息回调
使用说明:此接口用于注册现场设备发送的报告数据回调函数,可根据需要实现。
/*** @name TRRO_registerReportDataCallback* @brief 注册现场设备消息回调函数* @param[in] context 上下文指针,回调时会返回该上下文指针* @param[in] callback 回调函数* @return 1 for success, other failed*/extern "C" TRRO_EXPORT int TRRO_registerReportDataCallback(void* context, TRRO_onReportData * callback);
参数 | 含义 |
context | 上下文指针,回调时会返回该上下文指标用于定位 |
callback | 回调函数 |
/** @name : TRRO_onReportData* @brief : 接收来自现场设备信息回调* @input : context 回调上下文指针, 返回注册回调函数时传入的context* gwid 消息来源现场设备id* msg 消息, 二进制透传* len 消息长度* qos 消息来源传输qos, 0:不可靠传输, 1:可靠传输* @return : void*/typedef void STD_CALL TRRO_onReportData(void* context, const char* gwid, const char* msg, int len, int qos);
参数 | 含义 |
context | 回调上下文,返回注册时传入的 context |
gwid | 现场设备 ID |
msg | 控制消息字符串 |
len | 字符串长度 |
qos | 消息 qos 类型。 0:超低时延传输,网络不佳时可能会有丢失 1:可靠传输 |