搬好subscriber.py之后就出现问题:
原来是没对齐,okok,你厉害。
from umqtt import MQTTClient
import time
import led
SERVER = '183.53.18.170'
CLIENT_ID = 'ZIMO'
TOPIC = b'mrjiale'
def serve_start():
led2_on()
def serve_stop():
led2_off()
def mqtt_callback(topic, msg):
global TOPIC
print('topic: {}'.format(topic))
print('msg: {}'.format(msg))
if msg == b"start":
serve_start()
if msg == b"stop":
serve_stop()
def mqtt_connect():
client = MQTTClient(CLIENT_ID, SERVER)
client.set_callback(mqtt_callback)
client.connect()
client.subscribe(TOPIC)
while True:
client.check_msg()
time.sleep(1)
然而,运行之后报出一个EHOSTUNREACH的问题:
然后我改了下server的地址
虽然EHOSTUNREACH不报了,然而,接着又出现了另一个问题,index out of range直接数组越界!what?
所以这个sock应该是啥?为啥打印出来会为空的呢?
总之成功了。。。-_-|||
把端口8000改成了1883
看看这个帖子,挺详细的,但是需要翻一下:
https://forum.pycom.io/topic/211/simple-mqtt-tutorial/34?lang=zh-CN&page=1
这是本地服务器mosquitto:https://pallavichaurasia94.wordpress.com/2014/10/14/mosquitto-in-debian/
明天再试试看吧~