Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Mediola Gateway Statusabfrage (States) umwandeln per Script

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    350

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.5k

Mediola Gateway Statusabfrage (States) umwandeln per Script

Geplant Angeheftet Gesperrt Verschoben Blockly
blocklyjavascript
23 Beiträge 4 Kommentatoren 2.0k Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • W Offline
    W Offline
    W0RSCHD
    schrieb am zuletzt editiert von W0RSCHD
    #1

    Hi,
    ich hab ein Mediola Gateway und EnOcean Aktoren (Licht Rolladen usw.).
    Primär gehts mir eigentl. aber ums Licht erst einmal.
    Und zwar kann ich die die Aktoren auch per HTTP Request aus dem iobroker schalten, das funktioniert wunderbar.
    Jetzt hätte ich allerdings gerne den aktuellen Status ebenfalls im iobroker, da wenn ich z.b. mit dem Tablet per iobroker das Licht Schalte,
    aber jemand dann per Taster (EnOcean) wieder ausschaltet, bekommt das der iobroker ja nicht mit, da er den "Status" ja nicht kennt.

    Jetzt kann man aber per "GetStates" den Status aller Aktoren abfragen.
    Das würde ich Zyklisch gerne machen wollen und dann den aktuellen Status je ID in einen Datenpunkt schreiben.

    Der Output von Getstates sieht folgendermassen aus:

    {"XC_SUC":[{"type":"ENOCEAN","sid":"01","adr":"00000001","deviceProtocol":"normal","senderID":"FFAF2D81","virtual":false,"data":"eltako_dimmer","state":{"rssiPercentage":0,"timeout":false,"state":null,"level":null,"ramp_time":0,"lock":false}},{"type":"ENOCEAN","sid":"02","adr":"00000002","deviceProtocol":"normal","senderID":"FFAF2D82","virtual":false,"data":"eltako_dimmer","state":{"rssiPercentage":0,"timeout":false,"state":null,"level":null,"ramp_time":0,"lock":false}},{"type":"ENOCEAN","sid":"03","adr":"FFB6FD0E","deviceProtocol":"normal","senderID":"FFAF2D83","virtual":false,"data":"eltako_dimmer","state":{"rssiPercentage":71,"timeout":false,"state":"off","level":0,"ramp_time":0,"lock":false}},{"type":"ENOCEAN","sid":"04","adr":"FFB6FD0F","deviceProtocol":"normal","senderID":"FFAF2D84","virtual":false,"data":"eltako_dimmer","state":{"rssiPercentage":71,"timeout":false,"state":"off","level":0,"ramp_time":0,"lock":false}},{"type":"ENOCEAN","sid":"05","adr":"FFB6FD0B","deviceProtocol":"normal","senderID":"FFAF2D85","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":64,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"06","adr":"FFB6FD14","deviceProtocol":"normal","senderID":"FFAF2D86","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":66,"pos":100,"sync":true,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"07","adr":"FFB6FD13","deviceProtocol":"normal","senderID":"FFAF2D87","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":66,"pos":100,"sync":true,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"08","adr":"FFB6FD15","deviceProtocol":"normal","senderID":"FFAF2D88","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":true,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"09","adr":"FFB6FD16","deviceProtocol":"normal","senderID":"FFAF2D89","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":66,"pos":100,"sync":false,"rv":25,"rt":25,"lock":false}},{"type":"ENOCEAN","sid":"0A","adr":"FFB6FD1B","deviceProtocol":"normal","senderID":"FFAF2DA5","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":false,"rv":30,"rt":30,"lock":false}},{"type":"ENOCEAN","sid":"0B","adr":"FFB6FD06","deviceProtocol":"normal","senderID":"FFAF2D8B","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":71,"state":"on","lock":false}},{"type":"ENOCEAN","sid":"0C","adr":"FFB6FD26","deviceProtocol":"normal","senderID":"FFAF2D8C","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":66,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"0D","adr":"0000000D","deviceProtocol":"normal","senderID":"FFAF2D8D","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":0,"pos":0,"sync":false,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"0E","adr":"0000000E","deviceProtocol":"normal","senderID":"FFAF2D8E","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":0,"pos":0,"sync":false,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"0F","adr":"FFB6FD1F","deviceProtocol":"normal","senderID":"FFAF2D8F","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":66,"pos":99,"sync":true,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"10","adr":"FFB6FD20","deviceProtocol":"normal","senderID":"FFAF2D90","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":true,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"11","adr":"FFB6FD23","deviceProtocol":"normal","senderID":"FFAF2D91","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":71,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"12","adr":"FFB6FD21","deviceProtocol":"normal","senderID":"FFAF2D92","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":true,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"13","adr":"FFB6FD22","deviceProtocol":"normal","senderID":"FFAF2D93","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":true,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"14","adr":"FFB6FD0C","deviceProtocol":"normal","senderID":"FFAF2D94","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":66,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"15","adr":"FFB6FD25","deviceProtocol":"normal","senderID":"FFAF2D95","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":71,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"16","adr":"FFB6FD02","deviceProtocol":"normal","senderID":"FFAF2D96","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":73,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"17","adr":"FFB6FD18","deviceProtocol":"normal","senderID":"FFAF2D97","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":true,"rv":30,"rt":30,"lock":false}},{"type":"ENOCEAN","sid":"18","adr":"FFB6FD0A","deviceProtocol":"normal","senderID":"FFAF2D98","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":71,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"19","adr":"00000019","deviceProtocol":"normal","senderID":"FFAF2D99","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":0,"pos":0,"sync":false,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"1A","adr":"FFB6FD11","deviceProtocol":"normal","senderID":"FFAF2D9A","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":0,"sync":true,"rv":12,"rt":12,"lock":false}},{"type":"ENOCEAN","sid":"1B","adr":"FFB6FD12","deviceProtocol":"normal","senderID":"FFAF2D9B","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":true,"rv":12,"rt":12,"lock":false}},{"type":"ENOCEAN","sid":"1C","adr":"FFB6FD07","deviceProtocol":"normal","senderID":"FFAF2D9C","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":71,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"1D","adr":"FFB6FD27","deviceProtocol":"normal","senderID":"FFAF2D9D","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":0,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"1E","adr":"0000001E","deviceProtocol":"normal","senderID":"FFAF2D9E","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":0,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"1F","adr":"FFB6FD04","deviceProtocol":"normal","senderID":"FFAF2D9F","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":0,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"20","adr":"FFB6FD05","deviceProtocol":"normal","senderID":"FFAF2DA0","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":0,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"21","adr":"FFB6FD08","deviceProtocol":"normal","senderID":"FFAF2DA1","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":66,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"22","adr":"FFB6FD10","deviceProtocol":"normal","senderID":"FFAF2DA2","virtual":false,"data":"eltako_dimmer","state":{"rssiPercentage":71,"timeout":false,"state":"off","level":0,"ramp_time":0,"lock":false}},{"type":"ENOCEAN","sid":"23","adr":"FFB6FD0D","deviceProtocol":"normal","senderID":"FFAF2DA3","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":71,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"24","adr":"FFB6FD09","deviceProtocol":"normal","senderID":"FFAF2DA4","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":59,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"25","adr":"FFB6FD1E","deviceProtocol":"normal","senderID":"FFAF2DA6","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":true,"rv":30,"rt":30,"lock":false}},{"type":"ENOCEAN","sid":"26","adr":"FFB6FD17","deviceProtocol":"normal","senderID":"FFAF2DA7","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":66,"pos":100,"sync":true,"rv":25,"rt":25,"lock":false}},{"type":"ENOCEAN","sid":"27","adr":"FFB6FD19","deviceProtocol":"normal","senderID":"FFAF2DA8","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":true,"rv":30,"rt":30,"lock":false}},{"type":"ENOCEAN","sid":"28","adr":"FFB6FD1C","deviceProtocol":"normal","senderID":"FFAF2DA9","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":false,"rv":23,"rt":23,"lock":false}},{"type":"ENOCEAN","sid":"29","adr":"FFB6FD1D","deviceProtocol":"normal","senderID":"FFAF2DAA","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":false,"rv":30,"rt":30,"lock":false}},{"type":"EVENT","adr":"01","state":"1"},{"type":"EVENT","adr":"02","state":"1"}]}
    

    Sorry für die Optik des Codes, wenn mans im Texfile ganz breit zieht, sieht man dass da pro ID eine Zeile ist. Hier ist es ein Durcheinander leider und schlecht lesbar.

    Kann man das irgendwie per Script filtern, z.b. ich nehme jetzt z.b. mal die Adresse "FFB6FD0B" das letzte "state":"off" ist ja der status (EIN/AUS), den ich gerne abfragen möchte. Kann man das irgendwie scripten dass ich die Statuse der gewünschten ID´s irgendwie rausschreiben kann in einen Datenpunkt im iobroker, den ich dann anderweitig wieder benutzen kann. True/False reicht da ja oder bei den Dimmern die Prozente z.b....

    Ich bin da leider Scripttechnisch überfragt und mir fällt da auch mit Blockly nichts ein wie ich das filtern könnte? Wahrscheinlich geht das am besten per Javascript, aber da hab ich absolut keine Ahnung davon.

    Ich stell mir das irgendwie so vor: If "FFB6FD0B" status = off write userdata.0/LampeXY=false , so in die Richtung. Nur halt absolut keine Ahnung wie, da man ja den ganzen unnützen Müll der da mit in der Liste ist auch irgendwie filtern muss.

    Vielleicht hat jemand die Lösung oder zumindestens einen Ansatz den man ausarbeiten könnte?

    paul53P 1 Antwort Letzte Antwort
    0
    • W W0RSCHD

      Hi,
      ich hab ein Mediola Gateway und EnOcean Aktoren (Licht Rolladen usw.).
      Primär gehts mir eigentl. aber ums Licht erst einmal.
      Und zwar kann ich die die Aktoren auch per HTTP Request aus dem iobroker schalten, das funktioniert wunderbar.
      Jetzt hätte ich allerdings gerne den aktuellen Status ebenfalls im iobroker, da wenn ich z.b. mit dem Tablet per iobroker das Licht Schalte,
      aber jemand dann per Taster (EnOcean) wieder ausschaltet, bekommt das der iobroker ja nicht mit, da er den "Status" ja nicht kennt.

      Jetzt kann man aber per "GetStates" den Status aller Aktoren abfragen.
      Das würde ich Zyklisch gerne machen wollen und dann den aktuellen Status je ID in einen Datenpunkt schreiben.

      Der Output von Getstates sieht folgendermassen aus:

      {"XC_SUC":[{"type":"ENOCEAN","sid":"01","adr":"00000001","deviceProtocol":"normal","senderID":"FFAF2D81","virtual":false,"data":"eltako_dimmer","state":{"rssiPercentage":0,"timeout":false,"state":null,"level":null,"ramp_time":0,"lock":false}},{"type":"ENOCEAN","sid":"02","adr":"00000002","deviceProtocol":"normal","senderID":"FFAF2D82","virtual":false,"data":"eltako_dimmer","state":{"rssiPercentage":0,"timeout":false,"state":null,"level":null,"ramp_time":0,"lock":false}},{"type":"ENOCEAN","sid":"03","adr":"FFB6FD0E","deviceProtocol":"normal","senderID":"FFAF2D83","virtual":false,"data":"eltako_dimmer","state":{"rssiPercentage":71,"timeout":false,"state":"off","level":0,"ramp_time":0,"lock":false}},{"type":"ENOCEAN","sid":"04","adr":"FFB6FD0F","deviceProtocol":"normal","senderID":"FFAF2D84","virtual":false,"data":"eltako_dimmer","state":{"rssiPercentage":71,"timeout":false,"state":"off","level":0,"ramp_time":0,"lock":false}},{"type":"ENOCEAN","sid":"05","adr":"FFB6FD0B","deviceProtocol":"normal","senderID":"FFAF2D85","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":64,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"06","adr":"FFB6FD14","deviceProtocol":"normal","senderID":"FFAF2D86","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":66,"pos":100,"sync":true,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"07","adr":"FFB6FD13","deviceProtocol":"normal","senderID":"FFAF2D87","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":66,"pos":100,"sync":true,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"08","adr":"FFB6FD15","deviceProtocol":"normal","senderID":"FFAF2D88","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":true,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"09","adr":"FFB6FD16","deviceProtocol":"normal","senderID":"FFAF2D89","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":66,"pos":100,"sync":false,"rv":25,"rt":25,"lock":false}},{"type":"ENOCEAN","sid":"0A","adr":"FFB6FD1B","deviceProtocol":"normal","senderID":"FFAF2DA5","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":false,"rv":30,"rt":30,"lock":false}},{"type":"ENOCEAN","sid":"0B","adr":"FFB6FD06","deviceProtocol":"normal","senderID":"FFAF2D8B","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":71,"state":"on","lock":false}},{"type":"ENOCEAN","sid":"0C","adr":"FFB6FD26","deviceProtocol":"normal","senderID":"FFAF2D8C","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":66,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"0D","adr":"0000000D","deviceProtocol":"normal","senderID":"FFAF2D8D","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":0,"pos":0,"sync":false,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"0E","adr":"0000000E","deviceProtocol":"normal","senderID":"FFAF2D8E","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":0,"pos":0,"sync":false,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"0F","adr":"FFB6FD1F","deviceProtocol":"normal","senderID":"FFAF2D8F","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":66,"pos":99,"sync":true,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"10","adr":"FFB6FD20","deviceProtocol":"normal","senderID":"FFAF2D90","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":true,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"11","adr":"FFB6FD23","deviceProtocol":"normal","senderID":"FFAF2D91","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":71,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"12","adr":"FFB6FD21","deviceProtocol":"normal","senderID":"FFAF2D92","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":true,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"13","adr":"FFB6FD22","deviceProtocol":"normal","senderID":"FFAF2D93","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":true,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"14","adr":"FFB6FD0C","deviceProtocol":"normal","senderID":"FFAF2D94","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":66,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"15","adr":"FFB6FD25","deviceProtocol":"normal","senderID":"FFAF2D95","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":71,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"16","adr":"FFB6FD02","deviceProtocol":"normal","senderID":"FFAF2D96","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":73,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"17","adr":"FFB6FD18","deviceProtocol":"normal","senderID":"FFAF2D97","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":true,"rv":30,"rt":30,"lock":false}},{"type":"ENOCEAN","sid":"18","adr":"FFB6FD0A","deviceProtocol":"normal","senderID":"FFAF2D98","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":71,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"19","adr":"00000019","deviceProtocol":"normal","senderID":"FFAF2D99","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":0,"pos":0,"sync":false,"rv":200,"rt":200,"lock":false}},{"type":"ENOCEAN","sid":"1A","adr":"FFB6FD11","deviceProtocol":"normal","senderID":"FFAF2D9A","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":0,"sync":true,"rv":12,"rt":12,"lock":false}},{"type":"ENOCEAN","sid":"1B","adr":"FFB6FD12","deviceProtocol":"normal","senderID":"FFAF2D9B","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":true,"rv":12,"rt":12,"lock":false}},{"type":"ENOCEAN","sid":"1C","adr":"FFB6FD07","deviceProtocol":"normal","senderID":"FFAF2D9C","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":71,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"1D","adr":"FFB6FD27","deviceProtocol":"normal","senderID":"FFAF2D9D","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":0,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"1E","adr":"0000001E","deviceProtocol":"normal","senderID":"FFAF2D9E","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":0,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"1F","adr":"FFB6FD04","deviceProtocol":"normal","senderID":"FFAF2D9F","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":0,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"20","adr":"FFB6FD05","deviceProtocol":"normal","senderID":"FFAF2DA0","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":0,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"21","adr":"FFB6FD08","deviceProtocol":"normal","senderID":"FFAF2DA1","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":66,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"22","adr":"FFB6FD10","deviceProtocol":"normal","senderID":"FFAF2DA2","virtual":false,"data":"eltako_dimmer","state":{"rssiPercentage":71,"timeout":false,"state":"off","level":0,"ramp_time":0,"lock":false}},{"type":"ENOCEAN","sid":"23","adr":"FFB6FD0D","deviceProtocol":"normal","senderID":"FFAF2DA3","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":71,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"24","adr":"FFB6FD09","deviceProtocol":"normal","senderID":"FFAF2DA4","virtual":false,"data":"eltako_switch","state":{"rssiPercentage":59,"state":"off","lock":false}},{"type":"ENOCEAN","sid":"25","adr":"FFB6FD1E","deviceProtocol":"normal","senderID":"FFAF2DA6","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":true,"rv":30,"rt":30,"lock":false}},{"type":"ENOCEAN","sid":"26","adr":"FFB6FD17","deviceProtocol":"normal","senderID":"FFAF2DA7","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":66,"pos":100,"sync":true,"rv":25,"rt":25,"lock":false}},{"type":"ENOCEAN","sid":"27","adr":"FFB6FD19","deviceProtocol":"normal","senderID":"FFAF2DA8","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":true,"rv":30,"rt":30,"lock":false}},{"type":"ENOCEAN","sid":"28","adr":"FFB6FD1C","deviceProtocol":"normal","senderID":"FFAF2DA9","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":false,"rv":23,"rt":23,"lock":false}},{"type":"ENOCEAN","sid":"29","adr":"FFB6FD1D","deviceProtocol":"normal","senderID":"FFAF2DAA","virtual":false,"data":"eltako_blind","state":{"rssiPercentage":71,"pos":100,"sync":false,"rv":30,"rt":30,"lock":false}},{"type":"EVENT","adr":"01","state":"1"},{"type":"EVENT","adr":"02","state":"1"}]}
      

      Sorry für die Optik des Codes, wenn mans im Texfile ganz breit zieht, sieht man dass da pro ID eine Zeile ist. Hier ist es ein Durcheinander leider und schlecht lesbar.

      Kann man das irgendwie per Script filtern, z.b. ich nehme jetzt z.b. mal die Adresse "FFB6FD0B" das letzte "state":"off" ist ja der status (EIN/AUS), den ich gerne abfragen möchte. Kann man das irgendwie scripten dass ich die Statuse der gewünschten ID´s irgendwie rausschreiben kann in einen Datenpunkt im iobroker, den ich dann anderweitig wieder benutzen kann. True/False reicht da ja oder bei den Dimmern die Prozente z.b....

      Ich bin da leider Scripttechnisch überfragt und mir fällt da auch mit Blockly nichts ein wie ich das filtern könnte? Wahrscheinlich geht das am besten per Javascript, aber da hab ich absolut keine Ahnung davon.

      Ich stell mir das irgendwie so vor: If "FFB6FD0B" status = off write userdata.0/LampeXY=false , so in die Richtung. Nur halt absolut keine Ahnung wie, da man ja den ganzen unnützen Müll der da mit in der Liste ist auch irgendwie filtern muss.

      Vielleicht hat jemand die Lösung oder zumindestens einen Ansatz den man ausarbeiten könnte?

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von paul53
      #2

      @w0rschd sagte: mir fällt da auch mit Blockly nichts ein wie ich das filtern könnte?

      Ansatz:

      Bild_2021-12-21_231119.png

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      W 1 Antwort Letzte Antwort
      1
      • paul53P paul53

        @w0rschd sagte: mir fällt da auch mit Blockly nichts ein wie ich das filtern könnte?

        Ansatz:

        Bild_2021-12-21_231119.png

        W Offline
        W Offline
        W0RSCHD
        schrieb am zuletzt editiert von W0RSCHD
        #3

        @paul53 Ok das ist wirklich schon mal ein Ansatz vielen Dank!!! Ich bekomme es damit wahrsch. nicht komplett hin aber ich fange mal an zu "basteln"

        Wie bringe ich die Liste als Variable da rein?

        Ich mache ja als erstes ein execute mit dem http get Befehl damit ich diese Liste aktuell bekomme als Antwort vom Mediola Gateway.
        Diese will ich dann ja immer aktuell "Filtern" und die States setzen. Idealerweise zyklisch.
        Welchen block muss ich benutzen damit der Output vom exec Befehl (also diese Liste dann) als Variable fürs Script verfügbar ist?
        Das ist für mich noch "Neuland", ich versuch mich da aber rein zu fuchsen

        paul53P 2 Antworten Letzte Antwort
        0
        • W W0RSCHD

          @paul53 Ok das ist wirklich schon mal ein Ansatz vielen Dank!!! Ich bekomme es damit wahrsch. nicht komplett hin aber ich fange mal an zu "basteln"

          Wie bringe ich die Liste als Variable da rein?

          Ich mache ja als erstes ein execute mit dem http get Befehl damit ich diese Liste aktuell bekomme als Antwort vom Mediola Gateway.
          Diese will ich dann ja immer aktuell "Filtern" und die States setzen. Idealerweise zyklisch.
          Welchen block muss ich benutzen damit der Output vom exec Befehl (also diese Liste dann) als Variable fürs Script verfügbar ist?
          Das ist für mich noch "Neuland", ich versuch mich da aber rein zu fuchsen

          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von
          #4

          @w0rschd sagte: execute mit dem http get Befehl

          Weshalb nicht mit request?

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          1 Antwort Letzte Antwort
          0
          • W W0RSCHD

            @paul53 Ok das ist wirklich schon mal ein Ansatz vielen Dank!!! Ich bekomme es damit wahrsch. nicht komplett hin aber ich fange mal an zu "basteln"

            Wie bringe ich die Liste als Variable da rein?

            Ich mache ja als erstes ein execute mit dem http get Befehl damit ich diese Liste aktuell bekomme als Antwort vom Mediola Gateway.
            Diese will ich dann ja immer aktuell "Filtern" und die States setzen. Idealerweise zyklisch.
            Welchen block muss ich benutzen damit der Output vom exec Befehl (also diese Liste dann) als Variable fürs Script verfügbar ist?
            Das ist für mich noch "Neuland", ich versuch mich da aber rein zu fuchsen

            paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von
            #5

            @w0rschd sagte: Idealerweise zyklisch.

            Oberer Teil für alle 10 Sekunden:

            Bild_2021-12-21_232351.png

            Die Variable result muss genau so geschrieben werden.

            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

            W 2 Antworten Letzte Antwort
            0
            • paul53P paul53

              @w0rschd sagte: Idealerweise zyklisch.

              Oberer Teil für alle 10 Sekunden:

              Bild_2021-12-21_232351.png

              Die Variable result muss genau so geschrieben werden.

              W Offline
              W Offline
              W0RSCHD
              schrieb am zuletzt editiert von
              #6

              @paul53 oh cool danke!! das klimper ich direkt mal rein und Teste mich ran.

              Ja sorry ich meinte auch Request nicht Execute, hab ich grad gemerkt als ich mal anfangen wollte das zusammen zu bauen

              1 Antwort Letzte Antwort
              0
              • paul53P paul53

                @w0rschd sagte: Idealerweise zyklisch.

                Oberer Teil für alle 10 Sekunden:

                Bild_2021-12-21_232351.png

                Die Variable result muss genau so geschrieben werden.

                W Offline
                W Offline
                W0RSCHD
                schrieb am zuletzt editiert von
                #7

                @paul53 Ich habs zum Testen mal so gemacht

                Neue Bitmap (5).jpg

                Dann müsste ich doch zumindestens was er als Variable in der Get_States_Liste hat als Telegram Nachricht bekommen oder?
                Weil da kommt nichts.
                Ich wollte es zum debuggen mal so testen damit ich sehe dass der Teil schon mal klappt. Und dann stück für Stück aufbauen.

                paul53P 1 Antwort Letzte Antwort
                0
                • W W0RSCHD

                  @paul53 Ich habs zum Testen mal so gemacht

                  Neue Bitmap (5).jpg

                  Dann müsste ich doch zumindestens was er als Variable in der Get_States_Liste hat als Telegram Nachricht bekommen oder?
                  Weil da kommt nichts.
                  Ich wollte es zum debuggen mal so testen damit ich sehe dass der Teil schon mal klappt. Und dann stück für Stück aufbauen.

                  paul53P Offline
                  paul53P Offline
                  paul53
                  schrieb am zuletzt editiert von paul53
                  #8

                  @w0rschd sagte: Get_States_Liste hat als Telegram Nachrich

                  Telegram kann wahrscheinlich nicht mit einem Array of objects umgehen, sondern benötigt Strings.

                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                  Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                  W 1 Antwort Letzte Antwort
                  1
                  • paul53P paul53

                    @w0rschd sagte: Get_States_Liste hat als Telegram Nachrich

                    Telegram kann wahrscheinlich nicht mit einem Array of objects umgehen, sondern benötigt Strings.

                    W Offline
                    W Offline
                    W0RSCHD
                    schrieb am zuletzt editiert von W0RSCHD
                    #9

                    @paul53 ah ok... hab den Fehler vom Telegram aber auch schon, da muss noch ein erstelle Text aus... vor die Variable...

                    Dann kommt aber auch wie du schon vermutet hast nur (object) object in "endlosschleife" ^^

                    Nächste Frage, angenommen die Liste passt (was ich ja so wie ich dachte nicht überprüfen kann), kommt ja das mit dem Zählen. Er zählt die Kollumnen durch,
                    woher weiss er was der Trenner ist also : oder ;? Oder zählt er Zeilenweise?

                    Was ich auch nicht ganz kapier, du aktualisierst objektid xy mit dem atribut state.state vom obj mit "on" als text, aber wenn dort z.b. off drin wäre, dann würde er trotzdem "on" in das objekt schreiben? Ich steh da grad aufm schlauch

                    paul53P 1 Antwort Letzte Antwort
                    0
                    • W W0RSCHD

                      @paul53 ah ok... hab den Fehler vom Telegram aber auch schon, da muss noch ein erstelle Text aus... vor die Variable...

                      Dann kommt aber auch wie du schon vermutet hast nur (object) object in "endlosschleife" ^^

                      Nächste Frage, angenommen die Liste passt (was ich ja so wie ich dachte nicht überprüfen kann), kommt ja das mit dem Zählen. Er zählt die Kollumnen durch,
                      woher weiss er was der Trenner ist also : oder ;? Oder zählt er Zeilenweise?

                      Was ich auch nicht ganz kapier, du aktualisierst objektid xy mit dem atribut state.state vom obj mit "on" als text, aber wenn dort z.b. off drin wäre, dann würde er trotzdem "on" in das objekt schreiben? Ich steh da grad aufm schlauch

                      paul53P Offline
                      paul53P Offline
                      paul53
                      schrieb am zuletzt editiert von
                      #10

                      @w0rschd sagte: da muss noch ein erstelle Text aus... vor die Variable

                      Das funktioniert nicht. Wandle es für Telegram in ein JSON:

                      Bild_2021-12-21_234057.png

                      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                      W 1 Antwort Letzte Antwort
                      1
                      • paul53P paul53

                        @w0rschd sagte: da muss noch ein erstelle Text aus... vor die Variable

                        Das funktioniert nicht. Wandle es für Telegram in ein JSON:

                        Bild_2021-12-21_234057.png

                        W Offline
                        W Offline
                        W0RSCHD
                        schrieb am zuletzt editiert von
                        #11

                        @paul53 wie kann ich mir anschauen was der "Inhalt" von der Liste ist? Damit ich auch den späteren zusammenbau wann er was wählt besser verstehe?

                        paul53P 1 Antwort Letzte Antwort
                        0
                        • W W0RSCHD

                          @paul53 wie kann ich mir anschauen was der "Inhalt" von der Liste ist? Damit ich auch den späteren zusammenbau wann er was wählt besser verstehe?

                          paul53P Offline
                          paul53P Offline
                          paul53
                          schrieb am zuletzt editiert von
                          #12

                          @w0rschd sagte: wie kann ich mir anschauen was der "Inhalt" von der Liste ist?

                          Mit dem JSON-Viewer.

                          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                          W 1 Antwort Letzte Antwort
                          1
                          • paul53P paul53

                            @w0rschd sagte: wie kann ich mir anschauen was der "Inhalt" von der Liste ist?

                            Mit dem JSON-Viewer.

                            W Offline
                            W Offline
                            W0RSCHD
                            schrieb am zuletzt editiert von
                            #13

                            @paul53 ok, wie komm ich an die Liste dran? Die liegt als File auf dem iobroker System oder wie bekomm ich die Variable in den Json-Viewer? Vielleicht doof die Frage aber das ist mir noch nicht ganz klar.

                            paul53P 1 Antwort Letzte Antwort
                            0
                            • W W0RSCHD

                              @paul53 ok, wie komm ich an die Liste dran? Die liegt als File auf dem iobroker System oder wie bekomm ich die Variable in den Json-Viewer? Vielleicht doof die Frage aber das ist mir noch nicht ganz klar.

                              paul53P Offline
                              paul53P Offline
                              paul53
                              schrieb am zuletzt editiert von
                              #14

                              @w0rschd sagte: wie bekomm ich die Variable in den Json-Viewer?

                              Mit Copy & Paste aus dem ersten Beitrag.

                              Bild_2021-12-22_000511.png

                              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                              W 1 Antwort Letzte Antwort
                              0
                              • paul53P paul53

                                @w0rschd sagte: wie bekomm ich die Variable in den Json-Viewer?

                                Mit Copy & Paste aus dem ersten Beitrag.

                                Bild_2021-12-22_000511.png

                                W Offline
                                W Offline
                                W0RSCHD
                                schrieb am zuletzt editiert von W0RSCHD
                                #15

                                @paul53 achsooo du meintest meine Liste, das ist ja das Ergebnis wenn man den Request mit dem Browser macht.... damit komm ich ja noch klar.
                                Ich meinte im Blocky um zu prüfen ob der Request funktioniert und er das was zurück kommt auch in der Liste richtig hat, wollte ich um nachzuprüfen was in der Variable drin ist mir das per Telegram senden. So meinte ich das. Geht das irgendwie anderst zu prüfen was in der "Variable" drin steht und ob er den Request richtig übernommen hat?
                                Oder muss ich mich einfach drauf verlassen dass das halt so klappt hehe

                                paul53P 1 Antwort Letzte Antwort
                                0
                                • W W0RSCHD

                                  @paul53 achsooo du meintest meine Liste, das ist ja das Ergebnis wenn man den Request mit dem Browser macht.... damit komm ich ja noch klar.
                                  Ich meinte im Blocky um zu prüfen ob der Request funktioniert und er das was zurück kommt auch in der Liste richtig hat, wollte ich um nachzuprüfen was in der Variable drin ist mir das per Telegram senden. So meinte ich das. Geht das irgendwie anderst zu prüfen was in der "Variable" drin steht und ob er den Request richtig übernommen hat?
                                  Oder muss ich mich einfach drauf verlassen dass das halt so klappt hehe

                                  paul53P Offline
                                  paul53P Offline
                                  paul53
                                  schrieb am zuletzt editiert von
                                  #16

                                  @w0rschd sagte: zu prüfen was in der "Variable" drin steht und ob er den Request richtig übernommen hat?

                                  Ein Debug-Block in der Schleife gibt nacheinander die 42 Objekte aus.

                                  Bild_2021-12-22_002122.png

                                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                  Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                  W 2 Antworten Letzte Antwort
                                  1
                                  • paul53P paul53

                                    @w0rschd sagte: zu prüfen was in der "Variable" drin steht und ob er den Request richtig übernommen hat?

                                    Ein Debug-Block in der Schleife gibt nacheinander die 42 Objekte aus.

                                    Bild_2021-12-22_002122.png

                                    W Offline
                                    W Offline
                                    W0RSCHD
                                    schrieb am zuletzt editiert von
                                    #17

                                    @paul53 ok, so langsam klingelts :)

                                    tesltauf.jpg

                                    Ich habs jetzt mal so gemacht, nur SenderID gegen adr getauscht, da ich ja den Zustand vom Aktor, nicht den Lichtschalter oder was auch immer SenderID ist, abfragen will.

                                    Aber er schreibt mir nichts in den Datenpunkt vom Bürolicht.
                                    Wo hängt mein Hirn gerade?

                                    paul53P 1 Antwort Letzte Antwort
                                    0
                                    • paul53P paul53

                                      @w0rschd sagte: zu prüfen was in der "Variable" drin steht und ob er den Request richtig übernommen hat?

                                      Ein Debug-Block in der Schleife gibt nacheinander die 42 Objekte aus.

                                      Bild_2021-12-22_002122.png

                                      W Offline
                                      W Offline
                                      W0RSCHD
                                      schrieb am zuletzt editiert von
                                      #18

                                      @paul53 Habs hinbekommen.

                                      Vielen vielen Dank! Ohne deine Hilfe wär ich da niemals drauf gekommen, genial :)

                                      1 Antwort Letzte Antwort
                                      0
                                      • W W0RSCHD

                                        @paul53 ok, so langsam klingelts :)

                                        tesltauf.jpg

                                        Ich habs jetzt mal so gemacht, nur SenderID gegen adr getauscht, da ich ja den Zustand vom Aktor, nicht den Lichtschalter oder was auch immer SenderID ist, abfragen will.

                                        Aber er schreibt mir nichts in den Datenpunkt vom Bürolicht.
                                        Wo hängt mein Hirn gerade?

                                        paul53P Offline
                                        paul53P Offline
                                        paul53
                                        schrieb am zuletzt editiert von
                                        #19

                                        @w0rschd sagte: schreibt mir nichts in den Datenpunkt vom Bürolicht.

                                        Hat die Debug-Ausgabe funktioniert? Dann müsste "on" oder "off" in den Datenpunkt geschrieben werden.

                                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                        W 1 Antwort Letzte Antwort
                                        0
                                        • paul53P paul53

                                          @w0rschd sagte: schreibt mir nichts in den Datenpunkt vom Bürolicht.

                                          Hat die Debug-Ausgabe funktioniert? Dann müsste "on" oder "off" in den Datenpunkt geschrieben werden.

                                          W Offline
                                          W Offline
                                          W0RSCHD
                                          schrieb am zuletzt editiert von
                                          #20

                                          @paul53 ja hat geklappt. Hatte Debug noch im Blockly an dann hat er nichts geschrieben, das hab ich dann gemerkt und ausgemacht und tadaaaa es ginge.
                                          Habe mir jetzt schon mal Wohn-Esszimmer-Küche "programmiert" und das funktioniert alles prima, das war genau das was ich gesucht habe.

                                          Ich kanns nur nochmal wiederholen, Danke für deine Hilfe, ohne die hätte ich da gar nix verstanden, geschweige denn hinbekommen!

                                          ingranuI 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          689

                                          Online

                                          32.5k

                                          Benutzer

                                          81.8k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe