Flexy 205, firmware 14.6s0
Will topic is not working, although connection and publish is working. Am I doing something wrong, or should I get a different device from a different company?
Onwan '@WANAction(GETSYS PRG, "EVTINFO")'
Function WANAction($WANStatus%)
IF $WANStatus% = 1 Then
PRINT "WAN up"
@Start()
ENDIF
ENDFN
Function Start()
PRINT "starting MQTT"
@MosquittoInit()
PRINT "Initialized."
ONMQTTStatus "@MosquittoMQTTStatusChange(mqtt('status'))"
ENDFN
Function MosquittoInit()
MQTT "open", mqtt_client$, mqtt_host$
MQTT "setparam", "CAFile", "/usr/certs/cert.crt"
MQTT "setparam", "ProtocolVersion", "3.1.1"
MQTT "setparam", "port", mqtt_port$
MQTT "setparam", "username", username$
MQTT "setparam", "password", password$
MQTT "setparam", "WillPayLoad", "OFFLINE"
MQTT "setparam", "WillTopic", mqtt_base_topic$ + "STATE"
MQTT "setparam", "WillQoS", "1"
MQTT "setparam", "WillRetain", "1"
MQTT "connect"
//MQTT "subscribe", mqtt_base_topic$ + "DCMD", 0
ENDFN
Function readMsg($msgID%)
IF $msgID% > 0 Then
msgTopic$ = MQTT "msgtopic"
msgData$ = MQTT "msgdata"
PRINT "received: "; msgTopic$; " -> "; msgData$
@readMsg(Mqtt("read"))
ENDIF
ENDFN
Function MosquittoMQTTStatusChange($status%)
IF $status% = 5 Then
PRINT "MQTT connected"
//MQTT "setparam", "WillPayLoad", "OFFLINE"
//MQTT "setparam", "WillTopic", mqtt_base_topic$ + "STATE"
//MQTT "setparam", "WillRetain", "1"
TSET 1, 5
ONTIMER 1, "@MosquittoMQTTPublish()"
ELSE
PRINT "MQTT disconnected"
ENDIF
ENDFN
Function MosquittoMQTTPublish()
msg$ = "test(" + STR$(n%) + ")"
PRINT "publishing!!!!!!!!!"
MQTT "publish", mqtt_base_topic$ + "DATA", msg$, 0, 0
n% = n% + 1
ENDFN