MQTT support

Ich habe heute auf Version 0.6.0-103 umgestellt. Leider bekomme ich den MQTT Client nicht zum laufen. Als Broker ist mosquitto 1.4 installiert, andere Clients laufen problemlos, sowohl von localhost als auch von anderen Geräten im Netzwerk.
Im Homegear Logfile finden sich folgende EInträge:

04/05/15 16:49:09.312 Start listening for packets...
04/05/15 16:49:09.723 Initializing RPC client...
04/05/15 16:49:09.724 Starting MQTT client...
04/05/15 16:49:09.724 Starting XML RPC server RPCServer1 listening on 0.0.0.0:2001...
04/05/15 16:49:09.733 RPC Server (Port 2001): Info: RPC Server started listening on address 0.0.0.0 and port 2001
...
04/05/15 16:49:11.573 Could not publish message, because we are not connected to a message broker. Topic: homegear/1234-5678-9abc/event/0/-1/HUMIDITY_BAD_OLD Data: [34.000000000000000]

Der Client wird also gestartet, jedoch kann ich bei mosquitto keinen Verbindungsversuch feststellen.

Meine mttq.conf sieht wie folgt aus (für den brokerHostname habe ich ebenfalls localhost und die LAN-IP ausprobiert):

[code]

mqtt.conf

MQTT settings.

Set this to “true” to enable MQTT.

Default: false

enabled = true

Hostname or IP address of your MQTT message broker.

brokerHostname = 127.0.0.1

Port of your MQTT message broker.

brokerPort = 1883

Name of this client.

clientName = Homegear

Unique ID of this Homegear instance. Change this, have you have multiple

Homegear installations.

homegearId = 1234-5678-9abc

When authentication by username and password is enabled, uncomment the

following two lines.

#userName = myUser
#password = myPassword

TLS options

Set to “true” to enable SSL encryption for MQTT.

enableSSL = false

The path to the certificate authority’s certificate

#caFile = /path/to/ca-certficate

verifyCertificate checks if the server certificate received by the

MQTT broker is signed by one of the root CAs in /etc/ssl/certs. If you use

a self signed certificate, please put your root certificate in that

directory. Only disable the verification for testing purposes. Without

verification any attacker can pose as your MQTT broker.

Default: verifyCertificate = true

#verifyCertificate = true

The path to the PEM encoded client certificate.

#certPath = /etc/homegear/mqtt.crt

The path to the PEM encoded client keyfile.

#keyPath = /etc/homegear/mqtt.key[/code]

Hat jemand einen Tipp für mich, wo es klemmt?

Hey,

an MQTT habe ich gerade die letzten Tage rumgespielt. Vor ein paar Tagen kam SSL-Unterstützung und Authentifizierung hinzu. Die Tests damit waren zwar eigentlich erfolgreich, ich will aber nicht ausschließen, dass ich nicht doch einen doofen Fehler eingebaut habe. Leider habe ich gerade mein Testsystem nicht zur Hand. Ich melde mich am Dienstag noch einmal, wenn ich sichergestellt habe, dass es funktioniert. Da die Konfiguration ziemlich simpel ist und ich bei dir auch keinen Fehler entdecke, gehe ich von einem kleinen Fehler in Homegear aus.

Liebe Grüße

Sathya

Hi Sathya,

Danke für die schnelle Reaktion. Keine Eile, ich freue mich, wenn es irgendwann funktioniert.

Viele Grüße,
Frank

Hallo Frank,

das ging tatsächlich nicht aufgrund eines doofen Fehlers. Allerdings ist mir gerade noch ein anderes Problem aufgefallen (die Bibliothek deadlocked recht häufig, wenn der Broker nicht erreichbar ist und manchmal tritt auch ein Signal 6 auf [das hat leider nichts mit deinem Signal 6 zu tun])… Das schaue ich mir gerade an und pushe dann den Gesamtfix. In Version 0.6.0-105 ist er dann drin.

Liebe Grüße

Sathya