听闻乐联网支持了MQTT协议(http://www.lewei50.com/dev/doc/216或www.jianshu.com/p/8d6937cf46b6),做为乐联网粉丝,放出自己写的ESP8266使用乐联网Mqtt协议进行数据上传、设备控制的库,供有兴趣的人参考。
硬件使用乐鑫公司的ESP8266,固件使用nodemcu(需要有mqtt、cjson库支持)。
库文件放在
https://github.com/lewei50/lua/blob/master/lib/LeweiMqtt.lua
使用下面的测试代码进行测试即可。
wifi.setmode(wifi.STATION)
station_cfg={}
station_cfg.ssid="YOUR_WIFI_SSID"
station_cfg.pwd="YOUR_WIFI_PASSWORD"
wifi.sta.config(station_cfg)
wifi.sta.connect()
require("LeweiMqtt")
LeweiMqtt.init("USERKEY_ON_LEWEI","GATEWAY_ON_LEWEI")
function test(p1)
print("test function1!"..p1)
LeweiMqtt.sendSensorValue("t1",1)
end
function test2(p1)
LeweiMqtt.appendSensorValue("sensor2",0)
print("test function2!"..p1)
end
LeweiMqtt.addUserSwitch(test,"s",1)
LeweiMqtt.addUserSwitch(test2,"t",1)
wifi.eventmon.register(wifi.eventmon.STA_GOT_IP, function(T)
print("\n\tSTA - GOT IP".."\n\tStation IP: "..T.IP.."\n\tSubnet mask: "..
T.netmask.."\n\tGateway IP: "..T.gateway)
LeweiMqtt.connect()
end)
wifi.sta.eventMonStart()