Version |
Data |
Athor |
|
V1.6 |
2022-02-14 |
chy |
增加主題WriteReply |
V1.7 |
2022-03-07 |
chy |
修改WriteReply的json格式 |
四信網(wǎng)關(guān)支持通過FF_MQTT協(xié)議將數(shù)據(jù)推送到第三方平臺,第三方服務(wù)器需符合四信FF_MQTT協(xié)議接口文檔所定義的接口。同時,用戶需通過配置MQTT推送的服務(wù)器地址和端口號,登錄用戶名、密碼,以及是否加密傳輸?shù)刃畔ⅰ?/p>
客戶端ID作為登錄連接MQTT服務(wù)器時的客戶端標(biāo)識符(Client Identifier),支持長度1-64位的Ascall數(shù)據(jù)格式(僅支持?jǐn)?shù)字+英文格式),可選配置為SN碼或設(shè)備ID,若為SN碼即為設(shè)備出廠默認(rèn)的唯一設(shè)備條形碼,也可配置為設(shè)備ID,提供可配置選項。
MQTT CONNECT連接時的用戶名和密碼,若使用此功能,服務(wù)器必須接受檢驗賬號合法性并給出登錄成功或失敗的CONNACK 消息。
MQTT 支持 TLS 加密,支持三種方式,服務(wù)器驗證模式(也叫雙向認(rèn)證方式),客戶端認(rèn)證(單向認(rèn)證),預(yù)共享秘鑰方式(匿名連接)。
服務(wù)器驗證模式可以由預(yù)先下載的服務(wù)器信息,設(shè)備登錄 MQTT 服務(wù)器時收到的服務(wù)器發(fā)送過來的憑證做對比,如不符,則設(shè)備拒絕登錄該服務(wù)器,切換服務(wù)器鏈接;
客戶端認(rèn)證模式,由提供私鑰與憑證,讓服務(wù)器驗證是否可以允許設(shè)備聯(lián)機(jī);
匿名連接模式,提供預(yù)共享秘鑰與客戶端標(biāo)識連接服務(wù)器。
四信網(wǎng)關(guān)提供keep alive的心跳報文,使用MQTT協(xié)議約定的心跳報文維持和服務(wù)器的連接,另外還自帶了設(shè)備心跳,默認(rèn)心跳時間間隔為60秒。
設(shè)備心跳
Topic/ffgw/SN/system/heartbeat
{
"time": "2020-07-20 16:16:30"http://當(dāng)前系統(tǒng)時間
}
系統(tǒng)主題為每個設(shè)備默認(rèn)自帶的主題Topic列表,在創(chuàng)建設(shè)備MQTT協(xié)議上,自動帶上此類主題。
主題列表為系統(tǒng)默認(rèn)主題,服務(wù)器可以通過讀取此主題獲得網(wǎng)關(guān)設(shè)備支持的主題列表。
主題:Topic/ffgw/SN/system/Devinfo
類型:訂閱
內(nèi)容:
{
"MqttVer": "3.1.1",
"username": "ff",
"password": "16852555",
"topicList": [
{
"topicname": "Topic/ffgw/SN/system/ReportData", //實時數(shù)據(jù)
"type": "pub"
},
{
"topicname": "Topic/ffgw/SN/system/AlarmEvent", //報警事件
"type": "pub"
},
{
"topicname": "Topic/ffgw/SN/system/HistoryData", //歷史數(shù)據(jù)
"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", //訂閱回復(fù)
"type": "pub"
},
{
"topicname": "Topic/ffgw/SN/system/heartbeat", //心跳
"type": "pub"
}
],
"Devstaus": [
{"devtype": "fg100"},//設(shè)備型號
{"solfver": "V1.0"},//網(wǎng)關(guān)軟件版本
{"reporting_cycle": "60"},//上傳周期
{"batch_reports_cnt": "1000"},//數(shù)據(jù)批量上報個數(shù)
{"change_reporting": "1"},//數(shù)據(jù)變化上報狀態(tài)//1-開啟,0-關(guān)閉
{"encryption_enabled": "1"},//是否啟用加密(包含啟用時,對應(yīng)狀態(tài))1-開啟,0-關(guān)閉
{"time": "2020-07-20 16:16:30"},//當(dāng)前時間
{ "com1": "enable", "protype": "ModbusRtu"},//通道啟用時上報當(dāng)前使用的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:單個數(shù)據(jù)突變上報, 2:多個數(shù)據(jù)突變打包上報,3:響應(yīng)讀數(shù)據(jù)處理;4:全部上報;
"Data":[
{"name":"溫度","value":"-2.6"},
{"name":"電磁閥","value":"on"},
{"name":"氣泵","value":"off"}
]
}
Topic/ffgw/SN/system/AlarmEvent
{
"AlarmType":"1",//1:報警,0:報警恢復(fù)
"time":"2018-4-10 16:24:13",
"name":"Name",
"value":"1"
}
Topic/ffgw/SN/system/HistortyData
{
"time": "2020-07-20 16:16:30",//當(dāng)前系統(tǒng)時間
"Data":[
{"name":"當(dāng)前溫度","value":"1.8","time":"2019-8-6 17:00:02"},
{"name":"當(dāng)前溫度","value":"2.2","time":"2019-8-6 17:00:03"},
{"name":"當(dāng)前溫度","value":"2.3","time":"2017-8-6 17:00:04"},
{"name":"當(dāng)前溫度","value":"2.6","time":"2017-8-6 17:00:05"},
{"name":"當(dāng)前溫度","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設(shè)備信息讀取
支持讀取設(shè)備信息
類型:發(fā)布
Topic/ffgw/SN/system/DevinfoRqst
{
"time": "2020-07-20 16:16:30",//當(dāng)前系統(tǒng)時間
"devinforgst":"",
}
訂閱Topic:Topic/ffgw/SN/system/Devinfo
Topic/ffgw/SN/system/WriteReply
{
"name1":"0",//0寫成功,1寫失敗
"name2":"0",
"name3":"1"
}