Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test ViessmannAPI v2.0.0

NEWS

  • Wartung am 15.11. – Forum ab 22:00 Uhr nicht erreichbar
    BluefoxB
    Bluefox
    12
    2
    251

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

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

Test ViessmannAPI v2.0.0

Test ViessmannAPI v2.0.0

Scheduled Pinned Locked Moved Tester
802 Posts 127 Posters 279.6k Views 124 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J juggi1962

    @ilovegym Hmmmmm, ja hab ich alles schon versucht

    So jetzt geht es wieder, Verbindung steht.
    Hab im Developer Portal den Client gelöscht und neu erstellt und auch noch das Passwort zurückgesetzt.
    Im Adapter alles neu eingegeben und dann war die Verbindung wieder grün und die Daten kamen auch wieder an.
    Warum auch immer das passiert ist, dass nichts mehr ging ist mir nicht klar.

    Schöne Feiertage Gruß Jürgen.

    ? Offline
    ? Offline
    A Former User
    wrote on last edited by
    #677

    @juggi1962

    Vor ein paar Monaten hatte ich das auch mal, konnte im dev Portal aber nichts löschen, der Viessmann Support half innerhalb 24 h, die mussten was zurück setzen, seitdem keine Probleme mehr…

    1 Reply Last reply
    0
    • J juggi1962

      @ilovegym Hmmmmm, ja hab ich alles schon versucht

      So jetzt geht es wieder, Verbindung steht.
      Hab im Developer Portal den Client gelöscht und neu erstellt und auch noch das Passwort zurückgesetzt.
      Im Adapter alles neu eingegeben und dann war die Verbindung wieder grün und die Daten kamen auch wieder an.
      Warum auch immer das passiert ist, dass nichts mehr ging ist mir nicht klar.

      Schöne Feiertage Gruß Jürgen.

      M Online
      M Online
      mading
      wrote on last edited by
      #678

      @juggi1962 sagte in Test ViessmannAPI v2.0.0:

      @ilovegym Hmmmmm, ja hab ich alles schon versucht

      So jetzt geht es wieder, Verbindung steht.
      Hab im Developer Portal den Client gelöscht und neu erstellt und auch noch das Passwort zurückgesetzt.
      Im Adapter alles neu eingegeben und dann war die Verbindung wieder grün und die Daten kamen auch wieder an.
      Warum auch immer das passiert ist, dass nichts mehr ging ist mir nicht klar.

      Schöne Feiertage Gruß Jürgen.

      Danke, hatte das gleiche Problem, nun gehts auch wieder

      1 Reply Last reply
      0
      • M mading

        @joau84 sagte in Test ViessmannAPI v2.0.0:

        The parameter newSchedule="{"mon":[],"tue":[],"wed":[],"thu":[],"fri":[],"sat":[],"sun":[]}" does not meet the constraints {"type":"Schedule","modes":["top","normal","temp-2"],"maxEntries":8,"resolution":10,"defaultMode":"off","overlapAllowed":true}: The parameter should be an object."}}

        Hi,

        die Fehlermeldung ist so nett programmiert, dass dir schon gesagt wird, was nicht stimmt:

        The parameter newSchedule="{"mon":[],"tue":[],"wed":[],"thu":[],"fri":[],"sat":[],"sun":[]}" does not meet the constraints {"type":"Schedule","modes":["top","normal","temp-2"],"maxEntries":8,"resolution":10,"defaultMode":"off","overlapAllowed":true}: The parameter should be an object."}}

        GGf. bei Viessmann über das Developer Portal direkt nachfragen

        M Offline
        M Offline
        m4rgott
        wrote on last edited by m4rgott
        #679

        @mading

        Hallo zusammen,

        Gab es hierzu inzwischen eine Lösung?

        Ich versuche gerade ein Blockly zu schreiben, das die Zirkulationspumpe steuert.
        Bei Anwesenheit "an", bei Abwesenheit "aus"

        Die Anwesenheit hole ich mir über ein Script, dass auch anderweitig schon funktioniert.

        Blockly sieht wie folgt aus:

        <xml xmlns="https://developers.google.com/blockly/xml">
          <block type="on" id="Ew~n++NGs7J:Ar#*Uqbr" x="463" y="188">
            <field name="OID">0_userdata.0.JemandZuHause</field>
            <field name="CONDITION">ne</field>
            <field name="ACK_CONDITION"></field>
            <statement name="STATEMENT">
              <block type="controls_if" id="yPYg)lUZJYm0;W=3KFRz">
                <mutation else="1"></mutation>
                <value name="IF0">
                  <block type="logic_compare" id="6:2aE-_cRkp|wIbHx)VK">
                    <field name="OP">GTE</field>
                    <value name="A">
                      <block type="on_source" id="zXsr1Gk{1GzZnI)[keau">
                        <field name="ATTR">id</field>
                      </block>
                    </value>
                    <value name="B">
                      <block type="on_source" id="S^sj=Iwb{i;*sC=Y2sCu">
                        <field name="ATTR">oldState.val</field>
                      </block>
                    </value>
                  </block>
                </value>
                <statement name="DO0">
                  <block type="debug" id="{uPj$*.M*$xKd%,gfu%7">
                    <field name="Severity">log</field>
                    <value name="TEXT">
                      <shadow type="text" id="LCkx7hMwuj0FZi{.YkK1">
                        <field name="TEXT">Schreibe: Warmwasserzirkulation Anwesenheit</field>
                      </shadow>
                    </value>
                    <next>
                      <block type="control" id="T^{diz_%%+!Y)#_R{EDZ">
                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                        <field name="OID">viessmannapi.0.xxx.0.features.heating.dhw.pumps.circulation.schedule.commands.setSchedule.setValue</field>
                        <field name="WITH_DELAY">FALSE</field>
                        <value name="VALUE">
                          <block type="text" id="8X)GpX6lxkx;GB4|Wrga">
                            <field name="TEXT">{"mon":[{"start":"05:20","end":"22:00","mode":"on","position":0}],"tue":[{"start":"05:20","end":"22:00","mode":"on","position":0}],"wed":[{"start":"05:20","end":"22:00","mode":"on","position":0}],"thu":[{"start":"05:20","end":"22:00","mode":"on","position":0}],"fri":[{"start":"05:20","end":"22:00","mode":"on","position":0}],"sat":[{"start":"06:00","end":"22:00","mode":"on","position":0}],"sun":[{"start":"06:00","end":"22:00","mode":"on","position":0}]}</field>
                          </block>
                        </value>
                      </block>
                    </next>
                  </block>
                </statement>
                <statement name="ELSE">
                  <block type="debug" id="8LpH6YH)D5CyLU8aT0#u">
                    <field name="Severity">log</field>
                    <value name="TEXT">
                      <shadow type="text" id="4ZjNR|L8nlnai^{Vo2Jw">
                        <field name="TEXT">Schreibe: Warmwasserzirkulation Abwesenheit</field>
                      </shadow>
                    </value>
                    <next>
                      <block type="control" id="WE|Z9`d5uS{e{bS+[ldG">
                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                        <field name="OID">viessmannapi.0.xxx.0.features.heating.dhw.pumps.circulation.schedule.commands.setSchedule.setValue</field>
                        <field name="WITH_DELAY">FALSE</field>
                        <value name="VALUE">
                          <block type="text" id="e+TKy0Y6,3~2$=`4pCws">
                            <field name="TEXT">{"mon":[{"start":"14:00","end":"15:00","mode":"on","position":0}],"tue":[{"start":"14:00","end":"15:00","mode":"on","position":0}],"wed":[{"start":"14:00","end":"15:00","mode":"on","position":0}],"thu":[{"start":"14:00","end":"15:00","mode":"on","position":0}],"fri":[{"start":"14:00","end":"15:00","mode":"on","position":0}],"sat":[{"start":"14:00","end":"15:00","mode":"on","position":0}],"sun":[{"start":"14:00","end":"15:00","mode":"on","position":0}]}</field>
                          </block>
                        </value>
                      </block>
                    </next>
                  </block>
                </statement>
              </block>
            </statement>
          </block>
        </xml>
        

        Ergebnis ist die Fehlermeldung, die es wohl 2022 auch schon gab:

        Log-Auszug:

        2024-01-04 11:22:27.478 - info: javascript.0 (30162) script.js.Heizung.Warmwasser_Anwesenheit: Schreibe: Warmwasserzirkulation Abwesenheit
        2024-01-04 11:22:27.819 - error: viessmannapi.0 (31598) AxiosError: Request failed with status code 400
        2024-01-04 11:22:27.826 - error: viessmannapi.0 (31598) {"viErrorId":"|00-d0c1e5306c3c4d7097495e37a7e10403-1462f1a0dd4446f8-01.102801629_","statusCode":400,"errorType":"DEVICE_COMMUNICATION_ERROR","message":"","extendedPayload":{"httpStatusCode":"BadRequest","code":"400","reason":"VALIDATION_ERROR","details":"The parameter newSchedule=\"{\\\"mon\\\":[{\\\"start\\\":\\\"14:00\\\",\\\"end\\\":\\\"15:00\\\",\\\"mode\\\":\\\"on\\\",\\\"position\\\":0}],\\\"tue\\\":[{\\\"start\\\":\\\"14:00\\\",\\\"end\\\":\\\"15:00\\\",\\\"mode\\\":\\\"on\\\",\\\"position\\\":0}],\\\"wed\\\":[{\\\"start\\\":\\\"14:00\\\",\\\"end\\\":\\\"15:00\\\",\\\"mode\\\":\\\"on\\\",\\\"position\\\":0}],\\\"thu\\\":[{\\\"start\\\":\\\"14:00\\\",\\\"end\\\":\\\"15:00\\\",\\\"mode\\\":\\\"on\\\",\\\"position\\\":0}],\\\"fri\\\":[{\\\"start\\\":\\\"14:00\\\",\\\"end\\\":\\\"15:00\\\",\\\"mode\\\":\\\"on\\\",\\\"position\\\":0}],\\\"sat\\\":[{\\\"start\\\":\\\"14:00\\\",\\\"end\\\":\\\"15:00\\\",\\\"mode\\\":\\\"on\\\",\\\"position\\\":0}],\\\"sun\\\":[{\\\"start\\\":\\\"14:00\\\",\\\"end\\\":\\\"15:00\\\",\\\"mode\\\":\\\"on\\\",\\\"position\\\":0}]}\" does not meet the constraints {\"type\":\"Schedule\",\"modes\":[\"5/25-cycles\",\"5/10-cycles\",\"on\"],\"maxEntries\":8,\"resolution\":10,\"defaultMode\":\"off\",\"overlapAllowed\":true}: The parameter should be an object."}}
        2024-01-04 11:22:27.827 - error: viessmannapi.0 (31598) URL: https://api.viessmann.com/iot/v1/features/installations/xxx/gateways/xxx/devices/0/features/heating.dhw.pumps.circulation.schedule/commands/setSchedule
        2024-01-04 11:22:27.828 - error: viessmannapi.0 (31598) Data: {"newSchedule":"{\"mon\":[{\"start\":\"14:00\",\"end\":\"15:00\",\"mode\":\"on\",\"position\":0}],\"tue\":[{\"start\":\"14:00\",\"end\":\"15:00\",\"mode\":\"on\",\"position\":0}],\"wed\":[{\"start\":\"14:00\",\"end\":\"15:00\",\"mode\":\"on\",\"position\":0}],\"thu\":[{\"start\":\"14:00\",\"end\":\"15:00\",\"mode\":\"on\",\"position\":0}],\"fri\":[{\"start\":\"14:00\",\"end\":\"15:00\",\"mode\":\"on\",\"position\":0}],\"sat\":[{\"start\":\"14:00\",\"end\":\"15:00\",\"mode\":\"on\",\"position\":0}],\"sun\":[{\"start\":\"14:00\",\"end\":\"15:00\",\"mode\":\"on\",\"position\":0}]}"}
        

        Ich bin nun bei meiner Recherche häufiger darüber gestolpert, dass man es bei Postman testen soll. Komme damit aber auch nicht richtig klar.

        Wäre super einen Hinweis von Euch zu bekommen.

        Danke vorab.

        M 1 Reply Last reply
        0
        • M m4rgott

          @mading

          Hallo zusammen,

          Gab es hierzu inzwischen eine Lösung?

          Ich versuche gerade ein Blockly zu schreiben, das die Zirkulationspumpe steuert.
          Bei Anwesenheit "an", bei Abwesenheit "aus"

          Die Anwesenheit hole ich mir über ein Script, dass auch anderweitig schon funktioniert.

          Blockly sieht wie folgt aus:

          <xml xmlns="https://developers.google.com/blockly/xml">
            <block type="on" id="Ew~n++NGs7J:Ar#*Uqbr" x="463" y="188">
              <field name="OID">0_userdata.0.JemandZuHause</field>
              <field name="CONDITION">ne</field>
              <field name="ACK_CONDITION"></field>
              <statement name="STATEMENT">
                <block type="controls_if" id="yPYg)lUZJYm0;W=3KFRz">
                  <mutation else="1"></mutation>
                  <value name="IF0">
                    <block type="logic_compare" id="6:2aE-_cRkp|wIbHx)VK">
                      <field name="OP">GTE</field>
                      <value name="A">
                        <block type="on_source" id="zXsr1Gk{1GzZnI)[keau">
                          <field name="ATTR">id</field>
                        </block>
                      </value>
                      <value name="B">
                        <block type="on_source" id="S^sj=Iwb{i;*sC=Y2sCu">
                          <field name="ATTR">oldState.val</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <statement name="DO0">
                    <block type="debug" id="{uPj$*.M*$xKd%,gfu%7">
                      <field name="Severity">log</field>
                      <value name="TEXT">
                        <shadow type="text" id="LCkx7hMwuj0FZi{.YkK1">
                          <field name="TEXT">Schreibe: Warmwasserzirkulation Anwesenheit</field>
                        </shadow>
                      </value>
                      <next>
                        <block type="control" id="T^{diz_%%+!Y)#_R{EDZ">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                          <field name="OID">viessmannapi.0.xxx.0.features.heating.dhw.pumps.circulation.schedule.commands.setSchedule.setValue</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="text" id="8X)GpX6lxkx;GB4|Wrga">
                              <field name="TEXT">{"mon":[{"start":"05:20","end":"22:00","mode":"on","position":0}],"tue":[{"start":"05:20","end":"22:00","mode":"on","position":0}],"wed":[{"start":"05:20","end":"22:00","mode":"on","position":0}],"thu":[{"start":"05:20","end":"22:00","mode":"on","position":0}],"fri":[{"start":"05:20","end":"22:00","mode":"on","position":0}],"sat":[{"start":"06:00","end":"22:00","mode":"on","position":0}],"sun":[{"start":"06:00","end":"22:00","mode":"on","position":0}]}</field>
                            </block>
                          </value>
                        </block>
                      </next>
                    </block>
                  </statement>
                  <statement name="ELSE">
                    <block type="debug" id="8LpH6YH)D5CyLU8aT0#u">
                      <field name="Severity">log</field>
                      <value name="TEXT">
                        <shadow type="text" id="4ZjNR|L8nlnai^{Vo2Jw">
                          <field name="TEXT">Schreibe: Warmwasserzirkulation Abwesenheit</field>
                        </shadow>
                      </value>
                      <next>
                        <block type="control" id="WE|Z9`d5uS{e{bS+[ldG">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                          <field name="OID">viessmannapi.0.xxx.0.features.heating.dhw.pumps.circulation.schedule.commands.setSchedule.setValue</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="text" id="e+TKy0Y6,3~2$=`4pCws">
                              <field name="TEXT">{"mon":[{"start":"14:00","end":"15:00","mode":"on","position":0}],"tue":[{"start":"14:00","end":"15:00","mode":"on","position":0}],"wed":[{"start":"14:00","end":"15:00","mode":"on","position":0}],"thu":[{"start":"14:00","end":"15:00","mode":"on","position":0}],"fri":[{"start":"14:00","end":"15:00","mode":"on","position":0}],"sat":[{"start":"14:00","end":"15:00","mode":"on","position":0}],"sun":[{"start":"14:00","end":"15:00","mode":"on","position":0}]}</field>
                            </block>
                          </value>
                        </block>
                      </next>
                    </block>
                  </statement>
                </block>
              </statement>
            </block>
          </xml>
          

          Ergebnis ist die Fehlermeldung, die es wohl 2022 auch schon gab:

          Log-Auszug:

          2024-01-04 11:22:27.478 - info: javascript.0 (30162) script.js.Heizung.Warmwasser_Anwesenheit: Schreibe: Warmwasserzirkulation Abwesenheit
          2024-01-04 11:22:27.819 - error: viessmannapi.0 (31598) AxiosError: Request failed with status code 400
          2024-01-04 11:22:27.826 - error: viessmannapi.0 (31598) {"viErrorId":"|00-d0c1e5306c3c4d7097495e37a7e10403-1462f1a0dd4446f8-01.102801629_","statusCode":400,"errorType":"DEVICE_COMMUNICATION_ERROR","message":"","extendedPayload":{"httpStatusCode":"BadRequest","code":"400","reason":"VALIDATION_ERROR","details":"The parameter newSchedule=\"{\\\"mon\\\":[{\\\"start\\\":\\\"14:00\\\",\\\"end\\\":\\\"15:00\\\",\\\"mode\\\":\\\"on\\\",\\\"position\\\":0}],\\\"tue\\\":[{\\\"start\\\":\\\"14:00\\\",\\\"end\\\":\\\"15:00\\\",\\\"mode\\\":\\\"on\\\",\\\"position\\\":0}],\\\"wed\\\":[{\\\"start\\\":\\\"14:00\\\",\\\"end\\\":\\\"15:00\\\",\\\"mode\\\":\\\"on\\\",\\\"position\\\":0}],\\\"thu\\\":[{\\\"start\\\":\\\"14:00\\\",\\\"end\\\":\\\"15:00\\\",\\\"mode\\\":\\\"on\\\",\\\"position\\\":0}],\\\"fri\\\":[{\\\"start\\\":\\\"14:00\\\",\\\"end\\\":\\\"15:00\\\",\\\"mode\\\":\\\"on\\\",\\\"position\\\":0}],\\\"sat\\\":[{\\\"start\\\":\\\"14:00\\\",\\\"end\\\":\\\"15:00\\\",\\\"mode\\\":\\\"on\\\",\\\"position\\\":0}],\\\"sun\\\":[{\\\"start\\\":\\\"14:00\\\",\\\"end\\\":\\\"15:00\\\",\\\"mode\\\":\\\"on\\\",\\\"position\\\":0}]}\" does not meet the constraints {\"type\":\"Schedule\",\"modes\":[\"5/25-cycles\",\"5/10-cycles\",\"on\"],\"maxEntries\":8,\"resolution\":10,\"defaultMode\":\"off\",\"overlapAllowed\":true}: The parameter should be an object."}}
          2024-01-04 11:22:27.827 - error: viessmannapi.0 (31598) URL: https://api.viessmann.com/iot/v1/features/installations/xxx/gateways/xxx/devices/0/features/heating.dhw.pumps.circulation.schedule/commands/setSchedule
          2024-01-04 11:22:27.828 - error: viessmannapi.0 (31598) Data: {"newSchedule":"{\"mon\":[{\"start\":\"14:00\",\"end\":\"15:00\",\"mode\":\"on\",\"position\":0}],\"tue\":[{\"start\":\"14:00\",\"end\":\"15:00\",\"mode\":\"on\",\"position\":0}],\"wed\":[{\"start\":\"14:00\",\"end\":\"15:00\",\"mode\":\"on\",\"position\":0}],\"thu\":[{\"start\":\"14:00\",\"end\":\"15:00\",\"mode\":\"on\",\"position\":0}],\"fri\":[{\"start\":\"14:00\",\"end\":\"15:00\",\"mode\":\"on\",\"position\":0}],\"sat\":[{\"start\":\"14:00\",\"end\":\"15:00\",\"mode\":\"on\",\"position\":0}],\"sun\":[{\"start\":\"14:00\",\"end\":\"15:00\",\"mode\":\"on\",\"position\":0}]}"}
          

          Ich bin nun bei meiner Recherche häufiger darüber gestolpert, dass man es bei Postman testen soll. Komme damit aber auch nicht richtig klar.

          Wäre super einen Hinweis von Euch zu bekommen.

          Danke vorab.

          M Offline
          M Offline
          m4rgott
          wrote on last edited by
          #680

          Ich habe die Lösung schon gefunden.
          Ein Konvertierungsblock "JSON nach Objekt" vor den zu schreibenden Wert hat geholfen.

          R B 2 Replies Last reply
          0
          • M m4rgott

            Ich habe die Lösung schon gefunden.
            Ein Konvertierungsblock "JSON nach Objekt" vor den zu schreibenden Wert hat geholfen.

            R Offline
            R Offline
            Ronniboy
            wrote on last edited by
            #681

            @m4rgott
            Seit ca 6 Monate visualisiere ich meine Wp mit IOBROKER / GRAFANA.
            Da komme ich sehr gut mit klar.
            Die nächste Herausforderung ist Sollwerte verändern.
            Gibt es eine Doku oder Beschreibung wie ich in Blockly dieses umsetzen kann.

            M 1 Reply Last reply
            0
            • R Ronniboy

              @m4rgott
              Seit ca 6 Monate visualisiere ich meine Wp mit IOBROKER / GRAFANA.
              Da komme ich sehr gut mit klar.
              Die nächste Herausforderung ist Sollwerte verändern.
              Gibt es eine Doku oder Beschreibung wie ich in Blockly dieses umsetzen kann.

              M Offline
              M Offline
              m4rgott
              wrote on last edited by m4rgott
              #682

              @ronniboy
              Hi,

              ich habe mich mit trial and error rangegeben.

              Wenn Du Dich ja schon seit 6 Monaten mit dem Adapter beschäftigst, findest Du Dich ja sicher bei der Menge an Datenpunkten schon besser zurecht als ich.

              Bei mir habe ich jetzt 2 Dinge "eingebaut".

              1. Wenn die PV-Anlage mehr als 1,5 kW (erster Testwert) Überschuss hat wird die Solltemperatur vom Brauchwasser von 50 auf 55 erhöht.

              4fd2879b-0c0a-4888-bff0-857b231d72cf-image.png

              <xml xmlns="https://developers.google.com/blockly/xml">
                <variables>
                  <variable id="@^uFj]vII6w4tzOxrOUD">Schwellenwert</variable>
                </variables>
                <block type="comment" id="Z*Yc0h-K=sxJ1l5LAmp|" x="213" y="-63">
                  <field name="COMMENT">Prüfung und Anpassung</field>
                  <next>
                    <block type="schedule" id="%7%jU|8(d~tTq`yV7f8C">
                      <field name="SCHEDULE">*/5 * * * *</field>
                      <statement name="STATEMENT">
                        <block type="controls_if" id="LPs,_CHiri[M]4E,Dsm3">
                          <mutation else="1"></mutation>
                          <value name="IF0">
                            <block type="logic_compare" id="L$ZN8QYJtzUxmxv`MLMp">
                              <field name="OP">LT</field>
                              <value name="A">
                                <block type="get_value" id="!{OX~MRns0?.=Kj}w0{^">
                                  <field name="ATTR">val</field>
                                  <field name="OID">0_userdata.0.Energie.Zwischenzaehler_Durchschnitt_5Min</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="variables_get" id="8*5PJ9nvUi+rJFr)8Kq?">
                                  <field name="VAR" id="@^uFj]vII6w4tzOxrOUD">Schwellenwert</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO0">
                            <block type="control" id="D8I#Fdqrd/]@oe0=a8Yd">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                              <field name="OID">viessmannapi.0.xxx.0.features.heating.dhw.temperature.main.commands.setTargetTemperature.setValue</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE">
                                <block type="math_number" id="Dny{rz~_UmX``x5PB,sr">
                                  <field name="NUM">55</field>
                                </block>
                              </value>
                            </block>
                          </statement>
                          <statement name="ELSE">
                            <block type="control" id="c0={noL%jo3gdM3I.?h*">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                              <field name="OID">viessmannapi.0.xxx.0.features.heating.dhw.temperature.main.commands.setTargetTemperature.setValue</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE">
                                <block type="math_number" id="P6JRV:6/J$dR|K=p)wnf">
                                  <field name="NUM">50</field>
                                </block>
                              </value>
                            </block>
                          </statement>
                        </block>
                      </statement>
                    </block>
                  </next>
                </block>
                <block type="variables_set" id="6:48TXub#XfY=XM;vTb~" x="313" y="-37">
                  <field name="VAR" id="@^uFj]vII6w4tzOxrOUD">Schwellenwert</field>
                  <value name="VALUE">
                    <block type="math_number" id="AD%gIlUA{{g_hO|c?f~i">
                      <field name="NUM">-1500</field>
                    </block>
                  </value>
                </block>
                <block type="comment" id="N.Lev/.WZsjuGf;=g~5L" x="213" y="212">
                  <field name="COMMENT">debung und Telegram bei Änderung</field>
                  <next>
                    <block type="on" id="bwZ;dSkz99*[vV:NaK?]">
                      <field name="OID">viessmannapi.0.xxx.0.features.heating.dhw.temperature.main.properties.value.value</field>
                      <field name="CONDITION">ne</field>
                      <field name="ACK_CONDITION"></field>
                      <statement name="STATEMENT">
                        <block type="debug" id=",Qb}*i9TtUjMOiU|)ZaI">
                          <field name="Severity">log</field>
                          <value name="TEXT">
                            <shadow type="text" id="f_0b[Y)+yTiCdKy3Z?s~">
                              <field name="TEXT">test</field>
                            </shadow>
                            <block type="text_join" id="0jHsnZ,OVL6)h$*48ld8">
                              <mutation items="6"></mutation>
                              <value name="ADD0">
                                <block type="text" id="o=Jg2a7+k)XHd?c7e0q0">
                                  <field name="TEXT">PV-Überschuss =</field>
                                </block>
                              </value>
                              <value name="ADD1">
                                <block type="math_arithmetic" id="1Ej;XL61*|mX2LoJ##0s">
                                  <field name="OP">MULTIPLY</field>
                                  <value name="A">
                                    <shadow type="math_number" id=",J;UN`hq{;Cr5OcSL*|-">
                                      <field name="NUM">1</field>
                                    </shadow>
                                    <block type="get_value" id="!Ix|JcmE8E^hW71Kc6T=">
                                      <field name="ATTR">val</field>
                                      <field name="OID">0_userdata.0.Energie.Zwischenzaehler_Durchschnitt_5Min</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <shadow type="math_number" id="{HiC*5qx;=5Y}9-@n[ts">
                                      <field name="NUM">-1</field>
                                    </shadow>
                                  </value>
                                </block>
                              </value>
                              <value name="ADD2">
                                <block type="text" id="exRvdoWnJI?J3,Jc$8hI">
                                  <field name="TEXT">. Wassertemperatur geändert auf: </field>
                                </block>
                              </value>
                              <value name="ADD3">
                                <block type="get_value_var" id="]Z^d)y5~RU5GW#S0[t[N">
                                  <field name="ATTR">val</field>
                                  <value name="OID">
                                    <shadow type="field_oid" id="i,tsb_mOhc;YxKP:p$4F">
                                      <field name="oid">Object ID</field>
                                    </shadow>
                                    <block type="on_source" id="P]RHOe_Km2r._4mF6T~c">
                                      <field name="ATTR">id</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </statement>
                    </block>
                  </next>
                </block>
              </xml>
              <xml xmlns="https://developers.google.com/blockly/xml">
                <variables>
                  <variable id="@^uFj]vII6w4tzOxrOUD">Schwellenwert</variable>
                </variables>
                <block type="comment" id="Z*Yc0h-K=sxJ1l5LAmp|" x="213" y="-63">
                  <field name="COMMENT">Prüfung und Anpassung</field>
                  <next>
                    <block type="schedule" id="%7%jU|8(d~tTq`yV7f8C">
                      <field name="SCHEDULE">*/5 * * * *</field>
                      <statement name="STATEMENT">
                        <block type="controls_if" id="LPs,_CHiri[M]4E,Dsm3">
                          <mutation else="1"></mutation>
                          <value name="IF0">
                            <block type="logic_compare" id="L$ZN8QYJtzUxmxv`MLMp">
                              <field name="OP">LT</field>
                              <value name="A">
                                <block type="get_value" id="!{OX~MRns0?.=Kj}w0{^">
                                  <field name="ATTR">val</field>
                                  <field name="OID">0_userdata.0.Energie.Zwischenzaehler_Durchschnitt_5Min</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="variables_get" id="8*5PJ9nvUi+rJFr)8Kq?">
                                  <field name="VAR" id="@^uFj]vII6w4tzOxrOUD">Schwellenwert</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO0">
                            <block type="control" id="D8I#Fdqrd/]@oe0=a8Yd">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                              <field name="OID">viessmannapi.0.xxx.0.features.heating.dhw.temperature.main.commands.setTargetTemperature.setValue</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE">
                                <block type="math_number" id="Dny{rz~_UmX``x5PB,sr">
                                  <field name="NUM">55</field>
                                </block>
                              </value>
                            </block>
                          </statement>
                          <statement name="ELSE">
                            <block type="control" id="c0={noL%jo3gdM3I.?h*">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                              <field name="OID">viessmannapi.0.xxx.0.features.heating.dhw.temperature.main.commands.setTargetTemperature.setValue</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE">
                                <block type="math_number" id="P6JRV:6/J$dR|K=p)wnf">
                                  <field name="NUM">50</field>
                                </block>
                              </value>
                            </block>
                          </statement>
                        </block>
                      </statement>
                    </block>
                  </next>
                </block>
                <block type="variables_set" id="6:48TXub#XfY=XM;vTb~" x="313" y="-37">
                  <field name="VAR" id="@^uFj]vII6w4tzOxrOUD">Schwellenwert</field>
                  <value name="VALUE">
                    <block type="math_number" id="AD%gIlUA{{g_hO|c?f~i">
                      <field name="NUM">-1500</field>
                    </block>
                  </value>
                </block>
                <block type="comment" id="N.Lev/.WZsjuGf;=g~5L" x="213" y="212">
                  <field name="COMMENT">debung und Telegram bei Änderung</field>
                  <next>
                    <block type="on" id="bwZ;dSkz99*[vV:NaK?]">
                      <field name="OID">viessmannapi.0.xxx.0.features.heating.dhw.temperature.main.properties.value.value</field>
                      <field name="CONDITION">ne</field>
                      <field name="ACK_CONDITION"></field>
                      <statement name="STATEMENT">
                        <block type="debug" id=",Qb}*i9TtUjMOiU|)ZaI">
                          <field name="Severity">log</field>
                          <value name="TEXT">
                            <shadow type="text" id="f_0b[Y)+yTiCdKy3Z?s~">
                              <field name="TEXT">test</field>
                            </shadow>
                            <block type="text_join" id="0jHsnZ,OVL6)h$*48ld8">
                              <mutation items="6"></mutation>
                              <value name="ADD0">
                                <block type="text" id="o=Jg2a7+k)XHd?c7e0q0">
                                  <field name="TEXT">PV-Überschuss =</field>
                                </block>
                              </value>
                              <value name="ADD1">
                                <block type="math_arithmetic" id="1Ej;XL61*|mX2LoJ##0s">
                                  <field name="OP">MULTIPLY</field>
                                  <value name="A">
                                    <shadow type="math_number" id=",J;UN`hq{;Cr5OcSL*|-">
                                      <field name="NUM">1</field>
                                    </shadow>
                                    <block type="get_value" id="!Ix|JcmE8E^hW71Kc6T=">
                                      <field name="ATTR">val</field>
                                      <field name="OID">0_userdata.0.Energie.Zwischenzaehler_Durchschnitt_5Min</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <shadow type="math_number" id="{HiC*5qx;=5Y}9-@n[ts">
                                      <field name="NUM">-1</field>
                                    </shadow>
                                  </value>
                                </block>
                              </value>
                              <value name="ADD2">
                                <block type="text" id="exRvdoWnJI?J3,Jc$8hI">
                                  <field name="TEXT">. Wassertemperatur geändert auf: </field>
                                </block>
                              </value>
                              <value name="ADD3">
                                <block type="get_value_var" id="]Z^d)y5~RU5GW#S0[t[N">
                                  <field name="ATTR">val</field>
                                  <value name="OID">
                                    <shadow type="field_oid" id="i,tsb_mOhc;YxKP:p$4F">
                                      <field name="oid">Object ID</field>
                                    </shadow>
                                    <block type="on_source" id="P]RHOe_Km2r._4mF6T~c">
                                      <field name="ATTR">id</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </statement>
                    </block>
                  </next>
                </block>
              </xml>
              
              

              2.: Zirkulationspumpe für das Warmwasser soll tagsüber, wenn jemand zu Hause ist, laufen. Wenn niemand zu Hause ist, soll die Pumpe zumindest 1 h pro Tag laufen, damit das Wasser nicht in der Leitung steht.
              Da man die Zirkulationspumpe nicht direkt mit "an" oder "aus" ansteuern kann muss man hierfür den Zeitplan anpassen.
              Die Vorlage für den Zeitplan habe ich mir aus viessmannapi.0.xxx.0.features.heating.dhw.pumps.circulation.schedule.properties.entries.value geholt

              c13dd3dc-e952-4726-83d5-2209bf696304-image.png

              <xml xmlns="https://developers.google.com/blockly/xml">
                <block type="on" id="Ew~n++NGs7J:Ar#*Uqbr" x="463" y="188">
                  <field name="OID">0_userdata.0.JemandZuHause</field>
                  <field name="CONDITION">ne</field>
                  <field name="ACK_CONDITION"></field>
                  <statement name="STATEMENT">
                    <block type="controls_if" id="yPYg)lUZJYm0;W=3KFRz">
                      <mutation else="1"></mutation>
                      <value name="IF0">
                        <block type="logic_compare" id="6:2aE-_cRkp|wIbHx)VK">
                          <field name="OP">GTE</field>
                          <value name="A">
                            <block type="on_source" id="zXsr1Gk{1GzZnI)[keau">
                              <field name="ATTR">state.val</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="on_source" id="S^sj=Iwb{i;*sC=Y2sCu">
                              <field name="ATTR">oldState.val</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <statement name="DO0">
                        <block type="control" id="T^{diz_%%+!Y)#_R{EDZ">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                          <field name="OID">viessmannapi.0.xxx.0.features.heating.dhw.pumps.circulation.schedule.commands.setSchedule.setValue</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="convert_json2object" id="wfN}ISOWBPN^TaMyS9hN">
                              <value name="VALUE">
                                <block type="text" id="8X)GpX6lxkx;GB4|Wrga">
                                  <field name="TEXT">{"mon":[{"start":"05:20","end":"22:00","mode":"on","position":0}],"tue":[{"start":"05:20","end":"22:00","mode":"on","position":0}],"wed":[{"start":"05:20","end":"22:00","mode":"on","position":0}],"thu":[{"start":"05:20","end":"22:00","mode":"on","position":0}],"fri":[{"start":"05:20","end":"22:00","mode":"on","position":0}],"sat":[{"start":"06:00","end":"22:00","mode":"on","position":0}],"sun":[{"start":"06:00","end":"22:00","mode":"on","position":0}]}</field>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </statement>
                      <statement name="ELSE">
                        <block type="control" id="WE|Z9`d5uS{e{bS+[ldG">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                          <field name="OID">viessmannapi.0.xxx.0.features.heating.dhw.pumps.circulation.schedule.commands.setSchedule.setValue</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="convert_json2object" id="3E^n5/xSCW74KBuZINbV">
                              <value name="VALUE">
                                <block type="text" id="e+TKy0Y6,3~2$=`4pCws">
                                  <field name="TEXT">{"mon":[{"start":"14:00","end":"15:00","mode":"on","position":0}],"tue":[{"start":"14:00","end":"15:00","mode":"on","position":0}],"wed":[{"start":"14:00","end":"15:00","mode":"on","position":0}],"thu":[{"start":"14:00","end":"15:00","mode":"on","position":0}],"fri":[{"start":"14:00","end":"15:00","mode":"on","position":0}],"sat":[{"start":"14:00","end":"15:00","mode":"on","position":0}],"sun":[{"start":"14:00","end":"15:00","mode":"on","position":0}]}</field>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </statement>
                    </block>
                  </statement>
                </block>
              </xml>
              

              Für die anpassbaren Werte gibt es bei den Datenpunkten je einen zur Eingabe der neuen Daten. Bei dem Zeitplan ist es bei mir z.B. viessmannapi.0.xxx.0.features.heating.dhw.pumps.circulation.schedule.commands.setSchedule.setValue

              Die Blockly-Pros hätten das sicher galanter gemacht. Als Anfänger gebe ich mich gerade damit zufrieden was funktioniert 😉

              Ich hoffe, das hilft Dir weiter.

              1 Reply Last reply
              0
              • S Offline
                S Offline
                Schweiz
                wrote on last edited by
                #683

                Hi, ich bekomme den Adapter leider nicht ans laufen...

                viessmannapi.0
                	2024-01-14 14:43:54.446	debug	Redis Objects: Use Redis connection: 127.0.0.1:9001
                viessmannapi.0
                	2024-01-14 14:43:54.508	debug	Objects client ready ... initialize now
                viessmannapi.0
                	2024-01-14 14:43:54.511	debug	Objects create System PubSub Client
                viessmannapi.0
                	2024-01-14 14:43:54.514	debug	Objects create User PubSub Client
                viessmannapi.0
                	2024-01-14 14:43:54.587	debug	Objects client initialize lua scripts
                viessmannapi.0
                	2024-01-14 14:43:54.599	debug	Objects connected to redis: 127.0.0.1:9001
                viessmannapi.0
                	2024-01-14 14:43:54.648	debug	Redis States: Use Redis connection: 127.0.0.1:9000
                viessmannapi.0
                	2024-01-14 14:43:54.671	debug	States create System PubSub Client
                viessmannapi.0
                	2024-01-14 14:43:54.673	debug	States create User PubSub Client
                viessmannapi.0
                	2024-01-14 14:43:54.750	debug	States connected to redis: 127.0.0.1:9000
                viessmannapi.0
                	2024-01-14 14:43:54.815	debug	Plugin sentry Initialize Plugin (enabled=true)
                viessmannapi.0
                	2024-01-14 14:43:54.826	info	Plugin sentry Sentry Plugin disabled for this process because sending of statistic data is disabled for the system
                viessmannapi.0
                	2024-01-14 14:43:55.067	info	starting. Version 2.4.0 (non-npm: TA2k/ioBroker.viessmannapi#3c01443c736270a8c3abe0212c651303fc15d8b3) in /opt/iobroker/node_modules/iobroker.viessmannapi, node: v18.19.0, js-controller: 5.0.17
                viessmannapi.0
                	2024-01-14 14:43:55.587	error	AxiosError: Request failed with status code 401
                viessmannapi.0
                	2024-01-14 14:43:55.589	error	{"error":"invalid_request","error_description":"Client not registered."}
                viessmannapi.0
                	2024-01-14 14:43:55.987	error	AxiosError: Request failed with status code 400
                viessmannapi.0
                	2024-01-14 14:43:55.988	error	{"error":"invalid_request","error_description":"Invalid request: Missing or empty code parameter"}
                

                zugang mit der ViCare funktioniert...

                MFG Schweizer

                1 Reply Last reply
                0
                • S Offline
                  S Offline
                  Schweiz
                  wrote on last edited by
                  #684

                  @schweiz
                  erledigt...

                  Irgendwie hab ich mir gedacht, ich gebe mal einfach ein falsches Password ein, dann muss er mir ja sagen dass das Password falsch ist... hat er auch, dann habe ich es nocheinm eingegeben und nun geht der Adapter... kommisch!???

                  MFG Schweizer

                  1 Reply Last reply
                  0
                  • Tiger VIT Tiger VI

                    @ritschy2000 Evtl. für dich noch interessant, habe vor kurzem den Datenpunkt gefunden.
                    => viessmannapi.0.xxxxxx.0.features.heating.compressors.0.properties.phase.value

                    Wenn die WP die Kühlung aktiviert und der Kompressor läuft wird dieser auf "cooling" gesetzt. Diesen Wert nutze ich als Trigger um die Logik der KNX Stellantriebe auf Kühlen zu stellen.

                    @LaBamba bei mir wird der Wert immernoch mit einer Kommastelle von der API ausgegeben.

                    I Offline
                    I Offline
                    io2345
                    wrote on last edited by
                    #685

                    @tiger-vi Hast du den genannten Datenpunkt in Betrieb und funktioniert der an heißen Tagen? Habe eben einen kurzen Test gemacht, allerdings nur Natural Cooling über den Aktorentest in der Steuerung der WP eingeschaltet. Zumindest in diesem Fall ändert sich der Status dieses Datenpunktes nicht (das müsste bei dir genauso sein, falls du es ausprobieren möchtest). Kann aber natürlich sein, dass das ein anderer Trigger ist, der trotzdem das gewünschte Ergebnis liefert.

                    1 Reply Last reply
                    0
                    • M mading

                      @quotschmacher sagte in Test ViessmannAPI v2.0.0:

                      @quotschmacher sagte in Test ViessmannAPI v2.0.0:

                      ich greife das mal auf: das sollte ja dann eigentlich zum einschalten über bewegungsmelder so laufen, das ich in viessmannapi.0.2050879.0.features.heating.dhw.pumps.circulation.schedule.commands.setSchedule.setValue bei auslösung des bewegungsmelders einen zeitplan mit der aktuellen zeit + ne stunde oder so eintrage und wenn keine bewegung mehr, dann einen leeren zeitplan. oder bin ich da jetzt ganz auf dem holzweg?

                      nochmal der vollständigkeithalber: zirkulationspumpe steuern geht soweit ganz gut (vitodens 200).

                      // schedule zum einschalten, allerdings nur zwischen 6 und 21 uhr
                      var pump_on = '{"mon":[{"start":"06:00","end":"21:00","mode":"on","position":0}],"tue":[{"start":"06:00","end":"21:00","mode":"on","position":0}],"wed":[{"start":"06:00","end":"21:00","mode":"on","position":0}],"thu":[{"start":"06:00","end":"21:00","mode":"on","position":0}],"fri":[{"start":"06:00","end":"21:00","mode":"on","position":0}],"sat":[{"start":"06:00","end":"21:00","mode":"on","position":0}],"sun":[{"start":"06:00","end":"21:00","mode":"on","position":0}]}'
                      // schedule leeren - pumpe ausschalten
                      var pump_off = '{"mon":[], "tue":[],"wed":[],"thu":[],"fri":[],"sat":[],"sun":[]}' 
                      
                      setState("viessmannapi.0.xxx.features.heating.dhw.pumps.circulation.schedule.commands.setSchedule.setValue", JSON.parse(pump_on)); // oder pump_off
                      

                      der vorteil das ganze über ein "begrenztes" schedule zu lösen: man muss bei der auswertung eines bewegungsmelders keine zeiten mehr auswerten. wenn der melder nach 21 triggert und das schedule neu gesetzt wird, startet die pumpe eh nicht.

                      ich hab gestern ganz wild die schedules hin und her geschaltet und es hat super funktioniert.

                      danke für den adapter @tombox

                      Hey, da will ich mich mal dran hängen. Ich hatte überlegt, mir einen kippschalter im Bad irgendwo zu platzieren, mit dem ich die Zirkulationspumpe ad hoc starten kann (Use Case: man steht im Bad und will duschen/ das Waschbecken mit WW benutzen). Eigentlich sollte es doch mit dem Skript kein Problem sein:

                      • Eine Schaltervariable (bool) in den eigenen Datenpunkten zu setzen, welche von einem Blockly überwacht wird
                      • ist die Variable auf true, wird der schedule (pump_on) gesetzt -> die Zirkulation läuft an
                      • nach z.B. 5min wird automatisch pump_off gesetzt

                      Verstehe ich es richtig, dass mit deinem Skript die Zirkulationspumpe von 6-21 Uhr durch laufen würde, wenn sie nicht wieder deaktiviert wird?

                      edit: hab mal ein blockly gebaut

                      <xml xmlns="https://developers.google.com/blockly/xml">
                        <block type="procedures_defcustomnoreturn" id="C|6p3lu0hRewiE]Z{qnx" x="188" y="88">
                          <mutation statements="false"></mutation>
                          <field name="NAME">start-zirk</field>
                          <field name="SCRIPT">Ly8gc2NoZWR1bGUgenVtIGVpbnNjaGFsdGVuLCBhbGxlcmRpbmdzIG51ciB6d2lzY2hlbiA2IHVuZCAyMSB1aHINCg0KdmFyIHB1bXBfb24gPSAneyJtb24iOlt7InN0YXJ0IjoiMDA6MDAiLCJlbmQiOiIyMzo1OSIsIm1vZGUiOiJvbiIsInBvc2l0aW9uIjowfV0sInR1ZSI6W3sic3RhcnQiOiIwNjowMCIsImVuZCI6IjIxOjAwIiwibW9kZSI6Im9uIiwicG9zaXRpb24iOjB9XSwid2VkIjpbeyJzdGFydCI6IjA2OjAwIiwiZW5kIjoiMjE6MDAiLCJtb2RlIjoib24iLCJwb3NpdGlvbiI6MH1dLCJ0aHUiOlt7InN0YXJ0IjoiMDY6MDAiLCJlbmQiOiIyMTowMCIsIm1vZGUiOiJvbiIsInBvc2l0aW9uIjowfV0sImZyaSI6W3sic3RhcnQiOiIwNjowMCIsImVuZCI6IjIxOjAwIiwibW9kZSI6Im9uIiwicG9zaXRpb24iOjB9XSwic2F0IjpbeyJzdGFydCI6IjA2OjAwIiwiZW5kIjoiMjE6MDAiLCJtb2RlIjoib24iLCJwb3NpdGlvbiI6MH1dLCJzdW4iOlt7InN0YXJ0IjoiMDY6MDAiLCJlbmQiOiIyMTowMCIsIm1vZGUiOiJvbiIsInBvc2l0aW9uIjowfV19Jw0KDQpzZXRTdGF0ZSgidmllc3NtYW5uYXBpLjAuNjQ4NTEuMC5mZWF0dXJlcy5oZWF0aW5nLmRody5wdW1wcy5jaXJjdWxhdGlvbi5zY2hlZHVsZS5jb21tYW5kcy5zZXRTY2hlZHVsZS5zZXRWYWx1ZSIsIEpTT04ucGFyc2UocHVtcF9vbikpOyAvLyBvZGVyIHB1bXBfb2Zm</field>
                          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                        </block>
                        <block type="on_ext" id="OrrP|oAEW44xm)#CHi/x" x="563" y="88">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                          <field name="CONDITION">ne</field>
                          <field name="ACK_CONDITION"></field>
                          <value name="OID0">
                            <shadow type="field_oid" id="Vf:2${EvnUSG~})eift%">
                              <field name="oid">0_userdata.0.EigeneDatenpunkte.Heizung.ZirkulationAn</field>
                            </shadow>
                          </value>
                          <statement name="STATEMENT">
                            <block type="controls_if" id=")wR[o:^O40MXsYo|IaVD">
                              <value name="IF0">
                                <block type="logic_compare" id="vKpLM;XY_RcIGh6,W8}T">
                                  <field name="OP">EQ</field>
                                  <value name="A">
                                    <block type="on_source" id=")fMs4Fcf$,iYXBW!bX,$">
                                      <field name="ATTR">state.val</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="logic_boolean" id="J5ijXAEjpY!7;c[{N/*G">
                                      <field name="BOOL">TRUE</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <statement name="DO0">
                                <block type="procedures_callcustomnoreturn" id="cPECRG/O*H71[C0pKS3W">
                                  <mutation name="start-zirk"></mutation>
                                  <next>
                                    <block type="telegram" id="T9Dc^Salh?]_(:9YeLNs">
                                      <field name="INSTANCE"></field>
                                      <field name="LOG"></field>
                                      <field name="SILENT">FALSE</field>
                                      <field name="PARSEMODE">default</field>
                                      <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
                                      <value name="MESSAGE">
                                        <shadow type="text" id="1_-=OC9}y+2rbxEF,Ps7">
                                          <field name="TEXT">Zirkulationspumpe gestartet. 5 Minuten Timeout</field>
                                        </shadow>
                                      </value>
                                      <next>
                                        <block type="timeouts_wait" id="^+@b5Hgy=9Kt_8[LpCQ#">
                                          <field name="DELAY">5</field>
                                          <field name="UNIT">min</field>
                                          <next>
                                            <block type="update" id="3`LHXWh~d.hYJhTrvq]*">
                                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                              <field name="OID">0_userdata.0.EigeneDatenpunkte.Heizung.ZirkulationAn</field>
                                              <field name="WITH_DELAY">FALSE</field>
                                              <value name="VALUE">
                                                <block type="logic_boolean" id="ex|rf*=(uRZ~2{=|JWFM">
                                                  <field name="BOOL">FALSE</field>
                                                </block>
                                              </value>
                                              <next>
                                                <block type="procedures_callcustomnoreturn" id="/vYJRv|tZ55;~!uax+W3">
                                                  <mutation name="stop-zirk"></mutation>
                                                  <next>
                                                    <block type="telegram" id=":QA|!PHN6C*+Eo6eIfHX">
                                                      <field name="INSTANCE"></field>
                                                      <field name="LOG"></field>
                                                      <field name="SILENT">FALSE</field>
                                                      <field name="PARSEMODE">default</field>
                                                      <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
                                                      <value name="MESSAGE">
                                                        <shadow type="text" id="G!f5)/iMynkY@xR7o@ZR">
                                                          <field name="TEXT">Zirkulationspumpe gestoppt.</field>
                                                        </shadow>
                                                      </value>
                                                    </block>
                                                  </next>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </statement>
                            </block>
                          </statement>
                        </block>
                        <block type="procedures_defcustomnoreturn" id="]0SXN4W+S6mvOy.:^$No" x="188" y="113">
                          <mutation statements="false"></mutation>
                          <field name="NAME">stop-zirk</field>
                          <field name="SCRIPT">Ly8gc2NoZWR1bGUgbGVlcmVuIC0gcHVtcGUgYXVzc2NoYWx0ZW4NCg0KdmFyIHB1bXBfb2ZmID0gJ3sibW9uIjpbXSwgInR1ZSI6W10sIndlZCI6W10sInRodSI6W10sImZyaSI6W10sInNhdCI6W10sInN1biI6W119JyANCg0KIA0KDQpzZXRTdGF0ZSgidmllc3NtYW5uYXBpLjAuNjQ4NTEuMC5mZWF0dXJlcy5oZWF0aW5nLmRody5wdW1wcy5jaXJjdWxhdGlvbi5zY2hlZHVsZS5jb21tYW5kcy5zZXRTY2hlZHVsZS5zZXRWYWx1ZSIsIEpTT04ucGFyc2UocHVtcF9vZmYpKTsgLy8gb2RlciBwdW1wX29mZg==</field>
                          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                        </block>
                      </xml>
                      

                      Danke!
                      mading

                      I Offline
                      I Offline
                      io2345
                      wrote on last edited by io2345
                      #686

                      @mading Mein Gott, was ihr für knifflige Sachen macht: Geo-Lokalisation, Wahnsinn. Aber selbst ein Wandschalter ist noch zu viel Aufwand.
                      Am einfachsten wäre doch, in der Oberfläche des ioBroker eine Art "virtuellen Schalter" zu haben, wo man drauf drückt und dann läuft die Zirkulationspumpe für fünf Minuten, bevor sie sich wieder abstellt.
                      Bin ziemlicher Anfänger in solchen Sachen (hab vorgestern erst ioBroker auf dem Raspi installiert).
                      Könnt ihr abschätzen, ob sich sowas realisieren lässt - oder hat sowas in der Art gar schon einer der Forumsteilnehmer am Laufen?

                      EDIT: Mein Gott, ich scheitere schon daran, dein Blockly-Script bei mir in Blockly einzufügen. Kann offenbar nur das anzeigen, was ich selbst zusammen-geblockt habe....

                      N M 2 Replies Last reply
                      0
                      • I io2345

                        @mading Mein Gott, was ihr für knifflige Sachen macht: Geo-Lokalisation, Wahnsinn. Aber selbst ein Wandschalter ist noch zu viel Aufwand.
                        Am einfachsten wäre doch, in der Oberfläche des ioBroker eine Art "virtuellen Schalter" zu haben, wo man drauf drückt und dann läuft die Zirkulationspumpe für fünf Minuten, bevor sie sich wieder abstellt.
                        Bin ziemlicher Anfänger in solchen Sachen (hab vorgestern erst ioBroker auf dem Raspi installiert).
                        Könnt ihr abschätzen, ob sich sowas realisieren lässt - oder hat sowas in der Art gar schon einer der Forumsteilnehmer am Laufen?

                        EDIT: Mein Gott, ich scheitere schon daran, dein Blockly-Script bei mir in Blockly einzufügen. Kann offenbar nur das anzeigen, was ich selbst zusammen-geblockt habe....

                        N Offline
                        N Offline
                        nobbiman
                        wrote on last edited by nobbiman
                        #687

                        @io2345 Kann verstehen, dass du das auch im ioBroker realisieren möchtest, wobei ich dir leider auch (noch) nicht helfen kann.
                        Aber einen Tipp für die praktische Umsetzung deines Problems gebe ich dir gerne mit:
                        Ich steuere meine Zirkupumpe (Keller) über einen Funkschalter (könnte ein Shelly Plug S sein oder ein anderes Shelly-Teil). Im Bad liegt bei mir ein Shelly Button 1, den man betätigt, sobald man das Bad betritt und sich zum Duschen/Waschen vorbereitet. Der Button steuert dann den Shelly Plug S, der auf eine Laufzeit von 3-4 Min programmiert wird.
                        Vorteil dieser Lösung: Der Schalter ist vor Ort und so langsam gewöhnen sich auch die Familienmitglieder an dessen rechzeitiger Betätigung.
                        Ich hatte früher eine Steuerung über FHEM im FTUI auf einem iPad realisiert, der im EG lag. Wenn man ins OG kam und hatte vergessen den "3-Minuten-Schalter" zu betätigen, wurde doch das Wasser so lange laufen gelassen, bis es warm wurde weil niemand Lust hatte, nochmals ins EG zu gehen.
                        Mir gefällt die jetzige Lösung sehr gut!

                        1 Reply Last reply
                        0
                        • I io2345

                          @mading Mein Gott, was ihr für knifflige Sachen macht: Geo-Lokalisation, Wahnsinn. Aber selbst ein Wandschalter ist noch zu viel Aufwand.
                          Am einfachsten wäre doch, in der Oberfläche des ioBroker eine Art "virtuellen Schalter" zu haben, wo man drauf drückt und dann läuft die Zirkulationspumpe für fünf Minuten, bevor sie sich wieder abstellt.
                          Bin ziemlicher Anfänger in solchen Sachen (hab vorgestern erst ioBroker auf dem Raspi installiert).
                          Könnt ihr abschätzen, ob sich sowas realisieren lässt - oder hat sowas in der Art gar schon einer der Forumsteilnehmer am Laufen?

                          EDIT: Mein Gott, ich scheitere schon daran, dein Blockly-Script bei mir in Blockly einzufügen. Kann offenbar nur das anzeigen, was ich selbst zusammen-geblockt habe....

                          M Online
                          M Online
                          mading
                          wrote on last edited by
                          #688

                          @io2345 sagte in Test ViessmannAPI v2.0.0:

                          @mading Mein Gott, was ihr für knifflige Sachen macht: Geo-Lokalisation, Wahnsinn. Aber selbst ein Wandschalter ist noch zu viel Aufwand.
                          Am einfachsten wäre doch, in der Oberfläche des ioBroker eine Art "virtuellen Schalter" zu haben, wo man drauf drückt und dann läuft die Zirkulationspumpe für fünf Minuten, bevor sie sich wieder abstellt.
                          Bin ziemlicher Anfänger in solchen Sachen (hab vorgestern erst ioBroker auf dem Raspi installiert).
                          Könnt ihr abschätzen, ob sich sowas realisieren lässt - oder hat sowas in der Art gar schon einer der Forumsteilnehmer am Laufen?

                          EDIT: Mein Gott, ich scheitere schon daran, dein Blockly-Script bei mir in Blockly einzufügen. Kann offenbar nur das anzeigen, was ich selbst zusammen-geblockt habe....

                          Ich habe eine Schaltsteck an der Zirkulationspumpe. Im Bad habe ich einen homematic Taster mit Ink Display. Drücke ich auf eine Taste, läuft die ZP für 5 Min.

                          1 Reply Last reply
                          0
                          • M mading

                            @quotschmacher sagte in Test ViessmannAPI v2.0.0:

                            @quotschmacher sagte in Test ViessmannAPI v2.0.0:

                            ich greife das mal auf: das sollte ja dann eigentlich zum einschalten über bewegungsmelder so laufen, das ich in viessmannapi.0.2050879.0.features.heating.dhw.pumps.circulation.schedule.commands.setSchedule.setValue bei auslösung des bewegungsmelders einen zeitplan mit der aktuellen zeit + ne stunde oder so eintrage und wenn keine bewegung mehr, dann einen leeren zeitplan. oder bin ich da jetzt ganz auf dem holzweg?

                            nochmal der vollständigkeithalber: zirkulationspumpe steuern geht soweit ganz gut (vitodens 200).

                            // schedule zum einschalten, allerdings nur zwischen 6 und 21 uhr
                            var pump_on = '{"mon":[{"start":"06:00","end":"21:00","mode":"on","position":0}],"tue":[{"start":"06:00","end":"21:00","mode":"on","position":0}],"wed":[{"start":"06:00","end":"21:00","mode":"on","position":0}],"thu":[{"start":"06:00","end":"21:00","mode":"on","position":0}],"fri":[{"start":"06:00","end":"21:00","mode":"on","position":0}],"sat":[{"start":"06:00","end":"21:00","mode":"on","position":0}],"sun":[{"start":"06:00","end":"21:00","mode":"on","position":0}]}'
                            // schedule leeren - pumpe ausschalten
                            var pump_off = '{"mon":[], "tue":[],"wed":[],"thu":[],"fri":[],"sat":[],"sun":[]}' 
                            
                            setState("viessmannapi.0.xxx.features.heating.dhw.pumps.circulation.schedule.commands.setSchedule.setValue", JSON.parse(pump_on)); // oder pump_off
                            

                            der vorteil das ganze über ein "begrenztes" schedule zu lösen: man muss bei der auswertung eines bewegungsmelders keine zeiten mehr auswerten. wenn der melder nach 21 triggert und das schedule neu gesetzt wird, startet die pumpe eh nicht.

                            ich hab gestern ganz wild die schedules hin und her geschaltet und es hat super funktioniert.

                            danke für den adapter @tombox

                            Hey, da will ich mich mal dran hängen. Ich hatte überlegt, mir einen kippschalter im Bad irgendwo zu platzieren, mit dem ich die Zirkulationspumpe ad hoc starten kann (Use Case: man steht im Bad und will duschen/ das Waschbecken mit WW benutzen). Eigentlich sollte es doch mit dem Skript kein Problem sein:

                            • Eine Schaltervariable (bool) in den eigenen Datenpunkten zu setzen, welche von einem Blockly überwacht wird
                            • ist die Variable auf true, wird der schedule (pump_on) gesetzt -> die Zirkulation läuft an
                            • nach z.B. 5min wird automatisch pump_off gesetzt

                            Verstehe ich es richtig, dass mit deinem Skript die Zirkulationspumpe von 6-21 Uhr durch laufen würde, wenn sie nicht wieder deaktiviert wird?

                            edit: hab mal ein blockly gebaut

                            <xml xmlns="https://developers.google.com/blockly/xml">
                              <block type="procedures_defcustomnoreturn" id="C|6p3lu0hRewiE]Z{qnx" x="188" y="88">
                                <mutation statements="false"></mutation>
                                <field name="NAME">start-zirk</field>
                                <field name="SCRIPT">Ly8gc2NoZWR1bGUgenVtIGVpbnNjaGFsdGVuLCBhbGxlcmRpbmdzIG51ciB6d2lzY2hlbiA2IHVuZCAyMSB1aHINCg0KdmFyIHB1bXBfb24gPSAneyJtb24iOlt7InN0YXJ0IjoiMDA6MDAiLCJlbmQiOiIyMzo1OSIsIm1vZGUiOiJvbiIsInBvc2l0aW9uIjowfV0sInR1ZSI6W3sic3RhcnQiOiIwNjowMCIsImVuZCI6IjIxOjAwIiwibW9kZSI6Im9uIiwicG9zaXRpb24iOjB9XSwid2VkIjpbeyJzdGFydCI6IjA2OjAwIiwiZW5kIjoiMjE6MDAiLCJtb2RlIjoib24iLCJwb3NpdGlvbiI6MH1dLCJ0aHUiOlt7InN0YXJ0IjoiMDY6MDAiLCJlbmQiOiIyMTowMCIsIm1vZGUiOiJvbiIsInBvc2l0aW9uIjowfV0sImZyaSI6W3sic3RhcnQiOiIwNjowMCIsImVuZCI6IjIxOjAwIiwibW9kZSI6Im9uIiwicG9zaXRpb24iOjB9XSwic2F0IjpbeyJzdGFydCI6IjA2OjAwIiwiZW5kIjoiMjE6MDAiLCJtb2RlIjoib24iLCJwb3NpdGlvbiI6MH1dLCJzdW4iOlt7InN0YXJ0IjoiMDY6MDAiLCJlbmQiOiIyMTowMCIsIm1vZGUiOiJvbiIsInBvc2l0aW9uIjowfV19Jw0KDQpzZXRTdGF0ZSgidmllc3NtYW5uYXBpLjAuNjQ4NTEuMC5mZWF0dXJlcy5oZWF0aW5nLmRody5wdW1wcy5jaXJjdWxhdGlvbi5zY2hlZHVsZS5jb21tYW5kcy5zZXRTY2hlZHVsZS5zZXRWYWx1ZSIsIEpTT04ucGFyc2UocHVtcF9vbikpOyAvLyBvZGVyIHB1bXBfb2Zm</field>
                                <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                              </block>
                              <block type="on_ext" id="OrrP|oAEW44xm)#CHi/x" x="563" y="88">
                                <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                <field name="CONDITION">ne</field>
                                <field name="ACK_CONDITION"></field>
                                <value name="OID0">
                                  <shadow type="field_oid" id="Vf:2${EvnUSG~})eift%">
                                    <field name="oid">0_userdata.0.EigeneDatenpunkte.Heizung.ZirkulationAn</field>
                                  </shadow>
                                </value>
                                <statement name="STATEMENT">
                                  <block type="controls_if" id=")wR[o:^O40MXsYo|IaVD">
                                    <value name="IF0">
                                      <block type="logic_compare" id="vKpLM;XY_RcIGh6,W8}T">
                                        <field name="OP">EQ</field>
                                        <value name="A">
                                          <block type="on_source" id=")fMs4Fcf$,iYXBW!bX,$">
                                            <field name="ATTR">state.val</field>
                                          </block>
                                        </value>
                                        <value name="B">
                                          <block type="logic_boolean" id="J5ijXAEjpY!7;c[{N/*G">
                                            <field name="BOOL">TRUE</field>
                                          </block>
                                        </value>
                                      </block>
                                    </value>
                                    <statement name="DO0">
                                      <block type="procedures_callcustomnoreturn" id="cPECRG/O*H71[C0pKS3W">
                                        <mutation name="start-zirk"></mutation>
                                        <next>
                                          <block type="telegram" id="T9Dc^Salh?]_(:9YeLNs">
                                            <field name="INSTANCE"></field>
                                            <field name="LOG"></field>
                                            <field name="SILENT">FALSE</field>
                                            <field name="PARSEMODE">default</field>
                                            <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
                                            <value name="MESSAGE">
                                              <shadow type="text" id="1_-=OC9}y+2rbxEF,Ps7">
                                                <field name="TEXT">Zirkulationspumpe gestartet. 5 Minuten Timeout</field>
                                              </shadow>
                                            </value>
                                            <next>
                                              <block type="timeouts_wait" id="^+@b5Hgy=9Kt_8[LpCQ#">
                                                <field name="DELAY">5</field>
                                                <field name="UNIT">min</field>
                                                <next>
                                                  <block type="update" id="3`LHXWh~d.hYJhTrvq]*">
                                                    <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                    <field name="OID">0_userdata.0.EigeneDatenpunkte.Heizung.ZirkulationAn</field>
                                                    <field name="WITH_DELAY">FALSE</field>
                                                    <value name="VALUE">
                                                      <block type="logic_boolean" id="ex|rf*=(uRZ~2{=|JWFM">
                                                        <field name="BOOL">FALSE</field>
                                                      </block>
                                                    </value>
                                                    <next>
                                                      <block type="procedures_callcustomnoreturn" id="/vYJRv|tZ55;~!uax+W3">
                                                        <mutation name="stop-zirk"></mutation>
                                                        <next>
                                                          <block type="telegram" id=":QA|!PHN6C*+Eo6eIfHX">
                                                            <field name="INSTANCE"></field>
                                                            <field name="LOG"></field>
                                                            <field name="SILENT">FALSE</field>
                                                            <field name="PARSEMODE">default</field>
                                                            <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
                                                            <value name="MESSAGE">
                                                              <shadow type="text" id="G!f5)/iMynkY@xR7o@ZR">
                                                                <field name="TEXT">Zirkulationspumpe gestoppt.</field>
                                                              </shadow>
                                                            </value>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </next>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </statement>
                                  </block>
                                </statement>
                              </block>
                              <block type="procedures_defcustomnoreturn" id="]0SXN4W+S6mvOy.:^$No" x="188" y="113">
                                <mutation statements="false"></mutation>
                                <field name="NAME">stop-zirk</field>
                                <field name="SCRIPT">Ly8gc2NoZWR1bGUgbGVlcmVuIC0gcHVtcGUgYXVzc2NoYWx0ZW4NCg0KdmFyIHB1bXBfb2ZmID0gJ3sibW9uIjpbXSwgInR1ZSI6W10sIndlZCI6W10sInRodSI6W10sImZyaSI6W10sInNhdCI6W10sInN1biI6W119JyANCg0KIA0KDQpzZXRTdGF0ZSgidmllc3NtYW5uYXBpLjAuNjQ4NTEuMC5mZWF0dXJlcy5oZWF0aW5nLmRody5wdW1wcy5jaXJjdWxhdGlvbi5zY2hlZHVsZS5jb21tYW5kcy5zZXRTY2hlZHVsZS5zZXRWYWx1ZSIsIEpTT04ucGFyc2UocHVtcF9vZmYpKTsgLy8gb2RlciBwdW1wX29mZg==</field>
                                <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                              </block>
                            </xml>
                            

                            Danke!
                            mading

                            I Offline
                            I Offline
                            io2345
                            wrote on last edited by io2345
                            #689

                            @mading Funktioniert astrein.
                            Falls ein Anfänger wie ich das ebenfalls importieren möchte: Hier ein paar Hinweise, wie man Frust vermeiden kann:

                            Das Blockly enthält einen Block, in dem Meldungen über einen Adapter des IM-Dienstes Telegram verschickt werden. Falls man beim Importieren des Scripts eine Fehlermeldung erhält bezüglich fehlerhafter Telegram-Konfiguration, dann fehlt bei euch wahrscheinlich dieser Adapter.

                            Der konfigurierte Datenpunkt, der geschaltet wird, muss bei euch im Blockly abgeändert werden: hinter "viessmannapi.0.... ist eine eindeutige ID, an dieser Stelle müsst ihr die eure eintragen.

                            Das Blockly verwendet einen eigenen Datenpunkt, den ihr erst anlegen müsst: Unter 0_userdata.0.EigeneDatenpunkte.Heizung einen Unterpunkt "ZirkulationAn" als Binärwert.

                            Wer das Script ohne Hardwareschalter einfach von einem Mobilgerät oder Computer aufrufen will, kann sich z.B. eine Visualisierung (wie HABpanel) als Adapter installieren und dort eine Schaltfläche einfügen, die beim Antippen in den - im letzten Abschnitt erstellten Datenpunkt - schreibt.

                            1 Reply Last reply
                            0
                            • M m4rgott

                              Ich habe die Lösung schon gefunden.
                              Ein Konvertierungsblock "JSON nach Objekt" vor den zu schreibenden Wert hat geholfen.

                              B Offline
                              B Offline
                              Bastler52
                              wrote on last edited by Bastler52
                              #690

                              @m4rgott Kannst Du uns dann die Lösung zeigen bitte. (vor {"mon" .. ist gemeint oder?)

                              M 1 Reply Last reply
                              0
                              • B Bastler52

                                @m4rgott Kannst Du uns dann die Lösung zeigen bitte. (vor {"mon" .. ist gemeint oder?)

                                M Offline
                                M Offline
                                m4rgott
                                wrote on last edited by
                                #691

                                Hi @bastler52

                                die obenstehenden Blocklys sind genau so bei mir im Einsatz. Deshalb weiß ich nicht welche Lösung Du suchst.

                                Ich habe nur die Anlagennummer durch "xxx" ersetzt.

                                Wie oben beschrieben habe ich für den neuen Zeitplan den bestehenden Wert aus dem Datenpunkt viessmannapi.0.xxx.0.features.heating.dhw.pumps.circulation.schedule.properties.entries.value geholt und den nach meinen Vorstellungen angepasst.

                                Ich hoffe das hilft Dir weiter.

                                B 1 Reply Last reply
                                0
                                • M m4rgott

                                  Hi @bastler52

                                  die obenstehenden Blocklys sind genau so bei mir im Einsatz. Deshalb weiß ich nicht welche Lösung Du suchst.

                                  Ich habe nur die Anlagennummer durch "xxx" ersetzt.

                                  Wie oben beschrieben habe ich für den neuen Zeitplan den bestehenden Wert aus dem Datenpunkt viessmannapi.0.xxx.0.features.heating.dhw.pumps.circulation.schedule.properties.entries.value geholt und den nach meinen Vorstellungen angepasst.

                                  Ich hoffe das hilft Dir weiter.

                                  B Offline
                                  B Offline
                                  Bastler52
                                  wrote on last edited by
                                  #692

                                  @m4rgott Danke scheinbar habe ich etwas übersehen oder wurde nicht angezeigt. Wollte nur sicher gehen dass ich deinen Beitrag richtig verstanden habe f8471e71-0515-46c9-99b4-1a2c8887705f-image.png

                                  genau das habe ich nicht gesehen und danach hatte ich gefragt ob och das richtig verstanden habe.

                                  Ich habe an sich die Lösung auch um Einsatz aber als Java Skript.

                                  DANKE für deine Reaktion

                                  1 Reply Last reply
                                  0
                                  • ? A Former User

                                    @juggi1962

                                    Hi,
                                    noe, bei mir laeuft alles wie gehabt... polle alle 5minuten..
                                    hast du das mal gemacht, was in der Fehlermeldung steht?

                                    M Offline
                                    M Offline
                                    MAXI885
                                    wrote on last edited by
                                    #693

                                    @ilovegym
                                    Hallo,
                                    aktuell nutze ich den Adapter noch nicht, hätte aber eine Frage zur Anschaffung der Hardware.
                                    Es gibt für den VITOCONNECT 100 OPT01 auch einen Nachfolger, den OPTO2, ist das für die Verwendung mit iobroker egal,
                                    welches Gerät man benutzt ?

                                    Vielen Dank & Grüße !

                                    ? T 2 Replies Last reply
                                    0
                                    • M MAXI885

                                      @ilovegym
                                      Hallo,
                                      aktuell nutze ich den Adapter noch nicht, hätte aber eine Frage zur Anschaffung der Hardware.
                                      Es gibt für den VITOCONNECT 100 OPT01 auch einen Nachfolger, den OPTO2, ist das für die Verwendung mit iobroker egal,
                                      welches Gerät man benutzt ?

                                      Vielen Dank & Grüße !

                                      ? Offline
                                      ? Offline
                                      A Former User
                                      wrote on last edited by
                                      #694

                                      @maxi885

                                      Hallo,
                                      kann dir nicht 100% bestaetigen, da ich auch nur den Vitoconnect 100 habe.
                                      Aber, rein von der Logik des Adapters aus, sollte es funktionieren, da dieser die Daten ja von dem Viessmann-Server von der API holt.
                                      Wie die Daten dahin kommen, ob mit Modul-1 oder 2 oder X ist eigentlich egal....

                                      1 Reply Last reply
                                      0
                                      • M MAXI885

                                        @ilovegym
                                        Hallo,
                                        aktuell nutze ich den Adapter noch nicht, hätte aber eine Frage zur Anschaffung der Hardware.
                                        Es gibt für den VITOCONNECT 100 OPT01 auch einen Nachfolger, den OPTO2, ist das für die Verwendung mit iobroker egal,
                                        welches Gerät man benutzt ?

                                        Vielen Dank & Grüße !

                                        T Offline
                                        T Offline
                                        tombox
                                        wrote on last edited by
                                        #695

                                        @maxi885 Kompatibilitätsliste: https://documentation.viessmann.com/static/compatibility

                                        M 1 Reply Last reply
                                        0
                                        • T tombox

                                          @maxi885 Kompatibilitätsliste: https://documentation.viessmann.com/static/compatibility

                                          M Offline
                                          M Offline
                                          MAXI885
                                          wrote on last edited by
                                          #696

                                          @tombox said in Test ViessmannAPI v2.0.0:

                                          @maxi885 Kompatibilitätsliste: https://documentation.viessmann.com/static/compatibility

                                          super, vielen Dank !
                                          Die Liste bezieht sich schon auf den neuen OPTO2, da steht meine etwas ältere Vitotronic 200 KW1 sogar dabei 🙂

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          105

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe