温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

基于python怎么安装MQTT客户端

发布时间:2021-12-07 09:27:04 来源:亿速云 阅读:361 作者:iii 栏目:互联网科技

这篇文章主要讲解了“基于python怎么安装MQTT客户端”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“基于python怎么安装MQTT客户端”吧!

    MQTT是一个轻量级的消息协议。从2014年12月IOIT大会上得到的消息,该协议已经被OASIS标准组织接收,成立了专门的工作组,以意味着该规范正式走向了标准化之路。

    一个轻量级的MQTT服务器是:http://www.mosquitto.org,可以运行ARM/MIPS的嵌入式linux系统上,如OpenWRT。

    很多客户端模块现在被Eclipse基金会接管,发展很快。

    下面介绍基于python的MQTT的客户端的安装:

git clone http://git.eclipse.org/gitroot/paho/org.eclipse.paho.mqtt.python.git
cd org.eclipse.paho.mqtt.python
sudo python setup.py install

    注意,如果使用Sublime,最好到里面的控制台进行安装,缺省运行在独立的环境中,跟系统的控制台安装的程序不一样。

    然后,发送消息:

#!/usr/bin/python
# This shows a service of an MQTT subscriber.
# Copyright (c) 2010-2015, By openthings@163.com.

import sys
import datetime
import socket, sys
import paho.mqtt.publish as publish

def transmitMQTT(strMsg):
    #strMqttBroker = "localhost"
    strBroker = "112.124.67.178"
    strMqttChannel = "/inode/mychannel"
    print(strMsg)
    publish.single(strMqttChannel, strMsg, hostname = strMqttBroker)

if __name__ == '__main__':
    transmitMQTT("Hello,MQTT Proxy, I am client inside python.")
    print "Send msg ok."


创建一个MQTT服务器程序:

#!/usr/bin/python
# This shows a service of an MQTT subscriber.
# Copyright (c) 2010-2015, By openthings@163.com.

import sys
import datetime
import socket, sys

#======================================================        
#MQTT Initialize.--------------------------------------
try:
    import paho.mqtt.client as mqtt
except ImportError:
    print("MQTT client not find. Please install as follow:")
    print("git clone http://git.eclipse.org/gitroot/paho/org.eclipse.paho.mqtt.python.git")
    print("cd org.eclipse.paho.mqtt.python")
    print("sudo python setup.py install")

#======================================================
def on_connect(mqttc, obj, rc):
    print("OnConnetc, rc: "+str(rc))

def on_publish(mqttc, obj, mid):
    print("OnPublish, mid: "+str(mid))

def on_subscribe(mqttc, obj, mid, granted_qos):
    print("Subscribed: "+str(mid)+" "+str(granted_qos))

def on_log(mqttc, obj, level, string):
    print("Log:"+string)

def on_message(mqttc, obj, msg):
    curtime = datetime.datetime.now()
    strcurtime = curtime.strftime("%Y-%m-%d %H:%M:%S")
    print(strcurtime + ": " + msg.topic+" "+str(msg.qos)+" "+str(msg.payload))
    on_exec(str(msg.payload))

def on_exec(strcmd):
    print "Exec:",strcmd
    strExec = strcmd
    
#=====================================================
if __name__ == '__main__': 
    mqttc = mqtt.Client("mynodeserver")
    mqttc.on_message = on_message
    mqttc.on_connect = on_connect
    mqttc.on_publish = on_publish
    mqttc.on_subscribe = on_subscribe
    mqttc.on_log = on_log

    #strBroker = "localhost"
    strBroker = "112.124.67.178"

    mqttc.connect(strBroker, 1883, 60)
    mqttc.subscribe("/inode/mychannel", 0)
    mqttc.loop_forever()

感谢各位的阅读,以上就是“基于python怎么安装MQTT客户端”的内容了,经过本文的学习后,相信大家对基于python怎么安装MQTT客户端这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI