deconz offline bei save

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

oh73
Beiträge: 302
Registriert: 7. Mär 2021 14:49
Answers: 1

Re: deconz offline bei save

Beitrag von oh73 »

seit ich openhab auf Ubuntu habe funktioniert das Deconz Gateway mit allen Schaltern Problemlos.

es sei den Ubuntu macht ein Update und verstellt den Port wieder,
aber das weiß ich inzwischen und nach jedem Update muss ich den Port wieder richtig stellen!

aber hier noch mal ein Curl Beispiel wo ich ein Schalter Thing mit geschaltet hatte,

Code: Alles auswählen

curl -X PUT "http://192.168.xxx.xxx:8080/rest/things/deconz%3AmeinSchalter%3A63b1cdaf16%3A00124b001cd5f9dc01/enable" -H  "accept: */*" -H  "Accept-Language: application/json" -H  "Content-Type: */*" -H  "Authorization: Bearer eyJraWQiOm51bGwsImFsZyI6IlJTMjU2In0.eyJpc3MiOiJvcGVuaGFiIiwiYXVkIjoib3BlbmhhYiIsImV4cCI6MTY2MDkzMTk5NiwianRpIjoiaUg3ZkRfX2dhc0pmZ3J2MFhLOHgzUSIsImlhdCI6MTY2MDkyODM5NiwibmJmIjoxNjYwOTI4Mjc2LCJzdWIiOiJhZG1pbiIsImNsaWVudF9pZCI6Imh0dHA6Ly8xOTIuMTY4LjE3OC4xOTo4MDgwIiwic2NvcGUiOiJhZG1pbiIsInJvbGUiOlsiYWRtaW5pc3RyYXRvciJdfQ.GFckLWp8EBIro7GIuox2XldnnisUmIW4eb2e7kLSvUoHg4uEXQ8L-6B567uNo3oilgaSkzk1_MtQ-PgEHCzbMhF5VYRE2-sNA6g4uLr7aivy5q5YDNkiVtsVdGhnVcDJ6ez42n2q86KkwHWuEL2fIV6S_AEIPkxtZJ7PfClVZ7H818wufbl9lNH6s7ndrYB6G7GXG42KFqTD3kZJU3xenl_KgEa6d33TXwnJabK20UHr1IS31Vie7Bd_bReztp2wx-1rVPo-5nEXoCz9YARriLYJ1FTva8EAVJTteTW_2G1PAjxNDhV46WD9vGAiQI6yV5CTc9v7_C1NZ7eSdqzBjA'" -d "true"
OH 4.3.0 auf HP 26o G1 Dm Mini Pc mit MX_Linux

joebusch
Beiträge: 8
Registriert: 17. Apr 2020 22:33
Answers: 0

Re: deconz offline bei save

Beitrag von joebusch »

Ich konnte es jetzt tatsächlich selbst lösen, ich hatte nicht alle quotes ' durch doppelte " quotes ersetzt.
So in etwa:
curl -X "PUT" "http://192.168.xxx.xxx:xxxx/rest/things/deconz%3Adeconz%3A00212E078004/enable" -H "accept: */*" -H "Content-Type: text/plain" -H "Authorization: Bearer ApiKey" -d "True"

penguin
Beiträge: 9
Registriert: 12. Nov 2022 15:15
Answers: 0

Re: deconz offline bei save

Beitrag von penguin »

Ich habe das gleiche problem, nach einem neustart von openhab3 bekommt das phoscon binding keine Verbindung mehr. Abhilfe scheint hier nur eine Erweiterung des startScripts zu sein:
1. Phoscon/deconz binding deaktivieren:

Code: Alles auswählen

curl -iS -u meinTokenHier: -X PUT -H "accept: */*" -H  "Accept-Language: application/json" -H  "Content-Type: */*" "http://localhost:8080/rest/things/deconz:deconz:00212E095F52/enable" -d "false"
2. Phoscon/deconz binding wieder aktivieren:

Code: Alles auswählen

curl -iS -u meinTokenHier: -X PUT -H "accept: */*" -H  "Accept-Language: application/json" -H  "Content-Type: */*" "http://localhost:8080/rest/things/deconz:deconz:00212E095F52/enable" -d "true"
...jetzt ist das Binding wieder online und alle Sensoren werden angezeigt.

oliverbaush
Beiträge: 24
Registriert: 4. Jan 2022 23:01
Answers: 0
Wohnort: Aschaffenburg

Re: deconz offline bei save

Beitrag von oliverbaush »

Moin zusammen,
ich hatte sporadisch ähnliche Probleme. Deconz war einfach irgendwann nicht mehr da, dann ging halt nichts mehr. Meine Lösung war das in eine Rule zu packen

Wenn thing deconz = OFFLINE -> einmal über API neu starten

Code: Alles auswählen

configuration: {}
triggers:
  - id: "3"
    configuration:
      thingUID: deconz:deconz:[HierStehtUID]
      status: OFFLINE
    type: core.ThingStatusUpdateTrigger
conditions: []
actions:
  - inputs: {}
    id: "2"
    configuration:
      type: application/javascript
      script: >
        var logger =
        Java.type('org.slf4j.LoggerFactory').getLogger('org.openhab.rule.' +
        ctx.ruleUID);

        var Exec = Java.type("org.openhab.core.model.script.actions.Exec");

        var HTTP=Java.type("org.openhab.core.model.script.actions.HTTP");

        var headers = [];

        headers["Authorization"] = "Bearer oh.REST.[hierStehtToken]";

        headers["WWW-Authenticate"] =  "Basic";

        var returnvalue = HTTP.sendHttpPutRequest("http://127.0.0.1:8080/rest/things/deconz:deconz:[HierStehtUID]/enable", "text/plain",  "true" ,headers, 10*1000);

        logger.debug("Deconz aktiviert");

    type: script.ScriptAction
openHAB4.3.1, installiert unter openhabian

penguin
Beiträge: 9
Registriert: 12. Nov 2022 15:15
Answers: 0

Re: deconz offline bei save

Beitrag von penguin »

Danke für die Regel
Leider scheint sie nur zur Laufzeit, aber nicht beim Start von OH zu funktionieren, wharscheinlich wird der "ThingStatusUpdateTrigger" dann nicht ausgelöst....

oliverbaush
Beiträge: 24
Registriert: 4. Jan 2022 23:01
Answers: 0
Wohnort: Aschaffenburg

Re: deconz offline bei save

Beitrag von oliverbaush »

Da hast du recht ;) Mein erster Versuch war per Cronjob das abzufangen (Status per API abfragen, wenn nicht "ONLINE" -> disable und enable Deconz, sende Status an Telegram Bot). Das hatte ich aber angepasst, um es a) in der OH Oberfläche zu verwalten und b) auf der OH Hardware laufen zu lassen.
Beide Ansätze zu vereinen macht Sinn
openHAB4.3.1, installiert unter openhabian

penguin
Beiträge: 9
Registriert: 12. Nov 2022 15:15
Answers: 0

Re: deconz offline bei save

Beitrag von penguin »

Ich hab es über einen Schalter auf der UI und der passenden Regel gelöst. das Ding muß zwngend deaktiviert werden, sonst geht es nicht. Wenn die Felder "undefined" anzeigen, einfach mal den Schalter drücken, quick & dirty hack :D

Code: Alles auswählen

configuration: {}
triggers:
  - id: "3"
    configuration:
      itemName: Restart_deCONZ
      state: ON
      previousState: OFF
    type: core.ItemStateChangeTrigger
conditions: []
actions:
  - inputs: {}
    id: "2"
    configuration:
      type: application/javascript
      script: >
        var logger =
        Java.type('org.slf4j.LoggerFactory').getLogger('org.openhab.rule.' +
        ctx.ruleUID);

        var Exec = Java.type("org.openhab.core.model.script.actions.Exec");

        var HTTP=Java.type("org.openhab.core.model.script.actions.HTTP");

        var headers = [];

        headers["Authorization"] = "Bearer <hier der Token>";

        headers["WWW-Authenticate"] =  "Basic";

        var returnvalue = HTTP.sendHttpPutRequest("http://127.0.0.1:8080/rest/things/deconz:deconz:00212E095F52/enable", "text/plain",  "false" ,headers, 10*1000); var returnvalue = HTTP.sendHttpPutRequest("http://127.0.0.1:8080/rest/things/deconz:deconz:00212E095F52/enable", "text/plain",  "false" ,headers, 10*1000); logger.info("Deconz deaktiviert");

        var returnvalue1 = HTTP.sendHttpPutRequest("http://127.0.0.1:8080/rest/things/deconz:deconz:00212E095F52/enable", "text/plain",  "false" ,headers, 10*1000); var returnvalue = HTTP.sendHttpPutRequest("http://127.0.0.1:8080/rest/things/deconz:deconz:00212E095F52/enable", "text/plain",  "true" ,headers, 10*1000); logger.info("Deconz aktiviert");
    type: script.ScriptAction
  - inputs: {}
    id: "1"
    configuration:
      command: OFF
      itemName: Restart_deCONZ
    type: core.ItemCommandAction

Benutzeravatar
udo1toni
Beiträge: 15240
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: deconz offline bei save

Beitrag von udo1toni »

Man kann das schon über eine Rule lösen, nur für den Systemstart muss man halt noch eine zweite Rule einbauen, die nach einer festgelegten Zeit (das System sollte zumindest die Chance bekommen, von selbst auf die Füße zu kommen) einmal die Aktion deaktivieren/aktivieren ausführt, falls das Gerät uninitialized ist.
Das in nur einer Rule abzufeiern geht sicher auch, aber der Aufwand dürfte höher sein. Keep it simple...
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

EMaster
Beiträge: 107
Registriert: 13. Dez 2018 21:02
Answers: 2

Re: deconz offline bei save

Beitrag von EMaster »

Ich habe mir die beiden Rules an meine Bedürfnisse angepasst und das manuelle Starten funktioniert super.
Wie bekomme ich es denn hin, dass der Status des Things überwacht wird und die Rule dann ausgelöst wird?
Ich war der Meinung, dass die Rule das abfragt, aber das scheint nicht so zu sein!?
openHAB 4.3.4 im Docker@Synology

Benutzeravatar
udo1toni
Beiträge: 15240
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: deconz offline bei save

Beitrag von udo1toni »

Wenn die Rule mit den Triggern von oben angelegt ist, wird sie automatisch gestartet, wenn das überwachte Thing den Status auf Offline wechselt bzw. ein Update des Status erfolgt (keine Ahnung wie oft der Status erneut gemeldet wird, wenn er sich nicht ändert)

Code: Alles auswählen

triggers:
  - id: "3"
    configuration:
      thingUID: deconz:deconz:[HierStehtUID]
      status: OFFLINE
    type: core.ThingStatusUpdateTrigger
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Antworten