# 数据转发


该功能可以将设备中特定数据通过MQTT协议发送至第三方服务器。

提示

该功能只能在 4.006.210602.2.0213_Beta 版本或高于此版本中使用

使用MQTT协议进行数据转发,主要分为2个步骤:添加连接--->配置添加

1、添加MQTT配置连接,如图1-1所示

数据转发

图1-1

点击添加连接后将弹出“新增连接配置”界面,如图1-2所示

数据转发

图1-2

图1-2界面参数说明:
配置文件名称:MQTT连接配置的名称,支持汉字,英文,数字,下划线
代理平台:支持百度,和利时,自定义选择.
服务器地址:MQTT推送的自定义服务器地址
服务器端口:MQTT推动的自定义服务器端口号
ClientId:连接MQTT服务器的客户端标识符

常规配置选项配置参数说明:
MQTT版本:设备端支持3.1.1和3.1版本的MQTT标准协议
KeepAlive:如果客户端和服务器指定KeepAlive(s)时间内没有任何消息数据包,那么客户端和服务器之间的连接已经断开,默认为60s
推送方式:设置数据上传的推送方式,目前支持周期推送
周期:数据推送的周期

数据转发

图1-3

用户验证配置参数说明:
启用:连接MQTT服务器时使用用户名和密码进行认证
用户名:登录MQTT服务器的用户名
密码:登录MQTT服务器的密码

数据转发

图1-4

数据转发

图1-5

连接模式配置参数说明(暂不支持TCP加密连接):
连接方式:TCP连接,TCP加密连接(与MQTT服务器使用SSl进行通讯)

数据转发

图1-6

连接模式配置参数说明:
离线缓存:在MQTT离线状态下,消息没有推送出去,存在本地,MQTT连接上继续上传

当添加或编辑成功后,会自动下发配置到设备,MQTT配置连接列表中的连接项会展示当前下发状态以及连接状态,如果设备接收到配置,则下发图标展示绿色背景数据转发,反之则下发图标展示灰色背景数据转发。同理,若服务器与设备建立连接成功,则连接图标展示绿色背景数据转发,反之为灰色背景数据转发,如图1-20所示(左为下发图标,右为连接图标)

数据转发

图1-20

连接项点击右侧按钮,可对此连接项进行编辑、删除、复制、下发等操作

2、MQTT客户端连接配置好后,需要添加配置具体的信息,如图1-7

数据转发

图1-7

消息配置参数说明如下:
配置名称:该配置项的名称
功能:发布(设备端根据配置的主题消息,推送到MQTT服务器),订阅(设备端根据配置的主题,监听MQTT服务器转发的该主题消息并接收)
监控数据:写实时数据回发( 当设备端接收到写入实时数据消息时,回发一条消息)、设备重启回发(当设备端接收到设备重启消息时,回发一条消息)、设备报警上报( 当设备端产生报警时,会推送给MQTT服务器)、实时数据上报(把配置实时数据消息条目推送给MQTT服务器)、遗嘱(当设备端接收到设备离线消息时,回发一条消息,该功能只能在 4.102.221027.2.0300 版本或高于此版本中使用) 、 上线通知(当设备端接收到设备上线消息时,回发一条消息) 组合方式:数据上传的格式,默认键值对的方式
主题(topic):推送给MQTT服务器的主题

当监控数据选择【实时数据上报】时,可设置触发值(仅支持设备版本2.2.18或以上),如图

数据转发

点击添加数据后会在下列表格添加一行消息

数据转发

功能参数说明:
在线预览:点击可以看到消息体的模板如图1-9
配置名称:消息体的key值,如“message”和“LW0”
属性类型:消息体value数据类型,如字符串“success”,数值 123
变量名称:关联数据的变量名称(实时数据的变量名称),若没有关联变量为空默认值:若关联了变量,不可编辑,反之可以输入自定义数据
提示:关联了变量,默认值是关联变量的值


示例操作

提前需要准备的软硬件:
软件:AnyAccess,emqx,mqttfx
硬件:UBox-4G

(1)配置

数据转发

图1-10

演示pc安装emqx(windows),没有设置用户名和密码,所以不启用登录验证
服务器ip为192.168.1.131为当前电脑ip
服务器端口号:若emqx没有修改端口号,则默认为1883
设置设备ID为test_client
周期推送,且推送周期为5s

数据转发

图1-11

图1-11配置描述:设备端订阅 /100019/C_WriteRTD主题,在消息体中配置关联VW0的值,则根据配置的VW0值写入设备VW0实时数据

数据转发

图1-12

图1-12配置描述:当设备端接收到实时数据消息时,会把写数据回发/100019/C_WriteRTDAck主题发送给MQTT服务器

(2)用windows dos终端打开emqx服务,如图1-13

数据转发

图1-13

(3)验证客户端是否连接

用网页端登录连接127.0.0.1:18083,用户名默认: admin,密码默认: public

数据转发

图1-14

在图1-14客户端栏,若看到刚才配置的设备ID,则连接MQTT服务器成功

数据转发

图1-15

在图1-15主题栏,看到刚才订阅的主题,则设备端自定义订阅的主题成功

(4)打开mqttfx并登录本地emqx服务器,并订阅/100019/C_WriteRTDAck主题,如下图

数据转发

图1-16

(5)用mqttfx发布主题消息,如下

数据转发

图1-17

(6)验证实时数据有没有写成功,如图1-18

数据转发

图1-18

在AnyAccess实时数据页面,可以看到VW0的值已成功修改为666

(7)在mqttfx验证设备端是否发送写实时数据回发主题

数据转发

图1-19

在mqttfx可以看到接收到设备端发送的/100019/C_WriteRTDAck回复主题消息,消息体也为之前配置的消息
“message” : success
“网络延迟” : 101