NEWS
Test Adapter jablotron v.0.1.x
-
Aktuelle Test Version 0.1.0 Veröffentlichungsdatum 10.12.2023 Github Link https://github.com/DEV2DEV-DE/ioBroker.jablotron Beschreibung
Der Adapter wendet sich an Besitzer einer Jablotron JA-100 Alarmanlage.
Er verbindet sich mit der Cloud des Herstellers um Statuswerte der Anlage abzufragen.
Dabei ist das zum jetzigen Zeitpunkt bitte wörtlich zu nehmen: Zunächst geht's hier nur ums Lesen - das Steuern kommt erst in einer der nächsten Versionen.Wer den Adapter testen möchte, sollte die Logstufe der Instanz bitte auf "debug" stellen, um möglichst viele Infos zu erhalten.
Getestet wurde bislang nur mit der JA-100. Wer eine andere Anlage des Herstellers besitzt und diese über die App "My Jablotron" steuern kann, darf aber gerne testen ob das auch mit dieser Anlage funktioniert.Was aktuell besonders interessiert
Über das API des Herstellers lassen sich nur relativ wenige Daten lesen. Interessant ist natürlich neben dem Status der Anlage (scharf/unscharf) auch der Zustand der Sensoren.
Laut aktuellem Kenntnisstand müssen diese aber als "programmable gates" in der Anlage konfiguriert sein. Uns (dem Requester und mir als Entwickler) wäre wichtig:-
Hat jemand seine Sensoren als "programmable gate" konfiguriert und in der App sichtbar?
Dann bitte mal den entsprechenden Teil aus dem Debug-Log an mich senden (am besten per Chat oder Discord) -
Wenn 1) zutrifft: Wer hat das so konfiguriert? Der Errichter? Oder selbst erledigt.
Wenn selbst, wäre interessant wie man das macht. -
Hat jemand Temperatursensoren von Jablotron im Einsatz?
Dann wäre der entsprechende Teil aus dem Debug-Log interessant, um die entsprechenden Objekte erzeugen zu können.
Und bevor die Frage kommt: Eine Anbindung direkt an die Zentrale über das lokale Netz ist vom Hersteller nicht vorgesehen. Das API dazu hält der Hersteller unter Verschluss.
Wichtig:
Fehler und Wünsche etc. nicht hier als Kommentar, sondern als Issue in GitHub
https://github.com/DEV2DEV-DE/ioBroker.jablotron/issuesVersion 0.0.5
Wichtiger Hinweis: Ab Version 0.0.5 hat sich die Speicherung des Kennworts in den Instanzeinstellungen geändert.
Wer die neue Version testen möchte und vorher bereits eine ältere installiert hatte, muss in den Instanzeinstellungen das Kennwort nochmals eingeben und speichern!Happy testing ...
-
-
Moin,
erst einmal einen großen Dank an dich das Du Dich der Sache angenommen hast !!!!!
Es funktioniert! So wie ich das gerade überflogen habe, werden die PG Ausgänge angezeigt. PG Ausgänge kann man etwas so sehen wie eine Variable, die man z.B. einem Melder zuweisen kann. -
@elektroman
Cool. Dann muss man "nur noch" mit seinem Errichter über den Preis verhandeln -
@codierknecht sagte in Test Adapter jablotron v.0.0.x:
Fehler und Wünsche etc. nicht hier als Kommentar, sondern als Issue in GitHub
Wünsche bzw. Vorschläge würde ich gerne unterbreiten, aber wie auf GitHub 🤭
Habe mich angemeldet gehe auf new issues und dann kommt „new Bug „
Einen Fehler will ich aber nicht beschreiben -
@elektroman
Wenn's kein Bug ist, kannst Du auch ohne Template loslegen
-
Zur Info:
Der Adapter wurde nun in das beta-repository aufgenommen. -
-
Kann mal jemand von den Testern nachsehen, ob im Debug-Log etwas in "thermoDevices" steht?
Könnt ihr dann anonymisiert hier posten (in Code-Tags</>) oder per Chat/Discord an mich.Danke!
-
Auf GitHub und NPM gibt's jetzt Version 0.1.0.
Die geht etwas lockerer mit gelegentlich auftretenden Timeouts beim Lesen der Daten vom Server um.
Außerdem lässt sich jetzt einstellen, welche Datensegmente vom Server gelesen werden sollen. -
was sollte da auf jeden Fall anonymisiert werden?
Das Log hab ich schon. -
@tritor sagte in Test Adapter jablotron v.0.1.x:
was sollte da auf jeden Fall anonymisiert werden?
Die ID's zu Deinen Elementen. Sieht z.B. bei den PG's so aus:
PG-1234567890
Ich weiß nicht, ob man damit Unfug anstellen könnte.
Sollte reichen, wenn da ein paar Ziffern ge-X't werden. -
hier das log:
jablotron.0 2023-12-16 17:43:37.897 debug thermoDevicesGet: {"data":{"service-states":{"last-event-time":"2023-12-16T17:19:01+0100","service-name":"XXXX"},"states":[]},"http-code":200} jablotron.0 2023-12-16 17:43:37.140 debug programmableGatesGet: {"data":{"service-states":{"last-event-time":"2023-12-16T17:19:01+0100","service-name":"XXXX"},"states":[{"cloud-component-id":"PG-XXXX","state":"OFF"}],"programmableGates":[{"cloud-component-id":"PG-XXXX","name":"Alarmausgang","can-control":true,"need-authorization":true}]},"http-code":200} jablotron.0 2023-12-16 17:43:36.386 debug sectionsGet: {"data":{"service-states":{"last-event-time":"2023-12-16T17:19:01+0100","service-name":"XXXX"},"states":[{"cloud-component-id":"SEC-XXXX","state":"DISARM"}],"sections":[{"cloud-component-id":"SEC-XXXX","name":"Sicherung","can-control":true,"need-authorization":true,"partial-arm-enabled":true}]},"http-code":200} jablotron.0 2023-12-16 17:43:35.713 debug serviceListGet: {"data":{"services":[{"service-id":XXXX,"cloud-entity-id":"SERVICE_JA100F:XXXX","name":"XXXX","service-type":"JA100F","icon":"JA100F","index":1000000,"level":"FULL","status":"ENABLED","visible":true,"message":"OK","event-last-time":"2023-11-29T15:10:32+0100","share-status":"OWNER","service-blocked":"NONE","extended-states":[{"type":"ARM","value":"0"},{"type":"DISARM","value":"1"}],"notifications":0}],"meta":{"checksum":"XXXX"}},"http-code":200} jablotron.0 2023-12-16 17:43:35.234 debug Fetch data from jablonet.net jablotron.0 2023-12-16 17:43:05.232 debug Setting up recurring refresh jablotron.0 2023-12-16 17:43:05.232 debug thermoDevicesGet: {"data":{"service-states":{"last-event-time":"2023-12-16T17:19:01+0100","service-name":"XXXX"},"states":[]},"http-code":200} jablotron.0 2023-12-16 17:43:03.877 debug programmableGatesGet: {"data":{"service-states":{"last-event-time":"2023-12-16T17:19:01+0100","service-name":"XXXX"},"states":[{"cloud-component-id":"PG-XXXX","state":"OFF"}],"programmableGates":[{"cloud-component-id":"PG-XXXX","name":"Alarmausgang","can-control":true,"need-authorization":true}]},"http-code":200} jablotron.0 2023-12-16 17:43:03.104 debug sectionsGet: {"data":{"service-states":{"last-event-time":"2023-12-16T17:19:01+0100","service-name":"XXXX"},"states":[{"cloud-component-id":"SEC-XXXX","state":"DISARM"}],"sections":[{"cloud-component-id":"SEC-XXXX","name":"Sicherung","can-control":true,"need-authorization":true,"partial-arm-enabled":true}]},"http-code":200} jablotron.0 2023-12-16 17:43:01.824 debug serviceListGet: {"data":{"services":[{"service-id":XXXX,"cloud-entity-id":"SERVICE_JA100F:XXXX","name":"XXXX","service-type":"JA100F","icon":"JA100F","index":1000000,"level":"FULL","status":"ENABLED","visible":true,"message":"OK","event-last-time":"2023-11-29T15:10:32+0100","share-status":"OWNER","service-blocked":"NONE","extended-states":[{"type":"ARM","value":"0"},{"type":"DISARM","value":"1"}],"notifications":0}],"meta":{"checksum":"XXXX"}},"http-code":200} jablotron.0 2023-12-16 17:43:01.294 debug Fetching initial data from jablonet.net jablotron.0 2023-12-16 17:43:01.294 debug Session-ID: PHPSESSID=XXXX jablotron.0 2023-12-16 17:43:01.294 info Logged in to jablonet api jablotron.0 2023-12-16 17:43:00.336 debug Fetching new session id jablotron.0 2023-12-16 17:43:00.330 info starting. Version 0.1.1 in /opt/iobroker/node_modules/iobroker.jablotron, node: v18.19.0, js-controller: 5.0.17 jablotron.0 2023-12-16 17:42:57.204 info terminating jablotron.0 2023-12-16 17:42:56.705 info Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason jablotron.0 2023-12-16 17:42:56.705 info terminating jablotron.0 2023-12-16 17:42:56.702 info Got terminate signal TERMINATE_YOURSELF
btw: das update Intervall von 10 sec. ist das nicht zu klein, was wäre einzuwenden dies auf 60s zu erhöhen?
-
@tritor sagte in Test Adapter jablotron v.0.1.x:
btw: das update Intervall von 10 sec. ist das nicht zu klein, was wäre einzuwenden dies auf 60s zu erhöhen?
Das kann jeder nach Belieben auch gerne höher setzen.
Je höher das ist, desto weniger läuft man Gefahr dass der Hersteller aufmerksam wird und möglicherweise neue Hindernisse einbautDanke für's Log.
-
@tritor sagte in Test Adapter jablotron v.0.1.x:
btw: das update Intervall von 10 sec. ist das nicht zu klein, was wäre einzuwenden dies auf 60s zu erhöhen?
Ist die Frage was machen machen möchte.
Um z. B. auf ein geöffnetes Fenster/Tür zu reagieren, um die Rolladen hoch zu fahren, wären 10 Sekunden schon sehr lang.
Um Alarm zu schalten, wenn sich ein Feuermelder meldet, auch -
@hant0r
Sollte auch keinesfalls eine Art Vorwurf sein.
Intervall so klein wie nötig, so groß wie möglich. Jeder so wie er/sie es gerade braucht. -
@codierknecht
Hatte ich auch nicht so verstanden -
Wäre schön, wenn die Tester hier nochmal ihr Fazit posten könnten.
Dann könnte der Adapter ins Stable-Repo wandern. -
bei mir steht der Adpater fast täglich, brauch dann manuellen Restart.
hier das log bevor der Adapter sich verabschiedet hat:
2024-01-15 05:57:32.713 - debug: jablotron.0 (1764400) thermoDevicesGet: {"data":{"service-states":{"last-event-time":"2024-01-15T04:41:42+0100","service-name":"xxxxxxx"},"states":[]},"http-code":200} 2024-01-15 05:58:14.580 - debug: jablotron.0 (1764400) Fetch data from jablonet.net 2024-01-15 05:58:14.586 - error: jablotron.0 (1764400) getServices: Error: getaddrinfo EAI_AGAIN api.jablonet.net 2024-01-15 05:58:14.586 - error: jablotron.0 (1764400) getExtendedData: Error: getaddrinfo EAI_AGAIN api.jablonet.net 2024-01-15 05:58:14.587 - error: jablotron.0 (1764400) Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). 2024-01-15 05:58:14.587 - error: jablotron.0 (1764400) unhandled promise rejection: getaddrinfo EAI_AGAIN api.jablonet.net 2024-01-15 05:58:14.587 - error: jablotron.0 (1764400) Error: getaddrinfo EAI_AGAIN api.jablonet.net at AxiosError.from (/opt/iobroker/node_modules/iobroker.jablotron/node_modules/axios/dist/node/axios.cjs:837:14) at RedirectableRequest.handleRequestError (/opt/iobroker/node_modules/iobroker.jablotron/node_modules/axios/dist/node/axios.cjs:3083:25) 2024-01-15 05:58:14.587 - error: jablotron.0 (1764400) Exception-Code: EAI_AGAIN: getaddrinfo EAI_AGAIN api.jablonet.net 2024-01-15 05:58:14.591 - info: jablotron.0 (1764400) terminating 2024-01-15 05:58:14.591 - warn: jablotron.0 (1764400) Terminated (UNCAUGHT_EXCEPTION): Without reason 2024-01-15 05:58:15.090 - info: jablotron.0 (1764400) terminating 2024-01-15 05:58:15.144 - error: host.ioBroker-prox instance system.adapter.jablotron.0 terminated with code 6 (UNCAUGHT_EXCEPTION) 2024-01-15 05:58:15.145 - info: host.ioBroker-prox Restart adapter system.adapter.jablotron.0 because enabled 2024-01-15 05:58:45.202 - info: host.ioBroker-prox instance system.adapter.jablotron.0 started with pid 1813150 2024-01-15 05:58:45.561 - info: jablotron.0 (1813150) setState not processed because States database not connected 2024-01-15 05:58:45.646 - debug: jablotron.0 (1813150) Redis Objects: Use Redis connection: 127.0.0.1:9001 2024-01-15 05:58:45.659 - debug: jablotron.0 (1813150) Objects client ready ... initialize now 2024-01-15 05:58:45.661 - debug: jablotron.0 (1813150) Objects create System PubSub Client 2024-01-15 05:58:45.661 - debug: jablotron.0 (1813150) Objects create User PubSub Client 2024-01-15 05:58:45.679 - debug: jablotron.0 (1813150) Objects client initialize lua scripts 2024-01-15 05:58:45.682 - debug: jablotron.0 (1813150) Objects connected to redis: 127.0.0.1:9001 2024-01-15 05:58:45.704 - debug: jablotron.0 (1813150) Redis States: Use Redis connection: 127.0.0.1:6379 2024-01-15 05:58:45.706 - debug: jablotron.0 (1813150) States create System PubSub Client 2024-01-15 05:58:45.707 - debug: jablotron.0 (1813150) States create User PubSub Client 2024-01-15 05:58:45.714 - debug: jablotron.0 (1813150) States connected to redis: 127.0.0.1:6379 2024-01-15 05:58:45.764 - info: jablotron.0 (1813150) starting. Version 0.1.1 in /opt/iobroker/node_modules/iobroker.jablotron, node: v18.19.0, js-controller: 5.0.17 2024-01-15 05:58:45.772 - debug: jablotron.0 (1813150) Fetching new session id 2024-01-15 05:58:45.833 - error: jablotron.0 (1813150) Error: getaddrinfo EAI_AGAIN api.jablonet.net 2024-01-15 05:58:45.834 - error: jablotron.0 (1813150) Error in onReady: Error: Not connect to jablonet.net
-
@codierknecht
Sorry, bei mir ist es so, dass der Adapter irgendwann auf gelb steht und nicht mehr funktioniert.
Schätzungsweise einmal pro Tag. Habe ihn aber als "Info" laufen und im Log steht nichts.Wenn es hilft, lasse ich ihn mal die ganze Zeit mit "debug" laufen, spammt dann nur sehr das Log zu.
-
@tritor sagte in Test Adapter jablotron v.0.1.x:
EAI_AGAIN
Das sieht nach einem DNS-Problem aus.
Da muss ich mal die Kollegen fragen, wie man sowas am besten umgeht.
Es wird dann vermutlich in Kürze eine neue Version geben.