怎么通过MQTT协议接入OneNET平台
MQTT(Message Queuing Telemetry Transport)是一种轻量级的消息传递协议,专为资源受限的设备和低带宽、不可靠网络环境设计。它最初由IBM开发,现已成为物联网领域的标准协议之一。那设备通过MQTT协议接入OneNET平台要怎么办?
以下是使用MQTT协议接入中国移动OneNET物联网平台的简明步骤:
1. 平台准备
- 注册账号:访问OneNET官网注册开发者账号
- 创建产品:进入控制台 → 创建新产品,选择接入协议为MQTT
- 添加设备:在产品下创建设备,记录
产品ID、设备名称和鉴权信息(APIKey或Token)
2. MQTT连接参数
- 服务器地址:
mqtt.heclouds.com - 端口号:
- 非加密:
1883 - SSL加密:
8883
- 非加密:
- 客户端ID:
设备名称 - 用户名:
产品ID - 密码:使用Token或APIKey生成(推荐Token方式更安全)
密码生成示例(Token方式):
import hashlib
product_id = "your_product_id"
device_name = "your_device_name"
api_key = "your_api_key"
# 生成过期时间戳(示例为1小时后)
expire = int(time.time()) + 3600
# 计算签名
sign_str = f"products/{product_id}/devices/{device_name}".encode()
sign = hashlib.sha1(sign_str + api_key.encode()).hexdigest()
# 组合最终密码
password = f"version=2018-10-31&res={sign_str}&et={expire}&method=sha1&sign={sign}"
3. 连接示例(Python伪代码)
import paho.mqtt.client as mqtt
def on_connect(client, userdata, flags, rc):
if rc == 0:
print("连接成功")
# 订阅命令主题
client.subscribe(f"$sys/{product_id}/{device_name}/thing/command/post")
else:
print(f"连接失败,错误码: {rc}")
client = mqtt.Client(client_id=device_name, protocol=mqtt.MQTTv311)
client.username_pw_set(username=product_id, password=password)
client.connect("mqtt.heclouds.com", 1883, 60)
client.on_connect = on_connect
client.loop_start()
4. 数据上传
使用标准物模型格式(JSON)发布数据到属性主题:
topic = f"$sys/{product_id}/{device_name}/thing/property/post"
payload = {
"id": "123",
"version": "1.0",
"params": {
"temperature": 25.6,
"humidity": 45
}
}
client.publish(topic, json.dumps(payload), qos=1)
5. 命令接收
订阅命令响应主题并处理消息:
def on_message(client, userdata, msg):
payload = json.loads(msg.payload)
print("收到命令:", payload)
# 处理命令并回复
reply_topic = f"$sys/{product_id}/{device_name}/thing/property/post/reply"
client.publish(reply_topic, json.dumps({"id": payload["id"], "code":200}))
client.on_message = on_message
注意事项
- 保持心跳:默认keepalive为60秒,网络不稳定时可适当缩短
- QoS建议:关键数据使用QoS1保证送达
- 重连机制:实现自动重连逻辑应对网络波动
- 证书验证:使用8883端口时需要配置CA证书
- 数据格式:遵循OneNET物模型规范或自定义数据格式
建议测试时使用MQTT.fx工具进行协议调试,正式开发时参考OneNET官方文档获取最新接口规范。
MQTT.fx 连接Onenet 多协议接入平台 MQTT协议(旧版)详解
TCP dtu.heclouds.com 183.230.40.40 1811 打开Onenet平台,多协议
2024-09-30 15:20:04
鸿蒙开发板上使用MQTT协议、OneNET实现第一个物联网项目
通常来说,一个物联网产品应当包括设备、云平台、手机APP。我将在鸿蒙系统上移植MQTT协议、
资料下载
ah此生不换
2020-10-26 17:27:17
M5310-A MQTT接入OneNET平台的指导手册资料免费下载
本手册描述 M5310-A 模组与 OneNET 平台对接流程示例,对接时,采用 OneNET
资料下载
物联网小程
2019-06-17 08:00:00
OneNET Studio云平台STM32物联网开发(1)- MQTT协议设备接入数据上报测试
OneNET Studio云平台STM32物联网开发(1)- MQTT协议
2022-09-25 01:01:26
使用CC3200通过MQTT协议与Onenet平台完成基本的连接
I2C可以和这两个传感器通信,获取对应的数据。Onenet是中国移动推出的物联网云平台,支持主流的物联网协议,本次实验将使用CC3200
OpenHarmony轻量系统开发【12】OneNET云接入
/hihope-3861-smart-home-kit12.1 OneNET云介绍通常来说,一个物联网产品应当包括设备、云平台、手机APP。我将在鸿蒙系统上移植
在鸿蒙开发板上使用MQTT协议、OneNET实现第一个物联网项目 精选资料分享
通常来说,一个物联网产品应当包括设备、云平台、手机APP。我将在鸿蒙系统上移植MQTT协议、
【HarmonyOS】在鸿蒙开发板上使用MQTT协议、OneNET实现第一个物联网项目
产品应当包括设备、云平台、手机APP。我将在鸿蒙系统上移植MQTT协议、OneNET
换一换
- 如何分清usb-c和type-c的区别
- 中国芯片现状怎样?芯片发展分析
- vga接口接线图及vga接口定义
- 芯片的工作原理是什么?
- 华为harmonyos是什么意思,看懂鸿蒙OS系统!
- 什么是蓝牙?它的主要作用是什么?
- ssd是什么意思
- 汽车电子包含哪些领域?
- TWS蓝牙耳机是什么意思?你真的了解吗
- 什么是单片机?有什么用?
- 升压电路图汇总解析
- plc的工作原理是什么?
- 再次免费公开一肖一吗
- 充电桩一般是如何收费的?有哪些收费标准?
- ADC是什么?高精度ADC是什么意思?
- dtmb信号覆盖城市查询
- EDA是什么?有什么作用?
- 中科院研发成功2nm光刻机
- 苹果手机哪几个支持无线充电的?
- type-c四根线接法图解
- 华为芯片为什么受制于美国?
- 怎样挑选路由器?
- 元宇宙概念股龙头一览
- 锂电池和铅酸电池哪个好?
- 什么是场效应管?它的作用是什么?
- 如何进行编码器的正确接线?接线方法介绍
- 虚短与虚断的概念介绍及区别
- 晶振的作用是什么?
- 大疆无人机的价格贵吗?大约在什么价位?
- 苹果nfc功能怎么复制门禁卡
- amoled屏幕和oled区别
- 单片机和嵌入式的区别是什么
- 复位电路的原理及作用
- BLDC电机技术分析
- dsp是什么意思?有什么作用?
- 苹果无线充电器怎么使用?
- iphone13promax电池容量是多少毫安
- 芯片的组成材料有什么
- 特斯拉充电桩充电是如何收费的?收费标准是什么?
- 直流电机驱动电路及原理图
- 传感器常见类型有哪些?
- 自举电路图
- 通讯隔离作用
- 苹果笔记本macbookpro18款与19款区别
- 新斯的指纹芯片供哪些客户
- 伺服电机是如何进行工作的?它的原理是什么?
- 无人机价钱多少?为什么说无人机烧钱?
- 以太网VPN技术概述
- 手机nfc功能打开好还是关闭好
- 十大公认音质好的无线蓝牙耳机