Ich versuche vergeblich mit einem MQTT2_CLIENT ein publish auf ein MQTT-Device bei thingspeak.com (http://thingspeak.com) zu machen.
Mit MQTT.fx funktioniert es, beim MQTT2-Client wird immer wieder die Verbindung auf-/abgebaut.
Sieht im Log so aus:
2021.11.01 19:11:50.499 5: HttpUtils url=https://mqtt3.thingspeak.com:8883/ NonBlocking via https
2021.11.01 19:11:50.504 4: IP: mqtt3.thingspeak.com -> 54.198.221.201
2021.11.01 19:11:50.948 5: mqtt2_thingspeak: sending CONNECT (16)V(0)(4)MQTT(4)(194)(0)(30)(0)(23)IzcJKzgeDB85MTwRNDoeKCY(0)(23)IzcJKzgeDB85MTwRNDoeKCY(0)(24)PPiG/vfTI2P/QAKFc5Rs2FI7
2021.11.01 19:11:50.949 5: DevIo_SimpleWrite mqtt2_thingspeak: 105600044d51545404c2001e0017497a634a4b7a6765444238354d5477524e446f654b43590017497a634a4b7a6765444238354d5477524e446f654b43590018505069472f7666544932502f51414b466335527332464937
2021.11.01 19:11:50.954 1: mqtt3.thingspeak.com:8883 reappeared (mqtt2_thingspeak)
2021.11.01 19:11:53.860 5: mqtt2_thingspeak: received CONNACK (0)(0)
2021.11.01 19:11:53.861 5: mqtt2_thingspeak: sending SUBSCRIBE (130)(6)(0)G(0)(1)#(0)
2021.11.01 19:11:54.023 1: mqtt3.thingspeak.com:8883 disconnected, waiting to reappear (mqtt2_thingspeak)
2021.11.01 19:11:54.099 5: HttpUtils url=https://mqtt3.thingspeak.com:8883/ NonBlocking via https
2021.11.01 19:11:54.103 4: IP: mqtt3.thingspeak.com -> 35.170.27.5
2021.11.01 19:11:54.492 5: mqtt2_thingspeak: sending CONNECT (16)V(0)(4)MQTT(4)(194)(0)(30)(0)(23)IzcJKzgeDB85MTwRNDoeKCY(0)(23)IzcJKzgeDB85MTwRNDoeKCY(0)(24)PPiG/vfTI2P/QAKFc5Rs2FI7
2021.11.01 19:11:54.493 5: DevIo_SimpleWrite mqtt2_thingspeak: 105600044d51545404c2001e0017497a634a4b7a6765444238354d5477524e446f654b43590017497a634a4b7a6765444238354d5477524e446f654b43590018505069472f7666544932502f51414b466335527332464937
2021.11.01 19:11:54.497 1: mqtt3.thingspeak.com:8883 reappeared (mqtt2_thingspeak)
2021.11.01 19:11:57.338 5: mqtt2_thingspeak: received CONNACK (0)(0)
2021.11.01 19:11:57.345 5: mqtt2_thingspeak: sending SUBSCRIBE (130)(6)(0)G(0)(1)#(0)
2021.11.01 19:11:57.479 1: mqtt3.thingspeak.com:8883 disconnected, waiting to reappear (mqtt2_thingspeak)
2021.11.01 19:11:57.646 5: HttpUtils url=https://mqtt3.thingspeak.com:8883/ NonBlocking via https
2021.11.01 19:11:57.651 4: IP: mqtt3.thingspeak.com -> 35.170.27.5
2021.11.01 19:11:58.043 5: mqtt2_thingspeak: sending CONNECT (16)V(0)(4)MQTT(4)(194)(0)(30)(0)(23)IzcJKzgeDB85MTwRNDoeKCY(0)(23)IzcJKzgeDB85MTwRNDoeKCY(0)(24)PPiG/vfTI2P/QAKFc5Rs2FI7
2021.11.01 19:11:58.044 5: DevIo_SimpleWrite mqtt2_thingspeak: 105600044d51545404c2001e0017497a634a4b7a6765444238354d5477524e446f654b43590017497a634a4b7a6765444238354d5477524e446f654b43590018505069472f7666544932502f51414b466335527332464937
2021.11.01 19:11:58.049 1: mqtt3.thingspeak.com:8883 reappeared (mqtt2_thingspeak)
2021.11.01 19:11:58.165 5: mqtt2_thingspeak: received CONNACK (0)(0)
2021.11.01 19:11:58.166 5: mqtt2_thingspeak: sending SUBSCRIBE (130)(6)(0)G(0)(1)#(0)
2021.11.01 19:11:58.298 1: mqtt3.thingspeak.com:8883 disconnected, waiting to reappear (mqtt2_thingspeak)
2021.11.01 19:11:58.424 5: HttpUtils url=https://mqtt3.thingspeak.com:8883/ NonBlocking via https
2021.11.01 19:11:58.431 4: IP: mqtt3.thingspeak.com -> 54.198.221.201
List vom Device:
Internals:
CFGFN
Clients :MQTT2_DEVICE:MQTT_GENERIC_BRIDGE:
ClientsKeepOrder 1
DEF mqtt3.thingspeak.com:8883
DeviceName mqtt3.thingspeak.com:8883
FUUID 617fd9d9-f33f-a4cf-32a3-454fe47caabdd49d
NAME mqtt2_thingspeak
NR 2637
SSL 1
STATE disconnected
TIMEOUT 20
TYPE MQTT2_CLIENT
WBCallback
clientId IzcJKzgeDB85MTwRNDoeKCY
connecting 2
lastMsgTime 1635790962.67443
nextOpenDelay 5
MatchList:
1:MQTT2_DEVICE ^.
2:MQTT_GENERIC_BRIDGE ^.
READINGS:
2021-11-01 18:13:12 lastPublish channels/433592/publish/fields/field1:23
2021-11-01 19:22:44 state disconnected
Attributes:
SSL 1
clientId XXX
mqttVersion 3.1.1
room System->MQTT
username XXX
verbose 5
Thingspeak hat auf einen neuen Server umgestellt (mqtt3.thingspeak.com). Früher mit dem alten (mqtt.thingspeak.com) hat es mal funktioniert.
- Klappt aktuell bei jemandem das Publishen bei thingspeak? Wenn ja mit welchen Einstellungen?
- Wofür ist dieses Subscribe "2021.11.01 19:11:53.861 5: mqtt2_thingspeak: sending SUBSCRIBE (130)(6)(0)G(0)(1)#(0)"? Ich habe explizit ja noch gar kein Subscribe durchgeführt.
ZitatIch habe explizit ja noch gar kein Subscribe durchgeführt.
Deswegen wird # (alles) subscribed. Womoeglich hat der neue Server was dagegen.
Man kann die initiale Subscription fuer MQTT2_CLIENT per Attribut aendern.
Zitat von: rudolfkoenig am 01 November 2021, 20:39:46
Deswegen wird # (alles) subscribed. Womoeglich hat der neue Server was dagegen.
Man kann die initiale Subscription fuer MQTT2_CLIENT per Attribut aendern.
Danke für die Info, der Disconnect liegt wohl wirklich an einem Subscribe der dem Server nicht recht ist.
Gar kein Subscribe ist mit MQTT2_DEVICE nicht möglich, oder?
Zumindest kann man das Attribut nicht mit leerem Argument verwenden.
Falls es für jemand relevant ist: Thinkspeak kennt öffentliche und private Channels.
Mit einem öffentlichen funktioniert es. Bei einem privaten soll man laut der Doku (https://de.mathworks.com/help/thingspeak/use-desktop-mqtt-client-to-subscribe-to-channel-updates.html?searchHighlight=read%20api%20key%20mqtt&s_tid=srchtitle_read%20api%20key%20mqtt_2) einen read api key angeben.
Aber selbst wenn ich das mache, gelingt der Zugriff nicht.