您的位置:首页 > 编程语言 > Lua

MQTT lua例子

2015-09-02 15:53 525 查看
-- init mqtt client with keepalive timer 120sec
m = mqtt.Client("clientid", 120, "user", "password")

-- setup Last Will and Testament (optional)
-- Broker will publish a message with qos = 0, retain = 0, data = "offline" 
-- to topic "/lwt" if client don't send keepalive packet
m:lwt("/lwt", "offline", 0, 0)

m:on("connect", function(con) print ("connected") end)
m:on("offline", function(con) print ("offline") end)

-- on publish message receive event
m:on("message", function(conn, topic, data) 
  print(topic .. ":" ) 
  if data ~= nil then
    print(data)
  end
end)

-- for secure: m:connect("192.168.16.9", 1880, 1)
m:connect("192.168.16.9", 1883, 0, function(conn) print("connected") end)

-- subscribe topic with qos = 0
m:subscribe("/topic",0, function(conn) print("subscribe
success") end)

-- publish a message with data = hello, QoS = 0, retain = 0
m:publish("/topic","hello",0,0, function(conn) print("sent") end)

m:close();
-- you can call m:connect again

m = mqtt.Client("clientid", 120, "user", "password");

m:lwt("/lwt", "offline", 0, 0);

m:on("message", function(conn, topic, data) print(topic .. ":" )  if data ~= nil then  print(data) end end);

m:connect("192.168.16.9", 1883, 0, function(conn) print("connected") end);

m:connect("impkd.com", 1883, 0, function(conn) print("connected") end);

m:subscribe("/topic",0, function(conn) print("subscribe
success") end);

m:publish("/topic","hello",0,0, function(conn) print("sent") end);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: