You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

34 lines
1.0 KiB
Python

import paho.mqtt.client as mqtt
import os
HOST = os.environ.get('MQTT_HOST', 'localhost')
print('Connecting to %s' %HOST)
# The callback for when the client receives a CONNACK response from the server.
def on_connect(client, userdata, flags, rc):
print("Connected with result code "+str(rc))
# Subscribing in on_connect() means that if we lose the connection and
# reconnect then subscriptions will be renewed.
#
# QOS: 0) no confirmation; 1) at least once; 2) at most once
client.subscribe("/gsi/#", qos=2)
# The callback for when a PUBLISH message is received from the server.
def on_message(client, userdata, msg):
print(msg.topic+" "+str(msg.payload))
client = mqtt.Client(client_id='mqtt-server', clean_session=False)
client.on_connect = on_connect
client.on_message = on_message
client.connect(HOST, 1883, 60)
# Blocking call that processes network traffic, dispatches callbacks and
# handles reconnecting.
# Other loop*() functions are available that give a threaded interface and a
# manual interface.
client.loop_forever()