Mqtt傳輸?shù)耐\?chē)位數(shù)據(jù)接收

Context

公司服務(wù)器 emqttd: mqtt代理服務(wù)器(負(fù)責(zé)接收并轉(zhuǎn)發(fā))
設(shè)備:發(fā)送mqtt數(shù)據(jù)包(topic+message)

接收程序

技術(shù)是nodejs腳本,借助mqtt和bitwise庫(kù)實(shí)現(xiàn)。
傳輸方式是websocket,所以host地址填的是ws://<IP>:8083/mqtt, 8083是emqttd開(kāi)放給websocket的端口。

var client = mqtt.connect(MQTT_ADDR, { clientId: 'BeCarefulexclusiveID', connectTimeout: 1000, debug: true }, (err) => {
    if (err) {
        console.log('Client established error');
    } else {
        console.log('Client established');
    }
});

如果協(xié)議中數(shù)據(jù)是按位分配字段,需要了解bitwise的使用:

var array_l = bitwise.readByte(data[3]);  //array_l is a Number(0/1) array, thus could be operated in bitwise layer

但是每一個(gè)Byte讀出的8位數(shù)組需要拆分:

var msgType = MV.slice(0, 4); // get 0 ~3 four bits

Array2String:

msgType = msgType.join("");

上面的代碼雙引號(hào)表示數(shù)組每個(gè)元素間沒(méi)有字符間隔 組成字符串

接著將字符串以2進(jìn)制的方式轉(zhuǎn)換為Int,如字符串”011“就是3

msgType = parseInt(msgType, 2);

實(shí)際情況 公司cai'y

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 第5章 引用類型(返回首頁(yè)) 本章內(nèi)容 使用對(duì)象 創(chuàng)建并操作數(shù)組 理解基本的JavaScript類型 使用基本類型...
    大學(xué)一百閱讀 3,684評(píng)論 0 4
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,653評(píng)論 19 139
  • 四月一個(gè)晴朗的早晨,我在原宿后街同一個(gè)百分之百的女孩擦肩而過(guò)。 不誨的說(shuō),女孩算不得漂亮,并無(wú)吸引人之處,衣著也不...
    蟲(chóng)彩閱讀 459評(píng)論 0 0
  • 你是人間的四月天 ——一一林徽因 我說(shuō) 你是人間的四月天; 笑響點(diǎn)亮了四面風(fēng);輕靈在春的光艷中交舞著變。 你是四月...
    王俊楠_bbc9閱讀 295評(píng)論 1 1
  • 你醉了,我們扶你; 你耍酒瘋,我們陪你; 你哭鬧,我們隨你; 你認(rèn)錯(cuò),我們不怪你; 你說(shuō)笑,我們鬧你; 你自戀,我...
    BULABULA小八閱讀 260評(píng)論 0 1

友情鏈接更多精彩內(nèi)容