Класси c - стандартный код работает отлично:
import paho.mqtt.client as mqtt
def on_connect(client, userdata, flags, rc):
print("Connected with result code "+str(rc))
client.subscribe("$SYS/#")
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
client.connect("mqtt.eclipse.org", 1883, 60)
client.loop_forever()
Теперь я хочу переместить функцию обратного вызова on_message в новый файл, но это не работает? Не работает значит, MQTT сообщения не распознаются? Функция "on_message" не исключена. Есть идеи почему?
import paho.mqtt.client as mqtt
from new_file import on_message
def on_connect(client, userdata, flags, rc):
print("Connected with result code "+str(rc))
client.subscribe("$SYS/#")
client = mqtt.Client()
client.on_connect = on_connect
client.on_message = on_message
client.connect("mqtt.eclipse.org", 1883, 60)
client.loop_forever()
new_file:
def on_message(client, userdata, msg):
print(msg.topic+" "+str(msg.payload))