python怎么实现mqtt发送数据_怎么使用python paho-mqtt将设备信息发布到云?

问题描述

我准备借助paho-mqtt工具模拟设备向云端发布消息,使用的是actorcloud。但是我目前无论怎么写,client.publish()好像都没有起作用。在actorcloud的面板设备事件和功能数据这两栏都没有看见数据。我不知道问题出在哪个步骤,如果有大佬知道请指点一下,谢谢!

问题出现的环境背景及自己尝试过哪些方法

python 3.7.7

连接云端和接收云端消息都已经实现了,原本connect、publish、subscribe都放在一个文件里,介于消息发布一直实现不了,我就拎出来单独写。

2020.05.12更新:

由于python写的脚本无法执行publish的功能,我改用MQTT X终端工具模拟设备进行发布订阅。

发布:

在MQTT X中发布一条信息:

actorcloud里面看不到:

订阅:

在actorcloud中发布一条信息:

MQTT X收到了:

我不能理解为什么actorcloud里设备事件里一条记录都没有。

相关代码

import paho.mqtt.client as mqtt

import time

actor_client_id = "设备编号"

client = mqtt.Client(client_id=actor_client_id, clean_session=True)

username = "连接用户名"

password = "设备密钥"

client.username_pw_set(username, password)

host_name = "broker.actorcloud.io"

host_port = 1883

client.connect(host_name, host_port, 60)

time.sleep(1)

nData = 1

while 1:

time.sleep(0.5)

nData += 1

nData %= 100

client.publish('testtopic', nData)

你期待的结果是什么?实际看到的错误信息又是什么?

以上代码可以实现连接,但还是接收不到消息。我想知道我犯了什么样的错误,导致云端不能接收到设备发布的消息。谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值