Version |
Data |
Athor |
|
V1.6 |
2022-02-14 |
chy |
增加主題WriteReply |
V1.7 |
2022-03-07 |
chy |
修改WriteReply的json格式 |
四信網關支持通過FF_MQTT協議將數據推送到第三方平臺,第三方服務器需符合四信FF_MQTT協議接口文檔所定義的接口。同時,用戶需通過配置MQTT推送的服務器地址和端口號,登錄用戶名、密碼,以及是否加密傳輸等信息。
客戶端ID作為登錄連接MQTT服務器時的客戶端標識符(Client Identifier),支持長度1-64位的Ascall數據格式(僅支持數字+英文格式),可選配置為SN碼或設備ID,若為SN碼即為設備出廠默認的唯一設備條形碼,也可配置為設備ID,提供可配置選項。
MQTT CONNECT連接時的用戶名和密碼,若使用此功能,服務器必須接受檢驗賬號合法性并給出登錄成功或失敗的CONNACK 消息。
MQTT 支持 TLS 加密,支持三種方式,服務器驗證模式(也叫雙向認證方式),客戶端認證(單向認證),預共享秘鑰方式(匿名連接)。
服務器驗證模式可以由預先下載的服務器信息,設備登錄 MQTT 服務器時收到的服務器發(fā)送過來的憑證做對比,如不符,則設備拒絕登錄該服務器,切換服務器鏈接;
客戶端認證模式,由提供私鑰與憑證,讓服務器驗證是否可以允許設備聯機;
匿名連接模式,提供預共享秘鑰與客戶端標識連接服務器。
四信網關提供keep alive的心跳報文,使用MQTT協議約定的心跳報文維持和服務器的連接,另外還自帶了設備心跳,默認心跳時間間隔為60秒。
設備心跳
Topic/ffgw/SN/system/heartbeat
{
"time": "2020-07-20 16:16:30"http://當前系統(tǒng)時間
}
系統(tǒng)主題為每個設備默認自帶的主題Topic列表,在創(chuàng)建設備MQTT協議上,自動帶上此類主題。
主題列表為系統(tǒng)默認主題,服務器可以通過讀取此主題獲得網關設備支持的主題列表。
主題: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",//發(fā)布
"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"},//數據變化上報狀態(tài)//1-開啟,0-關閉
{"encryption_enabled": "1"},//是否啟用加密(包含啟用時,對應狀態(tài))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"}
]
}
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"}
]
}
Topic/ffgw/SN/system/AlarmEvent
{
"AlarmType":"1",//1:報警,0:報警恢復
"time":"2018-4-10 16:24:13",
"name":"Name",
"value":"1"
}
Topic/ffgw/SN/system/HistortyData
{
"time": "2020-07-20 16:16:30",//當前系統(tǒng)時間
"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"}
]
}
支持多個同時讀取
Topic/ffgw/SN/system/ReadData
{
"dataname":"",
"dataname":"",
"dataname":""
}
支持多個同時寫入
Topic/ffgw/SN/system/WriteData
{
"name1":"value1",
"name2":"value2",
"name3":"value3"
}
4.7設備信息讀取
支持讀取設備信息
類型:發(fā)布
Topic/ffgw/SN/system/DevinfoRqst
{
"time": "2020-07-20 16:16:30",//當前系統(tǒng)時間
"devinforgst":"",
}
訂閱Topic:Topic/ffgw/SN/system/Devinfo
Topic/ffgw/SN/system/WriteReply
{
"name1":"0",//0寫成功,1寫失敗
"name2":"0",
"name3":"1"
}