返回旧版
当前位置:
首页
>
技术支持
Product user manual

产品使用手册

FF_MQTT

2023-11-25 15:15:58

FF_MQTT 接口协议规范V1.7

Version

Data

Athor

 

V1.6

2022-02-14

chy

增加主题WriteReply

V1.7

2022-03-07

chy

修改WriteReply的json格式

简介

四信网关支持通过FF_MQTT协议将数据推送到第三方平台,第三方服务器需符合四信FF_MQTT协议接口文档所定义的接口。同时,用户需通过配置MQTT推送的服务器地址和端口号,登录用户名、密码,以及是否加密传输等信息。

二、认证

2.1 客户端ID

客户端ID作为登录连接MQTT服务器时的客户端标识符(Client Identifier),支持长度1-64位的Ascall数据格式(仅支持数字+英文格式),可选配置为SN码或设备ID,若为SN码即为设备出厂默认的唯一设备条形码,也可配置为设备ID,提供可配置选项。

2.2 用户名与密码

MQTT CONNECT连接时的用户名和密码,若使用此功能,服务器必须接受检验账号合法性并给出登录成功或失败的CONNACK 消息。

2.3 通信加密

MQTT 支持 TLS 加密,支持三种方式,服务器验证模式(也叫双向认证方式),客户端认证(单向认证),预共享秘钥方式(匿名连接)。

服务器验证模式可以由预先下载的服务器信息,设备登录 MQTT 服务器时收到的服务器发送过来的凭证做对比,如不符,则设备拒绝登录该服务器,切换服务器链接;

客户端认证模式,由提供私钥与凭证,让服务器验证是否可以允许设备联机;

匿名连接模式,提供预共享秘钥与客户端标识连接服务器。

三、心跳

四信网关提供keep alive的心跳报文,使用MQTT协议约定的心跳报文维持和服务器的连接,另外还自带了设备心跳,默认心跳时间间隔为60秒。

设备心跳

Topic/ffgw/SN/system/heartbeat

{

"time": "2020-07-20 16:16:30"//当前系统时间

}

四、系统主题

系统主题为每个设备默认自带的主题Topic列表,在创建设备MQTT协议上,自动带上此类主题。

4.1 主题列表

主题列表为系统默认主题,服务器可以通过读取此主题获得网关设备支持的主题列表。

主题:Topic/ffgw/SN/system/Devinfo

类型:订阅

内容:

{

"MqttVer": "3.1.1",

"username": "ff",

"password": "16852555",

"topicList": [

{

"topicname": "Topic/ffgw/SN/system/ReportData", //实时数据

"type": "pub"

},

{

"topicname": "Topic/ffgw/SN/system/AlarmEvent", //报警事件

"type": "pub"

},

{

"topicname": "Topic/ffgw/SN/system/HistoryData", //历史数据

"type": "pub"

},

{

"topicname": "Topic/ffgw/SN/system/ReadData",//发布

"type": "pub"

},

{

"topicname": "Topic/ffgw/SN/system/WriteData", //订阅

"type": "sub"

},

{

"topicname": "Topic/ffgw/SN/system/WriteReply", //订阅回复

"type": "pub"

},

{

"topicname": "Topic/ffgw/SN/system/heartbeat", //心跳

"type": "pub"

}

],

"Devstaus": [

{"devtype": "fg100"},//设备型号

{"solfver": "V1.0"},//网关软件版本

{"reporting_cycle": "60"},//上传周期

{"batch_reports_cnt": "1000"},//数据批量上报个数

{"change_reporting": "1"},//数据变化上报状态//1-开启,0-关闭

{"encryption_enabled": "1"},//是否启用加密(包含启用时,对应状态)1-开启,0-关闭

{"time": "2020-07-20 16:16:30"},//当前时间

{ "com1": "enable", "protype": "ModbusRtu"},//通道启用时上报当前使用的PLC类型

{ "com2": "disable"},

{ "com3": "disable"},

{ "com4": "disable"},

{ "com5": "disable"},

{ "LAN1": "disable"},

{ "LAN2": "disable"},

{ "LAN3": "disable"},

{ "LAN4": "disable"}

]

}

4.2实时数据

Topic/ffgw/SN/system/ReportData

{

"Time":"2018-4-10 12:13:43",

"Type":"0",//上报类型,0:周期上报,1:单个数据突变上报, 2:多个数据突变打包上报,3:响应读数据处理;4:全部上报;

"Data":[

{"name":"温度","value":"-2.6"},

{"name":"电磁阀","value":"on"},

{"name":"气泵","value":"off"}

]

}

4.3 报警事件

Topic/ffgw/SN/system/AlarmEvent

{

"AlarmType":"1",//1:报警,0:报警恢复

"time":"2018-4-10 16:24:13",

"name":"Name",

"value":"1"

}

4.4历史数据

Topic/ffgw/SN/system/HistortyData

{

"time": "2020-07-20 16:16:30",//当前系统时间

"Data":[

{"name":"当前温度","value":"1.8","time":"2019-8-6 17:00:02"},

{"name":"当前温度","value":"2.2","time":"2019-8-6 17:00:03"},

{"name":"当前温度","value":"2.3","time":"2017-8-6 17:00:04"},

{"name":"当前温度","value":"2.6","time":"2017-8-6 17:00:05"},

{"name":"当前温度","value":"4.0","time":"2017-8-6 17:00:06"}

]

}

4.5数据远程读取

支持多个同时读取

Topic/ffgw/SN/system/ReadData

{

"dataname":"",

"dataname":"",

"dataname":""

}

4.6数据远程设置

支持多个同时写入

Topic/ffgw/SN/system/WriteData

{

"name1":"value1",

"name2":"value2",

"name3":"value3"

}

4.7设备信息读取
支持读取设备信息

类型:发布
Topic/ffgw/SN/system/DevinfoRqst
{
"time": "2020-07-20 16:16:30",//当前系统时间
"devinforgst":"",
}

订阅Topic:Topic/ffgw/SN/system/Devinfo

4.8 数据远程设置应答

Topic/ffgw/SN/system/WriteReply

{

"name1":"0",//0写成功,1写失败

"name2":"0",

"name3":"1"

}

提交工单

  • 描述内容越详细,越有利于快速处理问题!
  • (带* 必填项)

业务咨询

  • (带* 必填项)