NEWS
SOLVED MQTT-Adapter Problem
-
naja, obs ein richtiger Fehler ist, weiss ich nicht. Nach einer Neu-Installation von iobroker kann ich in der Adapter-Konfiguration die Verbindung zum Server nicht mehr testen. Beim Drücken auf den Button passiert gar nichts. Im Log steht dann:
! ReferenceError: 2015-05-16 15:28:35 error at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:134:20)
! ReferenceError: 2015-05-16 15:28:35 error at Manager. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
! ReferenceError: 2015-05-16 15:28:35 error at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:212:12)
! ReferenceError: 2015-05-16 15:28:35 error at Socket.onevent (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:254:10)
! ReferenceError: 2015-05-16 15:28:35 error at Socket.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:134:20)
! ReferenceError: 2015-05-16 15:28:35 error at Socket.StatesInMemClient.client.on.connectionTimeout (/opt/iobroker/node_modules/iobroker.js-controller/lib/statesInMemClient.js:45:30)
! ReferenceError: 2015-05-16 15:28:35 error at Object.that.states.States.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:1406:34)
! ReferenceError: 2015-05-16 15:28:35 error at Adapter.EventEmitter.emit (events.js:95:17)
! ReferenceError: 2015-05-16 15:28:35 error at Adapter. (/opt/iobroker/node_modules/iobroker.mqtt/main.js:31:14)
! ReferenceError: 2015-05-16 15:28:35 error at processMessage (/opt/iobroker/node_modules/iobroker.mqtt/main.js:262:31)
! ReferenceError: 2015-05-16 15:28:35 error mqtt is not defined
! message 2015-05-16 15:28:35 error messagebox.system.adapter.mqtt.0 [object Object] mqtt is not defined
! admin-0 2015-05-16 15:28:35 info sendTo "test" to system.adapter.mqtt.0 from system.adapter.admin.0: {"type":"client","webSocket":false,"url":"192.168.0.170","port":"1883","ssl":false,"certPublic":"","certPrivate":"","user":"","pass
und tatsächlich, bei den Objekten fehlt mqtt.0die Verbindung zum Server klappt aber,
! …....
! /hm/hm-rpc/0/IEQ0020678/1/TEMPERATURE 20.8
! /hm/hm-rpc/0/IEQ0020678/1/TEMPERATURE 20.7
! /hm/hm-rpc/0/IEQ0020678/1/TEMPERATURE 20.5
! .......
wie kann ich den Adapter überreden, den Eintrag vorzunehmen?Gruss, starfish
-
Danke Bluefox,
mir ist noch was anderes aufgefallen, ich meine das ging früher, aber ich kann mich auch irren -
die Übertragung von Taster- aktivitäten geht nicht mehr (dafür ist doch der Haken: Sende auch Zustände (ack=true): ?)
von diesen Aktivitäten:
inMem 2015-05-17 06:31:05 debug message hm-rpc.0.* hm-rpc.0.IEQ0020678.1.TEMPERATURE val=19.4, ack=true, ts=1431837065, from=system.adapter.hm-rpc.0, lc=1431834944
inMem 2015-05-17 06:29:41 debug message hm-rpc.0.* hm-rpc.0.IEQ0451638.1.INSTALL_TEST val=true, ack=true, ts=1431836982, from=system.adapter.hm-rpc.0, lc=1431750611
inMem 2015-05-17 06:29:50 debug message hm-rpc.0.* hm-rpc.0.IEQ0451638.1.PRESS_SHORT val=true, ack=true, ts=1431836991, from=system.adapter.hm-rpc.0, lc=1431750611
kommt auf Mosquitto Server nur:
/hm/hm-rpc/0/IEQ0020678/1/TEMPERATURE 19.4
die Konfiguration bei mqtt:
Subscribe patterns: /test/# subscribe-filter, z.B 'mqtt/0/#,javascript/#'
Maske für Bekanntgeben eigene States: hm-rpc.0.* publish-filter, z.B 'mqtt.0.,javascript.'
Publish nur bei Änderung: ja
Bekanntgeben eigene States beim Verbinden: ja
Prefix für alle Topics: /hm/
Trace output for every message: ja
Sende auch Zustände (ack=true): ja
gruss, Starfish
-
Kannst du "Publish nur bei Änderung: nein" Testen?
-
Kannst du "Publish nur bei Änderung: nein" Testen? `
hast recht, jetzt kommt die Tastermeldung auch - also geht nicht beides gleichzeitig? -
-
ja, mit publish nur bei "nein" funktioniert die Übertragung von Tasterbetätigungen. mit "beides" meine ich Übertragung von Tasterbetätigung UND Publish nur bei Änderungen - oder schliesst sich das gegenseitig aus?
-
mqtt kennt kein "Tasterbetätigung". Für den ist das nur ein Zustand, der sich nicht ändert.
Die Tasterbetätigung ist blöd aufgebaut, so dass es nie auf "false" geht. Man konnte das natürlich im Adapter fixen…
-
Verstehe, hängt wohl damit zusammen, dass die Taster Betätigungs-Impulse senden, aber keine Schalterlage (ein oder aus)? Egal, so wie´s jetzt läuft ist für mich OK. Danke für die Hilfe.