FHEM Forum

FHEM - Hausautomations-Systeme => MQTT => Thema gestartet von: kaihs am 01 November 2021, 19:38:16

Titel: MQTT2_CLIENT und thingspeak.com: keine dauerhafte Verbindung
Beitrag von: kaihs am 01 November 2021, 19:38:16
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.


Titel: Antw:MQTT2_CLIENT und thingspeak.com: keine dauerhafte Verbindung
Beitrag von: rudolfkoenig am 01 November 2021, 20:39:46
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.
Titel: Antw:MQTT2_CLIENT und thingspeak.com: keine dauerhafte Verbindung
Beitrag von: kaihs am 06 November 2021, 20:57:52
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.