使mqtt连接到ttn的小包
ttnmqtt的Python项目详细描述
物联网
目录
说明
这个软件包提供了一种连接到物联网的简单方法 通过MQTT。注意,首先需要创建一个应用程序 使用设备运行mqtt客户机的构造函数,因为您需要 提供一个应用程序ID和一个设备ID。首先包括包裹 在这样的文件中:
fromttnmqttimportMQTTClientasmqtt
mqttclient
可以按照此方案调用类构造函数:
mqtt(APPID,APPEUI,PSW)
- APPID:这是创建应用程序时给应用程序的名称 它。
- APPEUI:这是ttn上应用程序的唯一标识符。 站台。
- PSW:可以在应用程序页底部的 访问键。以上所有信息都可以在您的 物联网控制台。构造函数返回mqttclient对象 设置您的应用程序信息,准备连接。
连接
将先前创建的客户机连接到事物网络mqtt 默认为经纪人。
client.connect([address],[port])
- address:要连接到的mqtt代理的地址。 默认为eu.thethings.network
- port:要连接的端口。默认为1883
断开
断开与我们调用该方法的mqtt客户机的连接。也能 停止永久循环,以防客户端在由启动的循环上运行 start()方法。
client.disconnect()
开始
启动一个循环作为流程的主循环。你就跑不动了 在这个脚本上同时做的任何事情。
client.start()
注意,为了接收上行链路,需要启动一个环路 信息。
启动后台
在后台为客户端启动循环,以便 在同一脚本中运行另一个进程(如web服务器)。
client.startBackground()
停止背景
停止以startBackground()方法开始的循环。它 同时断开客户端连接。
client.stopBackground()
setuplinkcallback
设置回调函数,当上行消息为 收到。
client.setUplinkCallback(uplinkCallback)
上行回调
回调函数必须在脚本中声明 结构:*uplinkCallback(msg, client)*msg:消息 由客户端*client接收:回调来自的客户端 被执行时正在调用
在每次接收消息时,您都应该在 控制台,将执行回调。
设置连接行为
按照paho mqtt standart更改connect回调函数。
client.setConnectBehavior(custom_function)
- custom_function(client, userdata, flags, rc):函数 将是MQTT客户机的新连接行为。
- client:调用回调的mqtt客户机。
- userdata:用户的数据。默认为''
- flags:连接标志
- rc:connect方法的结果。0如果连接 成功。
单击here了解更多信息 关于paho mqtt包的信息。
setPublishCallback
按照paho mqtt standart设置发布回调函数。
client.setPublishCallback(publishCallback)
发布回调
- publishCallback(mid, client):将是新的 MQTT客户机的发布行为。
- mid:它与发布调用返回的mid变量匹配 允许跟踪已发送的邮件。
- client:我们从中打回电话。
发布
将消息发布到MQTT代理。
client.publish(deviceID,message)
- deviceID:要向其发送消息的设备的ID。
- message:要发布到代理的消息。信息 发送给ttn代理的需要是一个字符串,并且可以跟踪 这个例子(它不是强制性的,但它们主要是基于这个 格式): json {"port": 1, "confirmed": false, "payload_raw": "AA=="}这个 消息将向您的设备发送有效负载00。