Usando o paho-mqtt para Python

Bom, você já deve entender de Python né? Senão, estude e volte aqui.

O lance aqui é simples com paho-mqtt, para ouvir um tópico, façamos o seguinte:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# Para instalar o paho-mqtt use o comando pip install paho-mqtt
import paho.mqtt.client as mqtt

# The callback for when the client receives a CONNACK response from the server.
def on_connect(client, userdata, flags, rc):

# O subscribe fica no on_connect pois, caso perca a conexão ele a renova
# Lembrando que quando usado o #, você está falando que tudo que chegar após a barra do topico, será recebido
client.subscribe("topico/#")

# Callback responável por receber uma mensagem publicada no tópico acima
def on_message(client, userdata, msg):
print(msg.topic+" - "+str(msg.payload))

client = mqtt.Client()
client.on_connect = on_connect
client.on_message = on_message

# Seta um usuário e senha para o Broker, se não tem, não use esta linha
client.username_pw_set("USUARIO", password="SENHA")

# Conecta no MQTT Broker, no meu caso, o Mosquitto
client.connect("IP_OU_URL_BROKER", PORTA, 60)

# Inicia o loop
client.loop_forever()

Para publicar, faça o seguinte

1
2
3
4
5
# Importa o publish do paho-mqtt
import paho.mqtt.publish as publish

# Publica
publish.single("topico/teste", "Oi, aqui é um teste", hostname="IP_OU_URL_BROKER")

Na publicação, você passa todos os parâmetros no publish, como QOS, porta, auth e etc. Tudo muito fácil né? Quer saber mais? Leia a documentação do paho-mqtt


Dicas por Gercil Junio - https://gercil.me

Proudly powered by Hexo and Theme by Hacker
© 2020 Faz-B Man