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. Tester
  4. Test Adapter bshb (Bosch Smart Home) v0.0.x

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.1k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.8k

Test Adapter bshb (Bosch Smart Home) v0.0.x

Geplant Angeheftet Gesperrt Verschoben Tester
bosch
437 Beiträge 85 Kommentatoren 111.2k Aufrufe 87 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.
  • H holomekc

    @BigTom91
    Hi. Ja da hast du recht. Das ist aktuell in der Tat noch so. Ich schaue mal, ob ich dafür eine passende Lösung finde. Mein erster Gedanke wäre das nur zu machen, wenn das Objekt noch nicht existiert.

    B Offline
    B Offline
    BigTom91
    schrieb am zuletzt editiert von
    #140

    @holomekc :)
    Nur für neue/noch nicht existierende Objekte finde ich gut. Evtl. kann man dies ebenfalls noch als Einstellung in den Adapteroptionen mit übernehmen?

    H 1 Antwort Letzte Antwort
    0
    • B BigTom91

      @holomekc :)
      Nur für neue/noch nicht existierende Objekte finde ich gut. Evtl. kann man dies ebenfalls noch als Einstellung in den Adapteroptionen mit übernehmen?

      H Offline
      H Offline
      holomekc
      schrieb am zuletzt editiert von
      #141

      @BigTom91
      Im GitHub liegt 1.5.0 wenn du magst kannst du es damit schon einmal testen:
      https://github.com/holomekc/ioBroker.bshb

      Aktuell ist es noch ohne Einstellung. Vielleicht reicht es so?

      B 1 Antwort Letzte Antwort
      0
      • H holomekc

        @BigTom91
        Im GitHub liegt 1.5.0 wenn du magst kannst du es damit schon einmal testen:
        https://github.com/holomekc/ioBroker.bshb

        Aktuell ist es noch ohne Einstellung. Vielleicht reicht es so?

        B Offline
        B Offline
        BigTom91
        schrieb am zuletzt editiert von
        #142

        @holomekc Vielen Dank für die schnelle Umsetzung.
        Ich werde es mir anschauen, sobald ich es installieren kann.

        Ein großes Problem war, dass ich zum Beispiel einen Raum "Bad" hatte, und der Adapter allerdings immer "bad" hinzugefügt hatte und somit "zwei" pro Gerät zugewiesen waren.

        1 Antwort Letzte Antwort
        0
        • JB1985J Offline
          JB1985J Offline
          JB1985
          schrieb am zuletzt editiert von
          #143

          Moin @holomekc

          wäre es möglich die API Abfrage "{{shc_api}}/doors-windows/openwindows" mit aufzunehmen?

          Laut eines Entwicklers ist die Funktion nun vorhanden zu prüfen ob ein Fenster offen ist.

          H 2 Antworten Letzte Antwort
          0
          • JB1985J JB1985

            Moin @holomekc

            wäre es möglich die API Abfrage "{{shc_api}}/doors-windows/openwindows" mit aufzunehmen?

            Laut eines Entwicklers ist die Funktion nun vorhanden zu prüfen ob ein Fenster offen ist.

            H Offline
            H Offline
            holomekc
            schrieb am zuletzt editiert von
            #144

            @JB1985
            Hi. Ich kann bestätigen das es geht. Versuche ich zeitnah umzusetzen.

            1 Antwort Letzte Antwort
            0
            • JB1985J JB1985

              Moin @holomekc

              wäre es möglich die API Abfrage "{{shc_api}}/doors-windows/openwindows" mit aufzunehmen?

              Laut eines Entwicklers ist die Funktion nun vorhanden zu prüfen ob ein Fenster offen ist.

              H Offline
              H Offline
              holomekc
              schrieb am zuletzt editiert von
              #145

              @JB1985
              Hi. Sorry. Eine Frage noch. Ich war kurz am überlegen was ich mit den Infos mache. Aber was ist der Vorteil gegenüber den einzelnen Werten bei den Geräten?

              Geht es darum, dass man direkt alle Werte erhält? Bei mir sieht das bspw. so aus:

              {
              "allDoors": [],
              "openDoors": [],
              "unknownDoors": [],
              "allWindows": [
              {
              "name": "Fensterkontakt",
              "roomName": "Schlafzimmer"
              }
              ],
              "openWindows": [],
              "unknownWindows": [],
              "allOthers": [
              {
              "name": "Eingangstür",
              "roomName": "Flur"
              },
              {
              "name": "Fenster",
              "roomName": "Wohnzimmer"
              }
              ],
              "openOthers": [
              {
              "name": "Fenster",
              "roomName": "Wohnzimmer"
              }
              ],
              "unknownOthers": []
              }

              Wie sollte das im Adapter aussehen? Ein state der exakt das zurück gibt was oben zu sehen ist?

              JB1985J 1 Antwort Letzte Antwort
              0
              • H holomekc

                @JB1985
                Hi. Sorry. Eine Frage noch. Ich war kurz am überlegen was ich mit den Infos mache. Aber was ist der Vorteil gegenüber den einzelnen Werten bei den Geräten?

                Geht es darum, dass man direkt alle Werte erhält? Bei mir sieht das bspw. so aus:

                {
                "allDoors": [],
                "openDoors": [],
                "unknownDoors": [],
                "allWindows": [
                {
                "name": "Fensterkontakt",
                "roomName": "Schlafzimmer"
                }
                ],
                "openWindows": [],
                "unknownWindows": [],
                "allOthers": [
                {
                "name": "Eingangstür",
                "roomName": "Flur"
                },
                {
                "name": "Fenster",
                "roomName": "Wohnzimmer"
                }
                ],
                "openOthers": [
                {
                "name": "Fenster",
                "roomName": "Wohnzimmer"
                }
                ],
                "unknownOthers": []
                }

                Wie sollte das im Adapter aussehen? Ein state der exakt das zurück gibt was oben zu sehen ist?

                JB1985J Offline
                JB1985J Offline
                JB1985
                schrieb am zuletzt editiert von
                #146

                @holomekc Ich mache das momentan ja über ein anderes Script. Siehe relativ weit oben.

                Schön wäre es, wenn man die Anzahl der geöffnet Fenster/Türen raus bekommt sowie welche Fenster/Türe offen sind.

                H 1 Antwort Letzte Antwort
                0
                • JB1985J JB1985

                  @holomekc Ich mache das momentan ja über ein anderes Script. Siehe relativ weit oben.

                  Schön wäre es, wenn man die Anzahl der geöffnet Fenster/Türen raus bekommt sowie welche Fenster/Türe offen sind.

                  H Offline
                  H Offline
                  holomekc
                  schrieb am zuletzt editiert von
                  #147

                  @JB1985
                  So?
                  57fe19fd-6f9a-46bb-9e68-a4ecb65dfb5d-image.png

                  Oder ist das schon zu übertrieben?

                  • 0_raw
                    Das sind die reinen Daten die ich vorhin schon mal erwähnt habe. Die 0 habe ich dort nur eingefügt, damit das ganze ganz oben einsortiert wird.
                  • all*
                    Alle Gruppen die oben bereits erwähnt wurden sind hier zusammengefasst. Also doors, windows und others

                  Ich überlege noch, ob ich das nicht gruppiere (dann könnte ich vielleicht auch das 0_ wegnehmen):

                  openDoorsAndWindows
                     |- all
                        |- all
                        |- allCount
                        |- allOpen
                        |- allOpenCound
                        |- allUnknown
                        |- allUnknownCount
                     |- doors
                        |- doorsAll
                        |- doorsAllCount
                        |- doorsOpen
                        |- doorsOpenCound
                        |- doorsUnknown
                        |- doorsUnknownCount
                     |- others
                        |- othersAll
                        |- othersAllCount
                        |- othersOpen
                        |- othersOpenCound
                        |- othersUnknown
                        |- othersUnknownCount
                     |- windows
                        |- windowsAll
                        |- windowsAllCount
                        |- windowsOpen
                        |- windowsOpenCound
                        |- windowsUnknown
                        |- windowsUnknownCount
                     |- raw
                  

                  Viele Grüße
                  Christopher

                  JB1985J 1 Antwort Letzte Antwort
                  0
                  • H holomekc

                    @JB1985
                    So?
                    57fe19fd-6f9a-46bb-9e68-a4ecb65dfb5d-image.png

                    Oder ist das schon zu übertrieben?

                    • 0_raw
                      Das sind die reinen Daten die ich vorhin schon mal erwähnt habe. Die 0 habe ich dort nur eingefügt, damit das ganze ganz oben einsortiert wird.
                    • all*
                      Alle Gruppen die oben bereits erwähnt wurden sind hier zusammengefasst. Also doors, windows und others

                    Ich überlege noch, ob ich das nicht gruppiere (dann könnte ich vielleicht auch das 0_ wegnehmen):

                    openDoorsAndWindows
                       |- all
                          |- all
                          |- allCount
                          |- allOpen
                          |- allOpenCound
                          |- allUnknown
                          |- allUnknownCount
                       |- doors
                          |- doorsAll
                          |- doorsAllCount
                          |- doorsOpen
                          |- doorsOpenCound
                          |- doorsUnknown
                          |- doorsUnknownCount
                       |- others
                          |- othersAll
                          |- othersAllCount
                          |- othersOpen
                          |- othersOpenCound
                          |- othersUnknown
                          |- othersUnknownCount
                       |- windows
                          |- windowsAll
                          |- windowsAllCount
                          |- windowsOpen
                          |- windowsOpenCound
                          |- windowsUnknown
                          |- windowsUnknownCount
                       |- raw
                    

                    Viele Grüße
                    Christopher

                    JB1985J Offline
                    JB1985J Offline
                    JB1985
                    schrieb am zuletzt editiert von
                    #148

                    @holomekc finde ich super umgesetzt! :+1:

                    1 Antwort Letzte Antwort
                    0
                    • S Offline
                      S Offline
                      stenmic
                      schrieb am zuletzt editiert von
                      #149

                      In der Bosch App wird mir bei einem Thermostat angezeigt ich soll die Battereien wechseln.
                      Ist diese Info auch im Adapter hinterlegt? Ich kann nichts finden.

                      H 1 Antwort Letzte Antwort
                      0
                      • S stenmic

                        In der Bosch App wird mir bei einem Thermostat angezeigt ich soll die Battereien wechseln.
                        Ist diese Info auch im Adapter hinterlegt? Ich kann nichts finden.

                        H Offline
                        H Offline
                        holomekc
                        schrieb am zuletzt editiert von
                        #150

                        @stenmic
                        Hi. Beim Thermostat müsste BatteryLevel sein und dort dann "faults". Das ist eine Liste von Objekten. Bspw.:

                        { 
                            "type":"LOW_BATTERY",
                            "category":"WARNING"
                        }
                        

                        Ich weiß nicht genau welche Werte es alles gibt.

                        S 1 Antwort Letzte Antwort
                        0
                        • H Offline
                          H Offline
                          holomekc
                          schrieb am zuletzt editiert von
                          #151

                          Version 0.1.6 ist in GitHub:
                          https://github.com/holomekc/ioBroker.bshb

                          • Offene Türen / Fenster Feature hinzugefügt
                          1 Antwort Letzte Antwort
                          1
                          • H holomekc

                            @stenmic
                            Hi. Beim Thermostat müsste BatteryLevel sein und dort dann "faults". Das ist eine Liste von Objekten. Bspw.:

                            { 
                                "type":"LOW_BATTERY",
                                "category":"WARNING"
                            }
                            

                            Ich weiß nicht genau welche Werte es alles gibt.

                            S Offline
                            S Offline
                            stenmic
                            schrieb am zuletzt editiert von
                            #152

                            @holomekc
                            bei mir sieht es so aus

                            Image 002.jpg

                            Das Thermostat welches leer anzeigt ist in der Küche.

                            Wie kann ich [object Object] in einem Blockly oder in vis auswerten?
                            Eine Liste wird mir nicht angezeigt.
                            Gruß

                            H 1 Antwort Letzte Antwort
                            0
                            • S stenmic

                              @holomekc
                              bei mir sieht es so aus

                              Image 002.jpg

                              Das Thermostat welches leer anzeigt ist in der Küche.

                              Wie kann ich [object Object] in einem Blockly oder in vis auswerten?
                              Eine Liste wird mir nicht angezeigt.
                              Gruß

                              H Offline
                              H Offline
                              holomekc
                              schrieb am zuletzt editiert von holomekc
                              #153

                              @stenmic
                              So müsste das gehen. Die debug Ausgabe einfach mit dem ersetzen was du machen möchtest.

                              2a80cc9d-509c-4f08-a950-51e09b2585c0-image.png

                              Gibt es eine Art Export-Funktion für Blockly? Habe jetzt nur ein Bild angehängt.

                              Edit: Hier der Code. Danke @BigTom91

                              <xml xmlns="http://www.w3.org/1999/xhtml">
                                <variables>
                                  <variable type="" id="TC17y~Bap=Mh]2X9@+AU">i</variable>
                                  <variable type="" id="WOc#:AXA!]^aHBHvdO`F">value</variable>
                                </variables>
                                <block type="on_ext" id="~Fhy=aEjfMss)[[{26.$" x="-13" y="13">
                                  <mutation items="1"></mutation>
                                  <field name="CONDITION">ne</field>
                                  <field name="ACK_CONDITION"></field>
                                  <value name="OID0">
                                    <shadow type="field_oid" id="%C-WnuL/4k{pCBNjt+f0">
                                      <field name="oid">bshb.0.hdm:HomeMaticIP:3014F711A0000055385A3086.BatteryLevel.faults</field>
                                    </shadow>
                                  </value>
                                  <statement name="STATEMENT">
                                    <block type="controls_if" id="[{=tDm#$n?XHp{yw~Nsu">
                                      <mutation else="1"></mutation>
                                      <value name="IF0">
                                        <block type="logic_null" id="(kZ;%]NWf9O56DOe^WfE"></block>
                                      </value>
                                      <statement name="ELSE">
                                        <block type="controls_forEach" id="NX|GK?ic#Qwa$Wy;y7l}">
                                          <field name="VAR" id="TC17y~Bap=Mh]2X9@+AU" variabletype="">i</field>
                                          <value name="LIST">
                                            <block type="variables_get" id="LmNhutHPi.d6hO!dF5m?">
                                              <field name="VAR" id="WOc#:AXA!]^aHBHvdO`F" variabletype="">value</field>
                                            </block>
                                          </value>
                                          <statement name="DO">
                                            <block type="controls_if" id="{~Ib{bo=5%;Iz0ta*5,%">
                                              <value name="IF0">
                                                <block type="logic_compare" id="4V*MB6VJ]B)X.jSejFo[">
                                                  <field name="OP">EQ</field>
                                                  <value name="A">
                                                    <block type="get_attr" id="HC#*QCTh+o43iMbyb%e9">
                                                      <value name="PATH">
                                                        <shadow type="text" id="M_=3AWle0*%J;`w:EXOR">
                                                          <field name="TEXT">type</field>
                                                        </shadow>
                                                      </value>
                                                      <value name="OBJECT">
                                                        <block type="variables_get" id="0gO6k6n/Pd89s5hVaR1p">
                                                          <field name="VAR" id="TC17y~Bap=Mh]2X9@+AU" variabletype="">i</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <value name="B">
                                                    <block type="text" id=")i|.K_`dvpct!d;E3vO;">
                                                      <field name="TEXT">LOW_BATTERY</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <statement name="DO0">
                                                <block type="debug" id="At)^=VxGO%)7y8s8FMgZ">
                                                  <field name="Severity">log</field>
                                                  <value name="TEXT">
                                                    <shadow type="text" id="Y9*5a@)a4M=r,_(D(dKR">
                                                      <field name="TEXT">Mache was du möchtest</field>
                                                    </shadow>
                                                  </value>
                                                </block>
                                              </statement>
                                            </block>
                                          </statement>
                                        </block>
                                      </statement>
                                    </block>
                                  </statement>
                                </block>
                              </xml>
                              

                              Edit2: Ich bin mir nicht sicher, ob ich das richtig aufgebaut habe. Ist das erste mal das ich Blockly verwende. Aber ich hoffe die Idee ist klar. Mir ist unklar wie der Wert vom Objekt in die Variable value kommt und ob die "null" Prüfung überhaupt funktioniert. Sollte aber auch nicht vorkommen default ist immer eine leere Liste [].

                              B S 2 Antworten Letzte Antwort
                              0
                              • H holomekc

                                @stenmic
                                So müsste das gehen. Die debug Ausgabe einfach mit dem ersetzen was du machen möchtest.

                                2a80cc9d-509c-4f08-a950-51e09b2585c0-image.png

                                Gibt es eine Art Export-Funktion für Blockly? Habe jetzt nur ein Bild angehängt.

                                Edit: Hier der Code. Danke @BigTom91

                                <xml xmlns="http://www.w3.org/1999/xhtml">
                                  <variables>
                                    <variable type="" id="TC17y~Bap=Mh]2X9@+AU">i</variable>
                                    <variable type="" id="WOc#:AXA!]^aHBHvdO`F">value</variable>
                                  </variables>
                                  <block type="on_ext" id="~Fhy=aEjfMss)[[{26.$" x="-13" y="13">
                                    <mutation items="1"></mutation>
                                    <field name="CONDITION">ne</field>
                                    <field name="ACK_CONDITION"></field>
                                    <value name="OID0">
                                      <shadow type="field_oid" id="%C-WnuL/4k{pCBNjt+f0">
                                        <field name="oid">bshb.0.hdm:HomeMaticIP:3014F711A0000055385A3086.BatteryLevel.faults</field>
                                      </shadow>
                                    </value>
                                    <statement name="STATEMENT">
                                      <block type="controls_if" id="[{=tDm#$n?XHp{yw~Nsu">
                                        <mutation else="1"></mutation>
                                        <value name="IF0">
                                          <block type="logic_null" id="(kZ;%]NWf9O56DOe^WfE"></block>
                                        </value>
                                        <statement name="ELSE">
                                          <block type="controls_forEach" id="NX|GK?ic#Qwa$Wy;y7l}">
                                            <field name="VAR" id="TC17y~Bap=Mh]2X9@+AU" variabletype="">i</field>
                                            <value name="LIST">
                                              <block type="variables_get" id="LmNhutHPi.d6hO!dF5m?">
                                                <field name="VAR" id="WOc#:AXA!]^aHBHvdO`F" variabletype="">value</field>
                                              </block>
                                            </value>
                                            <statement name="DO">
                                              <block type="controls_if" id="{~Ib{bo=5%;Iz0ta*5,%">
                                                <value name="IF0">
                                                  <block type="logic_compare" id="4V*MB6VJ]B)X.jSejFo[">
                                                    <field name="OP">EQ</field>
                                                    <value name="A">
                                                      <block type="get_attr" id="HC#*QCTh+o43iMbyb%e9">
                                                        <value name="PATH">
                                                          <shadow type="text" id="M_=3AWle0*%J;`w:EXOR">
                                                            <field name="TEXT">type</field>
                                                          </shadow>
                                                        </value>
                                                        <value name="OBJECT">
                                                          <block type="variables_get" id="0gO6k6n/Pd89s5hVaR1p">
                                                            <field name="VAR" id="TC17y~Bap=Mh]2X9@+AU" variabletype="">i</field>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </value>
                                                    <value name="B">
                                                      <block type="text" id=")i|.K_`dvpct!d;E3vO;">
                                                        <field name="TEXT">LOW_BATTERY</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                                <statement name="DO0">
                                                  <block type="debug" id="At)^=VxGO%)7y8s8FMgZ">
                                                    <field name="Severity">log</field>
                                                    <value name="TEXT">
                                                      <shadow type="text" id="Y9*5a@)a4M=r,_(D(dKR">
                                                        <field name="TEXT">Mache was du möchtest</field>
                                                      </shadow>
                                                    </value>
                                                  </block>
                                                </statement>
                                              </block>
                                            </statement>
                                          </block>
                                        </statement>
                                      </block>
                                    </statement>
                                  </block>
                                </xml>
                                

                                Edit2: Ich bin mir nicht sicher, ob ich das richtig aufgebaut habe. Ist das erste mal das ich Blockly verwende. Aber ich hoffe die Idee ist klar. Mir ist unklar wie der Wert vom Objekt in die Variable value kommt und ob die "null" Prüfung überhaupt funktioniert. Sollte aber auch nicht vorkommen default ist immer eine leere Liste [].

                                B Offline
                                B Offline
                                BigTom91
                                schrieb am zuletzt editiert von
                                #154

                                @holomekc oben rechts das linke Symbol "Blöcke exportieren", dann kannst du den Code hier noch posten.

                                1 Antwort Letzte Antwort
                                0
                                • H holomekc

                                  @stenmic
                                  So müsste das gehen. Die debug Ausgabe einfach mit dem ersetzen was du machen möchtest.

                                  2a80cc9d-509c-4f08-a950-51e09b2585c0-image.png

                                  Gibt es eine Art Export-Funktion für Blockly? Habe jetzt nur ein Bild angehängt.

                                  Edit: Hier der Code. Danke @BigTom91

                                  <xml xmlns="http://www.w3.org/1999/xhtml">
                                    <variables>
                                      <variable type="" id="TC17y~Bap=Mh]2X9@+AU">i</variable>
                                      <variable type="" id="WOc#:AXA!]^aHBHvdO`F">value</variable>
                                    </variables>
                                    <block type="on_ext" id="~Fhy=aEjfMss)[[{26.$" x="-13" y="13">
                                      <mutation items="1"></mutation>
                                      <field name="CONDITION">ne</field>
                                      <field name="ACK_CONDITION"></field>
                                      <value name="OID0">
                                        <shadow type="field_oid" id="%C-WnuL/4k{pCBNjt+f0">
                                          <field name="oid">bshb.0.hdm:HomeMaticIP:3014F711A0000055385A3086.BatteryLevel.faults</field>
                                        </shadow>
                                      </value>
                                      <statement name="STATEMENT">
                                        <block type="controls_if" id="[{=tDm#$n?XHp{yw~Nsu">
                                          <mutation else="1"></mutation>
                                          <value name="IF0">
                                            <block type="logic_null" id="(kZ;%]NWf9O56DOe^WfE"></block>
                                          </value>
                                          <statement name="ELSE">
                                            <block type="controls_forEach" id="NX|GK?ic#Qwa$Wy;y7l}">
                                              <field name="VAR" id="TC17y~Bap=Mh]2X9@+AU" variabletype="">i</field>
                                              <value name="LIST">
                                                <block type="variables_get" id="LmNhutHPi.d6hO!dF5m?">
                                                  <field name="VAR" id="WOc#:AXA!]^aHBHvdO`F" variabletype="">value</field>
                                                </block>
                                              </value>
                                              <statement name="DO">
                                                <block type="controls_if" id="{~Ib{bo=5%;Iz0ta*5,%">
                                                  <value name="IF0">
                                                    <block type="logic_compare" id="4V*MB6VJ]B)X.jSejFo[">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="get_attr" id="HC#*QCTh+o43iMbyb%e9">
                                                          <value name="PATH">
                                                            <shadow type="text" id="M_=3AWle0*%J;`w:EXOR">
                                                              <field name="TEXT">type</field>
                                                            </shadow>
                                                          </value>
                                                          <value name="OBJECT">
                                                            <block type="variables_get" id="0gO6k6n/Pd89s5hVaR1p">
                                                              <field name="VAR" id="TC17y~Bap=Mh]2X9@+AU" variabletype="">i</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="text" id=")i|.K_`dvpct!d;E3vO;">
                                                          <field name="TEXT">LOW_BATTERY</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO0">
                                                    <block type="debug" id="At)^=VxGO%)7y8s8FMgZ">
                                                      <field name="Severity">log</field>
                                                      <value name="TEXT">
                                                        <shadow type="text" id="Y9*5a@)a4M=r,_(D(dKR">
                                                          <field name="TEXT">Mache was du möchtest</field>
                                                        </shadow>
                                                      </value>
                                                    </block>
                                                  </statement>
                                                </block>
                                              </statement>
                                            </block>
                                          </statement>
                                        </block>
                                      </statement>
                                    </block>
                                  </xml>
                                  

                                  Edit2: Ich bin mir nicht sicher, ob ich das richtig aufgebaut habe. Ist das erste mal das ich Blockly verwende. Aber ich hoffe die Idee ist klar. Mir ist unklar wie der Wert vom Objekt in die Variable value kommt und ob die "null" Prüfung überhaupt funktioniert. Sollte aber auch nicht vorkommen default ist immer eine leere Liste [].

                                  S Offline
                                  S Offline
                                  stenmic
                                  schrieb am zuletzt editiert von stenmic
                                  #155

                                  @holomekc
                                  danke für deinen Vorschlag, aber ich habe das jetzt so gelöst.

                                  Image 004.jpg

                                  Leider aktualisiert der Adapter den Status nicht automatisch nach dem Austausch der Batterien.
                                  Auch nach einer Stunde nicht. In der Bosch-App wird der Wechsel gleich bestätigt.

                                  Image 005.jpg

                                  Starte ich den Adapter neu, passt der Wert.

                                  Image 006.jpg

                                  Gibt es für diesen Datenpunkt ein zeitliches Aktualisierungsintervall?

                                  H 1 Antwort Letzte Antwort
                                  0
                                  • B Offline
                                    B Offline
                                    BigTom91
                                    schrieb am zuletzt editiert von
                                    #156

                                    Kann evtl. jemand in seine Glaskugel schauen und mir sagen, warum mir für den Adapter kein Update angezeigt wird?
                                    Bin noch auf 0.1.4 :(

                                    1 Antwort Letzte Antwort
                                    0
                                    • S stenmic

                                      @holomekc
                                      danke für deinen Vorschlag, aber ich habe das jetzt so gelöst.

                                      Image 004.jpg

                                      Leider aktualisiert der Adapter den Status nicht automatisch nach dem Austausch der Batterien.
                                      Auch nach einer Stunde nicht. In der Bosch-App wird der Wechsel gleich bestätigt.

                                      Image 005.jpg

                                      Starte ich den Adapter neu, passt der Wert.

                                      Image 006.jpg

                                      Gibt es für diesen Datenpunkt ein zeitliches Aktualisierungsintervall?

                                      H Offline
                                      H Offline
                                      holomekc
                                      schrieb am zuletzt editiert von
                                      #157

                                      @stenmic
                                      Hi. Nein es gibt eine Schnittstelle über die der Controller den Adapter informiert ohne das jeder Wert einzeln erneut abgerufen werden muss. Ich schaue mal, ob ich einen Fehler forcieren kann und welche Nachrichten verschickt werden. Vielleicht habe ich etwas übersehen und der Adapter versteht die Nachricht nicht.
                                      Falls du die alten Batterien noch hast würde es auch helfen, wenn du den Adapter auf debug stellst, dann die Batterien austauschst und mir die Logs schicken würdest.

                                      @BigTom91
                                      Hi. 0.1.5 und 0.1.6 sind bisher nur auf github. Ich muss das noch freigeben sozusagen. Ich schaue noch nach dem Problem oben und dann mache ich das asap.

                                      1 Antwort Letzte Antwort
                                      0
                                      • H Offline
                                        H Offline
                                        holomekc
                                        schrieb am zuletzt editiert von
                                        #158

                                        @stenmic
                                        Ich kann das mit leerer Batterie leider nicht simulieren. Ich habe die Batterien einfach rausgenommen und dann wieder eingesetzt. Die Fehlermeldung ist dann zwar nicht am Gerät selber, sondern am RoomClimateControl aber ich bin davon ausgegangen das dieses Verhalten übertragbar ist:

                                        Gerät nicht verfügbar. Hier stehen faults am Ende:

                                        {"path":"/devices/roomClimateControl_hz_2/services/RoomClimateControl","operations":["incrementSetpointTemperature","decrementSetpointTemperature"],"@type":"DeviceServiceData","id":"RoomClimateControl","state":{"schedule":{"profiles":[{"switchPoints":[{"startTimeMinutes":0,"value":..."supportsBoostMode":true},"deviceId":"roomClimateControl_hz_2",
                                        
                                        "faults":{"entries":[{"source":{"rootDeviceId":"64-da-a0-02-49-0d","deviceServiceId":"NONE","deviceId":"hdm:HomeMaticIP:3014F711A0000055385A4071"},"type":"DEVICE_UNAVAILABLE","category":"WARNING"}]}}
                                        

                                        Gerät wieder verfügbar. Hier gibt es keine faults am Ende:

                                        {"path":"/devices/roomClimateControl_hz_2/services/RoomClimateControl","operations":["incrementSetpointTemperature","decrementSetpointTemperature"],"@type":"DeviceServiceData","id":"RoomClimateControl","state":{"schedule":{"profiles":[{"switchPoints":[{"startTimeMinutes":0,"value":..."supportsBoostMode":true},"deviceId":"roomClimateControl_hz_2"}
                                        

                                        Der Adapter schaut bei jedem dieser Updates erst einmal nach den tatsächlichen Daten. Also hier bspw. ob sich Werte wie supportsBoostMode verändert haben und dann schaut er noch, ob faults existiert mit Einträgen. Wenn nicht werden die faults auf eine Leere Liste gesetzt.

                                        S 1 Antwort Letzte Antwort
                                        0
                                        • H holomekc

                                          @stenmic
                                          Ich kann das mit leerer Batterie leider nicht simulieren. Ich habe die Batterien einfach rausgenommen und dann wieder eingesetzt. Die Fehlermeldung ist dann zwar nicht am Gerät selber, sondern am RoomClimateControl aber ich bin davon ausgegangen das dieses Verhalten übertragbar ist:

                                          Gerät nicht verfügbar. Hier stehen faults am Ende:

                                          {"path":"/devices/roomClimateControl_hz_2/services/RoomClimateControl","operations":["incrementSetpointTemperature","decrementSetpointTemperature"],"@type":"DeviceServiceData","id":"RoomClimateControl","state":{"schedule":{"profiles":[{"switchPoints":[{"startTimeMinutes":0,"value":..."supportsBoostMode":true},"deviceId":"roomClimateControl_hz_2",
                                          
                                          "faults":{"entries":[{"source":{"rootDeviceId":"64-da-a0-02-49-0d","deviceServiceId":"NONE","deviceId":"hdm:HomeMaticIP:3014F711A0000055385A4071"},"type":"DEVICE_UNAVAILABLE","category":"WARNING"}]}}
                                          

                                          Gerät wieder verfügbar. Hier gibt es keine faults am Ende:

                                          {"path":"/devices/roomClimateControl_hz_2/services/RoomClimateControl","operations":["incrementSetpointTemperature","decrementSetpointTemperature"],"@type":"DeviceServiceData","id":"RoomClimateControl","state":{"schedule":{"profiles":[{"switchPoints":[{"startTimeMinutes":0,"value":..."supportsBoostMode":true},"deviceId":"roomClimateControl_hz_2"}
                                          

                                          Der Adapter schaut bei jedem dieser Updates erst einmal nach den tatsächlichen Daten. Also hier bspw. ob sich Werte wie supportsBoostMode verändert haben und dann schaut er noch, ob faults existiert mit Einträgen. Wenn nicht werden die faults auf eine Leere Liste gesetzt.

                                          S Offline
                                          S Offline
                                          stenmic
                                          schrieb am zuletzt editiert von stenmic
                                          #159

                                          @holomekc
                                          hier der log für leere Batterien :

                                          {"path":"/devices/hdm:HomeMaticIP:3014F711A0000056D85A7FAE/services/BatteryLevel","@type":"DeviceServiceData","id":"BatteryLevel","deviceId":"hdm:HomeMaticIP:3014F711A0000056D85A7FAE","faults":{"entries":[{"type":"LOW_BATTERY","category":"WARNING"}]}}
                                          

                                          volle Batterien:

                                          {"path":"/devices/hdm:HomeMaticIP:3014F711A0000056D85A7FAE/services/BatteryLevel","@type":"DeviceServiceData","id":"BatteryLevel","deviceId":"hdm:HomeMaticIP:3014F711A0000056D85A7FAE"}
                                          

                                          das habe ich auch noch gefunden:

                                          {"sourceId":"hdm:HomeMaticIP:3014F711A0000056D85A7FAE","sourceType":"DEVICE","@type":"message","flags":["STATUS","STICKY"],"messageCode":{"name":"BATTERY_LOW","category":"INFO"},"arguments":{"deviceModel":"TRV"},"id":"a0c7a3bb-28b2-4598-b26e-8e7def91f912","timestamp":1585996409174}
                                          

                                          Diesmal hat sich der Datenpunkt "BatteryLevel.faults" weder bei leerer noch bei voller Batterie aktualisiert.

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          859

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          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