MQTT lua例子

来源:互联网 发布:域名邮箱怎么设置 编辑:程序博客网 时间:2024/04/29 21:14
-- init mqtt client with keepalive timer 120sec
= 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


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

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

m:on("message", function(conn, topic, dataprint(topic .. ":" )  if data ~= nil then  print(dataend 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);


0 0
原创粉丝点击