C 基於開源MQTT自主接入阿里雲IoT平台

2021-09-25 08:49:57 字數 2182 閱讀 8191

1.1 註冊阿里雲賬號

使用**賬號或手機號,開通阿里雲賬號,並通過實名認證(可以用支付寶認證)

1.2 免費開通iot物聯網套件

產品官網 

1.3 軟體開發環境

2.1 建立基礎版產品

產品資訊

訊息通訊topic

2.2 註冊裝置

獲取裝置身份三元組,productkey,devicename,devicesecret

3.1 iot平台接入password簽名演算法檔案

簽名規則參考 

using system;

using system.collections.generic;

using system.linq;

using system.text;

using system.security.cryptography;

namespace iotxsdkmqttnet

byte key = encoding.utf8.getbytes(devicesecret);

byte signcontent = encoding.utf8.getbytes(builder.tostring());

//根據signmethod動態調整,硬編碼了: 'hmacmd5'

var hmac = new hmacmd5(key);

byte hashbytes = hmac.computehash(signcontent);

stringbuilder signbuilder = new stringbuilder();

foreach (byte b in hashbytes)

return signbuilder.tostring();}}

}

3.2 接入iot平台c#版本的mqtt庫

c#的mqtt庫 

目前最好用的c#庫是 eclipse出的m2mqtt庫,

專案的位址是 

使用方式是在vs 的命令中輸入 install-package m2mqtt

3.3 裝置端應用程式

using system;

using system.net;

using system.collections.generic;

using uplibrary.networking.m2mqtt;

using uplibrary.networking.m2mqtt.messages;

using system.text;

using system.linq;

namespace iotmqttdemo

static void connectmqtt(string targetserver, string mqttclientid, string mqttusername, string mqttpassword)";

var id = client.publish(pubtopic, encoding.ascii.getbytes(content));

//訂閱訊息

client.subscribe(new string , new byte );

}static void client_mqttmsgpublishreceived(object sender, mqttmsgpublisheventargs e)}}

雲端看到裝置上線記錄,資料上報記錄

至此,完成了.net平台裝置c#語言接入阿里雲iot物聯網雲平台的開發實踐。

mqtt模擬器:關注

知識課堂:c# mqttnet使用心得和c# mqtt庫m2mqtt的使用方法

基於開源MQTT自主接入阿里雲IoT平台(C )

本文由 gxic 作者 wongxmig 完成,歡迎關注 iot 開發者社群。1.1 註冊阿里雲賬號 使用 賬號或手機號,開通阿里雲賬號,並通過實名認證 可以用支付寶認證 1.2 免費開通iot物聯網套件 產品官網 1.3 軟體開發環境2.1 建立基礎版產品 產品資訊 訊息通訊topic 2.2 註...

Qt基於開源MQTT自主接入阿里雲IoT平台

三 示例 1 根據三元組資訊計算登入阿里雲iot平台的必要引數 片.三元組資訊設定 productkey xx 需要跟阿里雲iot平台一致 devicename xx 需要跟阿里雲iot平台一致 devicesecret xx 需要跟阿里雲iot平台一致 regionid cn shanghai p...

mosquitto 基於MQTT訊息推送

mosquitto note 基於mqtt訊息推送 要解決的問題是 給android手機做訊息推送 自已搭建訊息推送後台 端 中轉訊息,守護程序 mosquitto 傳送訊息客戶端 mosquitto pub 接收訊息客戶端 mosquitto sub 管理密碼檔案 mosquitto passwd...