最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

云服務(wù)器搭建MQTT服務(wù)器的方法步驟

 更新時(shí)間:2023年08月18日 11:33:03   作者:粒子白  
既然有了云服務(wù)器,可以搭建一個(gè)MQTT服務(wù)器,本文主要介紹了云服務(wù)器搭建MQTT服務(wù)器的方法步驟,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

前言

既然有了云服務(wù)器,可以搭建一個(gè)MQTT服務(wù)器,這樣可以使用ESP32的micropython編程,實(shí)現(xiàn)物聯(lián)網(wǎng)平臺(tái)的構(gòu)建。

一、通過寶塔面板登錄服務(wù)器,拉取emqx/emqx鏡像

二、使用寶塔遠(yuǎn)程工具后臺(tái)運(yùn)行鏡像

docker run -dit --name emqx -p 18083:18083 -p 1883:1883 -p 8083:8083 -p 8084:8084 emqx/emqx:latest
docker exec -it  emqx /bin/sh

三、訪問emqt的web管理頁(yè)面

可以把語(yǔ)音換成中文的。

http://你的云服務(wù)器公網(wǎng)IP:18083
賬號(hào): admin
密碼: public

其他端口如下:如果發(fā)現(xiàn)某個(gè)端口訪問不了,可以嘗試去寶塔面板的安全位置去放行一下。

1883:MQTT 協(xié)議端口
8883:MQTT/SSL 端口
8083:MQTT/WebSocket 端口
8080:HTTP API 端口
18083:Dashboard 管理控制臺(tái)端口

四、編寫消息發(fā)布端和訂閱端,python實(shí)現(xiàn)

我是用pycharm編寫代碼,編寫之前,安裝一下paho-mqtt這個(gè)包。也可以用 pip3 install paho-mqtt 安裝。

1.發(fā)布端publish

代碼如下(示例):

from paho.mqtt import client as mqtt_client
import random
import time
broker = '0.0.0.0'  #你的云服務(wù)器公網(wǎng)IP
port = 1883  #MQTT 協(xié)議端口
topic = "lmq"
#調(diào)用 Python random.randint 函數(shù)隨機(jī)生成 MQTT 客戶端 id
client_id = f'python-mqtt-{random.randint(0, 1000)}'
def connect_mqtt():
    def on_connect(client, userdata, flags, rc):
        if rc == 0:
            print("Connected to MQTT Broker!")
        else:
            print("Failed to connect, return code %d\n", rc)
    client = mqtt_client.Client(client_id)
    client.on_connect = on_connect
    client.connect(broker, port)
    return client
def publish(client):
    msg_count = 0
    while True:
        time.sleep(1)
        msg = f"messages: {msg_count}"
        result = client.publish(topic, msg)
        # result: [0, 1]
        status = result[0]
        if status == 0:
            print(f"Send `{msg}` to topic `{topic}`")
        else:
            print(f"Failed to send message to topic {topic}")
        msg_count += 1
def run():
    client = connect_mqtt()
    client.loop_start()
    publish(client)
if __name__ == '__main__':
    run()

2.訂閱端subscribe

代碼如下(示例):

from paho.mqtt import client as mqtt_client
import random
broker = '0.0.0.0' #你的云服務(wù)器公網(wǎng)IP
port = 1883   #MQTT 協(xié)議端口
topic = "lmq"
# 調(diào)用 Python random.randint 函數(shù)隨機(jī)生成 MQTT 客戶端 id
client_id = f'python-mqtt-{random.randint(0, 1000)}'
def connect_mqtt() -> mqtt_client:
    def on_connect(client, userdata, flags, rc):
        if rc == 0:
            print("Connected to MQTT Broker!")
        else:
            print("Failed to connect, return code %d\n", rc)
    client = mqtt_client.Client(client_id)
    client.on_connect = on_connect
    client.connect(broker, port)
    return client
def subscribe(client: mqtt_client):
    def on_message(client, userdata, msg):
        print(f"Received `{msg.payload.decode()}` from `{msg.topic}` topic")
    client.subscribe(topic)
    client.on_message = on_message
def run():
    client = connect_mqtt()
    subscribe(client)
    client.loop_forever()
if __name__ == '__main__':
    run()

如果沒錯(cuò)誤,應(yīng)該就是下圖這樣子。

總結(jié)

用最快的方法實(shí)現(xiàn)就好。后續(xù)可以用qt做一個(gè)軟件界面,即可控制ESP32等能接入網(wǎng)絡(luò)的硬件設(shè)備。

到此這篇關(guān)于云服務(wù)器搭建MQTT服務(wù)器的方法步驟的文章就介紹到這了,更多相關(guān)云服務(wù)器搭建MQTT服務(wù)器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

惠水县| 准格尔旗| 新野县| 宣汉县| 胶州市| 大同市| 吴忠市| 莱阳市| 古蔺县| 民乐县| 福海县| 柳州市| 牙克石市| 广河县| 海门市| 秦安县| 聂拉木县| 临沧市| 巨野县| 腾冲县| 庆城县| 平潭县| 阆中市| 临泉县| 马龙县| 来安县| 措勤县| 东兰县| 台南县| 尚志市| 静海县| 万载县| 苍梧县| 潼南县| 额济纳旗| 郎溪县| 长沙县| 东莞市| 榆中县| 陵水| 饶平县|