How2MQTT

Raspberry PiのPythonからMQTTを使うメモ。 MQTTについては、以下を参照のこと。

PythonからMQTTする

MQTTを扱うライブラリはいくつかある様子。paho-mqttというライブラリがよく使われているようなので、これを使うことにした。 こちらを参考にした。

paho-mqttのインストール

インストールしたばかりのRaspberry Piにはpipがなかったのでインストール。

sudo apt install pip

paho-mqttをインストール

pip install paho-mqtt

サンプルプログラム

#!/usr/bin/python

from paho.mqtt import client as mqtt_client

address='localhost'
port=1883
debug_topic='light/debug'
sub_topic='light/setOn'
pub_topic='light/getOn'
client_id=f'python_856389663' #something random
#username=''
#passwor=''

def on_connect(client, userdata, flags, rc):
    if rc==0:
        print("Connection established.")
        client.publish(debug_topic,"Python client connected.")
    else:
        print("Failed to connect: %d\n",rc)

def on_message(client, userdata, msg):
    print(msg.payload.decode())


client=mqtt_client.Client(client_id)
#client.username_pw_set(username,password)
client.on_connect=on_connect
client.connect(address,port)
client.subscribe(sub_topic)
client.on_message=on_message

client.loop_forever()

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2022-09-18 (日) 17:37:14