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

  • 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.8k

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

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.
  • C crinc

    @tombox

    Dein Adapter ist wirklich sehr hilfreich. Dickes Dankeschön.
    du hast hier geschrieben dass die Features rund um gas.consumption über die API zugänglich sind, bei mir erscheint der node gas nicht unter heating. Woran kann das liegen?
    no_gas_node.jpg

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

    @crinc Sowas im viessmann forum anfragen. Der Adapter zeigt exakt das an was die API zurückgibt

    1 Reply Last reply
    0
    • Q Offline
      Q Offline
      quotschmacher
      wrote on last edited by quotschmacher
      #420

      @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

      M J 2 Replies Last reply
      1
      • Q quotschmacher

        @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

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

        @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

        M Q BanditFGB I 5 Replies 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

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

          @mading scheint zu funktionieren, die ZP bekommt strom und zirkuliert.

          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

            Q Offline
            Q Offline
            quotschmacher
            wrote on last edited by
            #423

            @mading sagte in Test ViessmannAPI v2.0.0:

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

            das tut sie so auch, dadurch das meist jemand zu hause ist. da ist es schon eine verbesserung denke ich mal, wenn sie ab und mal nicht korrekt schalten sollte, aber meist schon.

            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

              BanditFGB Offline
              BanditFGB Offline
              BanditFG
              wrote on last edited by
              #424

              @mading

              hallo, verstehe ich dein Blockly richtig, das du über deinen eigenen Datenpunkt die Zirkulationspumpe für 5min einschaltest und diese dann automatisch wieder ausgeht??

              bei uns läuft die Pumpe aktuell nur Früh (4:30 - 11:00)und Abends (16:00 - 22:00) ich überlege das aber per Anwesenheit zu machen, falls keiner da ist, soll sie eben aus sein..

              hoffe damit lässt sich noch bissel Energie sparen

              könntest du mir eventuell helfen das Blockly anzupassen?

              M 1 Reply Last reply
              0
              • BanditFGB BanditFG

                @mading

                hallo, verstehe ich dein Blockly richtig, das du über deinen eigenen Datenpunkt die Zirkulationspumpe für 5min einschaltest und diese dann automatisch wieder ausgeht??

                bei uns läuft die Pumpe aktuell nur Früh (4:30 - 11:00)und Abends (16:00 - 22:00) ich überlege das aber per Anwesenheit zu machen, falls keiner da ist, soll sie eben aus sein..

                hoffe damit lässt sich noch bissel Energie sparen

                könntest du mir eventuell helfen das Blockly anzupassen?

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

                @banditfg das Blockly schaltet die ZP ein als würde sie dauernd laufen. Nach 5 Min Timeout schaltet sie den schedule wieder aus.

                Klar, helfe gern. Welcher Datenpunkt bestimmt bei dir, ob jemand da ist?

                Blöde Frage: läuft bei dir die Zirkulationspumpe wirklich stundenlang? Du verlierst doch wahnsinnig viel Wärme.

                BanditFGB 1 Reply Last reply
                0
                • M mading

                  @banditfg das Blockly schaltet die ZP ein als würde sie dauernd laufen. Nach 5 Min Timeout schaltet sie den schedule wieder aus.

                  Klar, helfe gern. Welcher Datenpunkt bestimmt bei dir, ob jemand da ist?

                  Blöde Frage: läuft bei dir die Zirkulationspumpe wirklich stundenlang? Du verlierst doch wahnsinnig viel Wärme.

                  BanditFGB Offline
                  BanditFGB Offline
                  BanditFG
                  wrote on last edited by
                  #426

                  @mading

                  der Datenpunkt der bei mir bestimmt ob jemand da ist heißt einfach "Anwesend", der steht auf true wenn entweder das Handy meine Frau oder meins Zuhause ist. (per Geofency)

                  Ja die Zirkulationspumpe läuft aktuell Früh (4:30 - 11:00)und Abends (16:00 - 22:00) in dem 5/10 (im Zeitraum von 10Minuten läuft die Pumpe 5min) Intervall.

                  Das hab ich erst vor paar tagen so eingestellt, vorher lief die immer durch..

                  Du hast schon recht, in der Zeit wo die Zirkulationspumpe läuft kann man zusehen wie die Boilertemperatur runter geht.. 👎 Das 5/25 Intervall würde vielleicht noch was sparen...

                  Deswegen war nun meine Überlegung die Zirkulationspumpe nur bei Anwesenheit in den Zeitfenstern laufen zu lassen.. denkst du das ist machbar??

                  M 1 Reply Last reply
                  0
                  • BanditFGB BanditFG

                    @mading

                    der Datenpunkt der bei mir bestimmt ob jemand da ist heißt einfach "Anwesend", der steht auf true wenn entweder das Handy meine Frau oder meins Zuhause ist. (per Geofency)

                    Ja die Zirkulationspumpe läuft aktuell Früh (4:30 - 11:00)und Abends (16:00 - 22:00) in dem 5/10 (im Zeitraum von 10Minuten läuft die Pumpe 5min) Intervall.

                    Das hab ich erst vor paar tagen so eingestellt, vorher lief die immer durch..

                    Du hast schon recht, in der Zeit wo die Zirkulationspumpe läuft kann man zusehen wie die Boilertemperatur runter geht.. 👎 Das 5/25 Intervall würde vielleicht noch was sparen...

                    Deswegen war nun meine Überlegung die Zirkulationspumpe nur bei Anwesenheit in den Zeitfenstern laufen zu lassen.. denkst du das ist machbar??

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

                    @banditfg ich habe sowas nicht implementiert, aber vermutlich brauchst du einen trigger, der alle paar minuten anläuft (cron). Innerhalb des triggers prüfst du die zeit und darin prüfst du, ob jemand anwesend ist. Falls ja -> starten

                    1 Reply Last reply
                    0
                    • M Online
                      M Online
                      mading
                      wrote on last edited by
                      #428

                      bin zufällig im Viessmann Forum darüber gestolpert, falls es jemanden interessiert: kostenloses geofencing: https://www.viessmann-community.com/t5/The-Viessmann-API/Geofencing-for-free/td-p/261838

                      1 Reply Last reply
                      0
                      • T Tontechniker

                        Hallo alle die hier mitlesen!
                        Habe den Adapter installiert, bei Viessmann eingeloggt, code geholt und eingegeben.
                        Adapter wird grün, im Log folgende Info:

                        viessmannapi.0
                        	2022-02-20 15:29:01.452	info	No installation found
                        viessmannapi.0
                        	2022-02-20 15:28:53.519	info	starting. Version 2.0.8 in /opt/iobroker/node_modules/iobroker.viessmannapi, node: v14.19.0, js-controller: 4.0.14
                        

                        Ich versuche die Daten der Heizung meines Sohnes auszulesen. Es werden keine Datenpunkte angelegt.
                        Kann es daran liegen, dass ich nicht der Eigentümer (Admin) bin, sondern nur einen "Lesezugang" mit Vitodata 100 habe?
                        Die Anlage ist unter #1 aufgeführt (Festbrennstoffkessel VT 200 FO1).

                        A Offline
                        A Offline
                        aftershowman
                        wrote on last edited by
                        #429

                        @tontechniker
                        Dein Eintrag ist ja schon eine Weile her.
                        Ich habe keine Antwort gesehen.
                        konntest DU das Problem lösen?
                        Ich hab dasselbe Problem.

                        Hier mal die LOG Einträge.

                        viessmannapi.0
                        2022-10-09 20:38:39.419 info No installation found

                        viessmannapi.0
                        2022-10-09 20:38:39.418 debug {"data":[],"cursor":{"next":""}}

                        viessmannapi.0
                        2022-10-09 20:38:38.444 debug {"access_token":"eyJlbmMiOiJBMjU2R0NNIiwiYWxnIjoiUlNBLU9BRVAtMjU2In0.k17v5lsevgJxufY5wyZnSJAisQMWGywsIQJ_Lhe5C6BI7VbWYk2ntdxguV4TgzJOpGqm862UBQxLtauOY94CExr2S44kzOROcluZ_AA-JhzlCrDeO0GFr0IvZqWkJx7SmHkGNIBb7cxa20UemLL-T_G63nKLWg0aMkOeBLjSL4nFhtijUIHpLUAnlciUdwjOl2BdWixKg3Px1HbI-PKJNdqYG2PPP7iDc6_m-TAwBd6fDeb-AdrQ144VJ5BMFbX8KtG5AFlhuZFTbNAjivEYeQUCYfpVyK1aQp42DjGe5DYnNmehn__SbF326Rb_45tg4nD88oTtF-JpwUSu3ENyw2AsjdeqXre-jDVbgoaUP_Jd8tscsPoZONMF5KfVhKnNMuc8dBLlxVgCPGEcee3WTQU7wNMunpYZhevtxIsRARFbtHERfmXwGij5jGWiKzH-OdMlpzczuvjFUM_Dn2J8Vx2LucyD_vFqJjknrT95GzUJzgYqRxDHVLj2DC4xvh07KFHLyMrt4ufVrBV_5Cd4ILo-flQnT3j9H31QIRpXVJWprgE9ojjjXEDqy5n6M_vdm2etd23xLjWvxm-_dwf2WTyg2HRYC1g3Wu_ndlKSs7iRAtFmae9TxZ7D2JG1Ja8brTGFPYrA-jbYv7YNkmoDo-X4jWmD4SzexvINUAjOack.vu4sNyF4slRz36zJ.Py0DPNPqvzdwPFanmIgwsmrTfTZHoO9iIWAkTGsOFoIap97zjfQLNb4rBDPblCXru2EPwYHct5tMVD46IX6C88puipwhoiNIm5tb0p_GLQzr2abIfZwc3e5Q5M3zUF5UbpUWSWpSTt_SLRsERcxR7lkprLHN19IQSyiC7gZ-wf__c2_H5pyJPG53GDZ29noI_6AyQvWQR6A-dUpj8HLeSUPTZMRsCM3X1XaG5EiZsxwdZ58A-MNJTCbM7OrLWSj3zdLhR5mbVrMdG-S4J334HtAqvg_DNkxXvrWKqRUluK3n91vFmE1Cgh5lFEPyJSIMbpc_xaffE9AcubM2ZJ83V15RjDNbOCxfxEpCG0mFyexz2v6ulxrpPWEDI1lz-H5NPS7n-qOjGKkj53PSeRXdNMh2qmjwplGTBT1QmRDps6-1cO2u6F_rm2C3QKfoeYTY00K7XNi-ezvev01_f7f-RSMHVo9SfOhvMZ5quQU-vVhzdJnbyUkoPzz4Ix3R1Vvf5uxmagFmfiV_btgdoAbEgjC2L8Et3FuuT5mY6TZb_u-kPB7f-IFCvuPFrrWMHSDYsMk6pkJyHeW-BlNqLtwMgpxGw8s_Req4JDD2ap_Dmqofc9SMH6062BQMaWGMsEYARUg-xQZvEfZtldxQ6NJUQB_nE5RnqJGTSaHE6kRXs0YZRoF2euUDV4eALJ89WDrk_tRXqVcxSoP5XVQeps36LJHZiiIWSkOG9JkDuXzNDGyfcgLCBJDjMm8PYugualy44mnwR6uvMts8cXzz4xXpC5UnJgh_2780-1-zaoks8coL3utvjmuUVkuadI5r8oASw51wmzEOQLl4duN3LlHGXyT9YC3-y_SgyUyR_5xhonthWvdXBvQ7WsICcMTbBXl9NXkRqjzC-vrt66lQJsHQQAnepli0Di2YneueqhAWZr6tDhQW-sTwpAZPPcPeHcNCuh3zBwyDsSu3hk2CEU2dYx70qMLyU8mdWAEH1eWapu9e8FtBXp1CmaafolcPuQdwKU36GAg3wkUzE0bpxc3fTQF4QqJPraAb_701PB1Ti05uevw7n6oF4RbIJMWu6vKIPfXCwho4Da0cJsWZvQ2dd2EQguuCrIaqn_NanxFR2s6gNF1Efb5wJXDao4l5YnHsg-TLxahBKpQgvEnr9bwXa8bTL_GWKoTNbpD25N-KqUwWsW03mLo99-CrlNmeA2mNwglTUrccgBSMtl_lkv283fiaRYekZMjGUpEDZztt9x300VDLwpcyP13t6Mct9FZab4swjLpRtXMWH8ezEQthiztW-EnMQ-PYX7bdy6I2Yq-zoCM1SaMZN6Wndj3tZZDQe_wlJEQEOB0nfBw7YpNFJ4MuxGCwS_iHhjC5yvhG_jJjnglaZ-._XziCb3bqtfMbq_hshkUMw","refresh_token":"eb8a26ea252e6e55479407fb87fbf91c","token_type":"Bearer","expires_in":3600}

                        viessmannapi.0
                        2022-10-09 20:38:34.216 debug 5S0XNH5XqMXVf5an2azIKUVN1Y3Y7B-u6NtOpfCJMH8

                        viessmannapi.0
                        2022-10-09 20:38:34.211 debug "http://localhost:4200/?code=5S0XNH5XqMXVf5an2azIKUVN1Y3Y7B-u6NtOpfCJMH8"

                        viessmannapi.0
                        2022-10-09 20:38:16.991 debug " \n\n \n\n\n\n \n\n\n \n<!DOCTYPE html>\n<html>\n\t<head>\n\t\t<title>Viessmann Login</title>\n\t\t<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">\n <link rel="icon" href="/login/resources/nevislogrend/applications/IDM_OIDC_IDP_V2/webdata/images/favicon.png" type="image/png">\n\t\t<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons\"/>\n \t<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900\"/>\n\t\t<link rel="stylesheet" href="/login/resources/nevislogrend/applications/IDM_OIDC_IDP_V2/webdata/css/material.min.css"/>\n \t<link rel="stylesheet" href="/login/resources/nevislogrend/applications/IDM_OIDC_IDP_V2/webdata/css/customerRegistration.css"/>\n <script src="/login/resources/nevislogrend/applications/IDM_OIDC_IDP_V2/webdata/js/material.min.js"></script>\n <script src="/login/resources/nevislogrend/applications/IDM_OIDC_IDP_V2/webdata/js/showpw.js"></script>\n\t\t<meta name="viewport" content="width=device-width, initial-scale=1.0">\n\t</head>\n\t<body>\n\t<div class="b2b-main-background"> \t <div class="font-size-20px b2b-regestration-headline"> <div class="mdl-grid mdl-grid--no-spacing"> <div class="b2b-regestration-headline-item" style="margin-left:24px">Login</div>\n </div> </div> \n <div class="b2b-main-container"> <div class="b2b-sub-container"> <div class="mdl-grid mdl-grid--no-spacing"> <div class="mdl-layout-spacer"></div>\n <img src="/login/resources/nevislogrend/applications/IDM_OIDC_IDP_V2/webdata/images/viessmann-logo.png" alt="viessmann-logo" class="b2b-vi-image"/>\n <div class="mdl-layout-spacer"></div>\n </div> <form class="b2b-form-space" id="AuthUidDialogWithoutCaptcha" name="AuthUidDialogWithoutCaptcha" method="POST" target="_self" action="https://iam.viessmann.com/idp/v2/authorize?client_id=xxxxxxxx&amp;response_type=code&amp;scope=IoT+User+offline_access&amp;code_challenge_method=S256&amp;code_challenge=hc_rtsIo7m8_iu4PuMaawQkTMYb-_zETWg9vHRsxJJA&amp;redirect_uri=http:%2F%2Flocalhost:4200%2F\" autocomplete="off" accept-charset="UTF-8"> \n\n\n \n \n\n\n\n\n\n\n <div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label input-style"> <input class="mdl-textfield__input b2b-profile-completion-input-margin" autocorrect="off" autocapitalize="off" autocomplete="username" spellcheck="false" \n type="text" name="isiwebuserid" size="20" maxlength="255" value="" tabindex="2" placeholder="User name">\n <input type="password" style="display:none" name="hiddenPassword" autocomplete="off">\n </div> \n\n\n \n \n\n\n\n\n\n\n<div class="mdl-grid mdl-grid--no-spacing" style="padding-top:16px"> <div class="mdl-cell" style="width:auto"> <label class="mdl-checkbox mdl-js-checkbox mdl-js-ripple-effect" for="checkbox"> <input type="checkbox" name="stayloggedin" value="Stay logged on" tabindex="3" class="mdl-checkbox__input" id="checkbox" style="margin-left:0">\n <span class="mdl-checkbox__label">Stay logged on</span>\n </label> </div> </div> \n\n\n \n\n\n\n \n\n\n\n\n\n\n<div class="mdl-grid mdl-grid--no-spacing" style="padding-top:60px"> <div class="mdl-layout-spacer" style="min-width: 50px;"></div>\n <div class="mdl-cell" style="width:auto"> <button class="mdl-button mdl-js-button mdl-button--raised mdl-button--colored login-button" type="submit" name="submitbtn" value="Next" id="loginButton">Next</button>\n </div> </div> \n\n \n </form> <script type="text/javascript">document.forms['AuthUidDialogWithoutCaptcha'].elements[0].focus()</script>\n </div> </div> <div class="mdl-layout-spacer"></div> </div> \n\t\t\t\t<script src="/login/resources/nevislogrend/applications/IDM_OIDC_IDP_V2/webdata/js/jquery-3.3.1.min.js"></script>\n\t\t<script src="/login/resources/nevislogrend/applications/IDM_OIDC_IDP_V2/webdata/js/dropdown.js"></script>\n <script src="/login/resources/nevislogrend/applications/IDM_OIDC_IDP_V2/webdata/js/nevislogrend.js"></script>\n\t</body> </html> \n\n\n\n "

                        viessmannapi.0
                        2022-10-09 20:38:04.284 info starting. Version 2.0.9 in /opt/iobroker/node_modules/iobroker.viessmannapi, node: v14.19.1, js-controller: 4.0.21

                        viessmannapi.0
                        2022-10-09 20:38:03.841 debug Plugin sentry Initialize Plugin (enabled=true)

                        viessmannapi.0
                        2022-10-09 20:38:03.657 debug States connected to redis: 127.0.0.1:9000

                        viessmannapi.0
                        2022-10-09 20:38:03.573 debug States create User PubSub Client

                        viessmannapi.0
                        2022-10-09 20:38:03.571 debug States create System PubSub Client

                        viessmannapi.0
                        2022-10-09 20:38:03.457 debug Redis States: Use Redis connection: 127.0.0.1:9000

                        viessmannapi.0
                        2022-10-09 20:38:03.407 debug Objects connected to redis: 127.0.0.1:9001

                        viessmannapi.0
                        2022-10-09 20:38:03.399 debug Objects client initialize lua scripts

                        viessmannapi.0
                        2022-10-09 20:38:03.302 debug Objects create User PubSub Client

                        viessmannapi.0
                        2022-10-09 20:38:03.301 debug Objects create System PubSub Client

                        viessmannapi.0
                        2022-10-09 20:38:03.299 debug Objects client ready ... initialize now

                        viessmannapi.0
                        2022-10-09 20:38:03.246 debug Redis Objects: Use Redis connection: 127.0.0.1:9001

                        Homematic: CCU2 (2.17.15) ; 56 RF Geräte, 4 wired Geräte

                        ioBroker PC: Intel celeron 1007U 1.5GHz, 4GB RAM, 128 GB SSD

                        T 1 Reply Last reply
                        0
                        • A aftershowman

                          @tontechniker
                          Dein Eintrag ist ja schon eine Weile her.
                          Ich habe keine Antwort gesehen.
                          konntest DU das Problem lösen?
                          Ich hab dasselbe Problem.

                          Hier mal die LOG Einträge.

                          viessmannapi.0
                          2022-10-09 20:38:39.419 info No installation found

                          viessmannapi.0
                          2022-10-09 20:38:39.418 debug {"data":[],"cursor":{"next":""}}

                          viessmannapi.0
                          2022-10-09 20:38:38.444 debug {"access_token":"eyJlbmMiOiJBMjU2R0NNIiwiYWxnIjoiUlNBLU9BRVAtMjU2In0.k17v5lsevgJxufY5wyZnSJAisQMWGywsIQJ_Lhe5C6BI7VbWYk2ntdxguV4TgzJOpGqm862UBQxLtauOY94CExr2S44kzOROcluZ_AA-JhzlCrDeO0GFr0IvZqWkJx7SmHkGNIBb7cxa20UemLL-T_G63nKLWg0aMkOeBLjSL4nFhtijUIHpLUAnlciUdwjOl2BdWixKg3Px1HbI-PKJNdqYG2PPP7iDc6_m-TAwBd6fDeb-AdrQ144VJ5BMFbX8KtG5AFlhuZFTbNAjivEYeQUCYfpVyK1aQp42DjGe5DYnNmehn__SbF326Rb_45tg4nD88oTtF-JpwUSu3ENyw2AsjdeqXre-jDVbgoaUP_Jd8tscsPoZONMF5KfVhKnNMuc8dBLlxVgCPGEcee3WTQU7wNMunpYZhevtxIsRARFbtHERfmXwGij5jGWiKzH-OdMlpzczuvjFUM_Dn2J8Vx2LucyD_vFqJjknrT95GzUJzgYqRxDHVLj2DC4xvh07KFHLyMrt4ufVrBV_5Cd4ILo-flQnT3j9H31QIRpXVJWprgE9ojjjXEDqy5n6M_vdm2etd23xLjWvxm-_dwf2WTyg2HRYC1g3Wu_ndlKSs7iRAtFmae9TxZ7D2JG1Ja8brTGFPYrA-jbYv7YNkmoDo-X4jWmD4SzexvINUAjOack.vu4sNyF4slRz36zJ.Py0DPNPqvzdwPFanmIgwsmrTfTZHoO9iIWAkTGsOFoIap97zjfQLNb4rBDPblCXru2EPwYHct5tMVD46IX6C88puipwhoiNIm5tb0p_GLQzr2abIfZwc3e5Q5M3zUF5UbpUWSWpSTt_SLRsERcxR7lkprLHN19IQSyiC7gZ-wf__c2_H5pyJPG53GDZ29noI_6AyQvWQR6A-dUpj8HLeSUPTZMRsCM3X1XaG5EiZsxwdZ58A-MNJTCbM7OrLWSj3zdLhR5mbVrMdG-S4J334HtAqvg_DNkxXvrWKqRUluK3n91vFmE1Cgh5lFEPyJSIMbpc_xaffE9AcubM2ZJ83V15RjDNbOCxfxEpCG0mFyexz2v6ulxrpPWEDI1lz-H5NPS7n-qOjGKkj53PSeRXdNMh2qmjwplGTBT1QmRDps6-1cO2u6F_rm2C3QKfoeYTY00K7XNi-ezvev01_f7f-RSMHVo9SfOhvMZ5quQU-vVhzdJnbyUkoPzz4Ix3R1Vvf5uxmagFmfiV_btgdoAbEgjC2L8Et3FuuT5mY6TZb_u-kPB7f-IFCvuPFrrWMHSDYsMk6pkJyHeW-BlNqLtwMgpxGw8s_Req4JDD2ap_Dmqofc9SMH6062BQMaWGMsEYARUg-xQZvEfZtldxQ6NJUQB_nE5RnqJGTSaHE6kRXs0YZRoF2euUDV4eALJ89WDrk_tRXqVcxSoP5XVQeps36LJHZiiIWSkOG9JkDuXzNDGyfcgLCBJDjMm8PYugualy44mnwR6uvMts8cXzz4xXpC5UnJgh_2780-1-zaoks8coL3utvjmuUVkuadI5r8oASw51wmzEOQLl4duN3LlHGXyT9YC3-y_SgyUyR_5xhonthWvdXBvQ7WsICcMTbBXl9NXkRqjzC-vrt66lQJsHQQAnepli0Di2YneueqhAWZr6tDhQW-sTwpAZPPcPeHcNCuh3zBwyDsSu3hk2CEU2dYx70qMLyU8mdWAEH1eWapu9e8FtBXp1CmaafolcPuQdwKU36GAg3wkUzE0bpxc3fTQF4QqJPraAb_701PB1Ti05uevw7n6oF4RbIJMWu6vKIPfXCwho4Da0cJsWZvQ2dd2EQguuCrIaqn_NanxFR2s6gNF1Efb5wJXDao4l5YnHsg-TLxahBKpQgvEnr9bwXa8bTL_GWKoTNbpD25N-KqUwWsW03mLo99-CrlNmeA2mNwglTUrccgBSMtl_lkv283fiaRYekZMjGUpEDZztt9x300VDLwpcyP13t6Mct9FZab4swjLpRtXMWH8ezEQthiztW-EnMQ-PYX7bdy6I2Yq-zoCM1SaMZN6Wndj3tZZDQe_wlJEQEOB0nfBw7YpNFJ4MuxGCwS_iHhjC5yvhG_jJjnglaZ-._XziCb3bqtfMbq_hshkUMw","refresh_token":"eb8a26ea252e6e55479407fb87fbf91c","token_type":"Bearer","expires_in":3600}

                          viessmannapi.0
                          2022-10-09 20:38:34.216 debug 5S0XNH5XqMXVf5an2azIKUVN1Y3Y7B-u6NtOpfCJMH8

                          viessmannapi.0
                          2022-10-09 20:38:34.211 debug "http://localhost:4200/?code=5S0XNH5XqMXVf5an2azIKUVN1Y3Y7B-u6NtOpfCJMH8"

                          viessmannapi.0
                          2022-10-09 20:38:16.991 debug " \n\n \n\n\n\n \n\n\n \n<!DOCTYPE html>\n<html>\n\t<head>\n\t\t<title>Viessmann Login</title>\n\t\t<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">\n <link rel="icon" href="/login/resources/nevislogrend/applications/IDM_OIDC_IDP_V2/webdata/images/favicon.png" type="image/png">\n\t\t<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons\"/>\n \t<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900\"/>\n\t\t<link rel="stylesheet" href="/login/resources/nevislogrend/applications/IDM_OIDC_IDP_V2/webdata/css/material.min.css"/>\n \t<link rel="stylesheet" href="/login/resources/nevislogrend/applications/IDM_OIDC_IDP_V2/webdata/css/customerRegistration.css"/>\n <script src="/login/resources/nevislogrend/applications/IDM_OIDC_IDP_V2/webdata/js/material.min.js"></script>\n <script src="/login/resources/nevislogrend/applications/IDM_OIDC_IDP_V2/webdata/js/showpw.js"></script>\n\t\t<meta name="viewport" content="width=device-width, initial-scale=1.0">\n\t</head>\n\t<body>\n\t<div class="b2b-main-background"> \t <div class="font-size-20px b2b-regestration-headline"> <div class="mdl-grid mdl-grid--no-spacing"> <div class="b2b-regestration-headline-item" style="margin-left:24px">Login</div>\n </div> </div> \n <div class="b2b-main-container"> <div class="b2b-sub-container"> <div class="mdl-grid mdl-grid--no-spacing"> <div class="mdl-layout-spacer"></div>\n <img src="/login/resources/nevislogrend/applications/IDM_OIDC_IDP_V2/webdata/images/viessmann-logo.png" alt="viessmann-logo" class="b2b-vi-image"/>\n <div class="mdl-layout-spacer"></div>\n </div> <form class="b2b-form-space" id="AuthUidDialogWithoutCaptcha" name="AuthUidDialogWithoutCaptcha" method="POST" target="_self" action="https://iam.viessmann.com/idp/v2/authorize?client_id=xxxxxxxx&amp;response_type=code&amp;scope=IoT+User+offline_access&amp;code_challenge_method=S256&amp;code_challenge=hc_rtsIo7m8_iu4PuMaawQkTMYb-_zETWg9vHRsxJJA&amp;redirect_uri=http:%2F%2Flocalhost:4200%2F\" autocomplete="off" accept-charset="UTF-8"> \n\n\n \n \n\n\n\n\n\n\n <div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label input-style"> <input class="mdl-textfield__input b2b-profile-completion-input-margin" autocorrect="off" autocapitalize="off" autocomplete="username" spellcheck="false" \n type="text" name="isiwebuserid" size="20" maxlength="255" value="" tabindex="2" placeholder="User name">\n <input type="password" style="display:none" name="hiddenPassword" autocomplete="off">\n </div> \n\n\n \n \n\n\n\n\n\n\n<div class="mdl-grid mdl-grid--no-spacing" style="padding-top:16px"> <div class="mdl-cell" style="width:auto"> <label class="mdl-checkbox mdl-js-checkbox mdl-js-ripple-effect" for="checkbox"> <input type="checkbox" name="stayloggedin" value="Stay logged on" tabindex="3" class="mdl-checkbox__input" id="checkbox" style="margin-left:0">\n <span class="mdl-checkbox__label">Stay logged on</span>\n </label> </div> </div> \n\n\n \n\n\n\n \n\n\n\n\n\n\n<div class="mdl-grid mdl-grid--no-spacing" style="padding-top:60px"> <div class="mdl-layout-spacer" style="min-width: 50px;"></div>\n <div class="mdl-cell" style="width:auto"> <button class="mdl-button mdl-js-button mdl-button--raised mdl-button--colored login-button" type="submit" name="submitbtn" value="Next" id="loginButton">Next</button>\n </div> </div> \n\n \n </form> <script type="text/javascript">document.forms['AuthUidDialogWithoutCaptcha'].elements[0].focus()</script>\n </div> </div> <div class="mdl-layout-spacer"></div> </div> \n\t\t\t\t<script src="/login/resources/nevislogrend/applications/IDM_OIDC_IDP_V2/webdata/js/jquery-3.3.1.min.js"></script>\n\t\t<script src="/login/resources/nevislogrend/applications/IDM_OIDC_IDP_V2/webdata/js/dropdown.js"></script>\n <script src="/login/resources/nevislogrend/applications/IDM_OIDC_IDP_V2/webdata/js/nevislogrend.js"></script>\n\t</body> </html> \n\n\n\n "

                          viessmannapi.0
                          2022-10-09 20:38:04.284 info starting. Version 2.0.9 in /opt/iobroker/node_modules/iobroker.viessmannapi, node: v14.19.1, js-controller: 4.0.21

                          viessmannapi.0
                          2022-10-09 20:38:03.841 debug Plugin sentry Initialize Plugin (enabled=true)

                          viessmannapi.0
                          2022-10-09 20:38:03.657 debug States connected to redis: 127.0.0.1:9000

                          viessmannapi.0
                          2022-10-09 20:38:03.573 debug States create User PubSub Client

                          viessmannapi.0
                          2022-10-09 20:38:03.571 debug States create System PubSub Client

                          viessmannapi.0
                          2022-10-09 20:38:03.457 debug Redis States: Use Redis connection: 127.0.0.1:9000

                          viessmannapi.0
                          2022-10-09 20:38:03.407 debug Objects connected to redis: 127.0.0.1:9001

                          viessmannapi.0
                          2022-10-09 20:38:03.399 debug Objects client initialize lua scripts

                          viessmannapi.0
                          2022-10-09 20:38:03.302 debug Objects create User PubSub Client

                          viessmannapi.0
                          2022-10-09 20:38:03.301 debug Objects create System PubSub Client

                          viessmannapi.0
                          2022-10-09 20:38:03.299 debug Objects client ready ... initialize now

                          viessmannapi.0
                          2022-10-09 20:38:03.246 debug Redis Objects: Use Redis connection: 127.0.0.1:9001

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

                          @aftershowman Bitte den forum Beitrag löschen und dein Passwort von deinem Account ändern. Der Log erhält sensible Informationen.
                          Es kann einfach unter dem account keine Installationen finden anscheinend ist der Account nicht richtig verknüpft

                          1 Reply Last reply
                          0
                          • M Online
                            M Online
                            mading
                            wrote on last edited by
                            #431

                            Das mit der Zirkulationspumpe über die Viessmann Cloud ansteuern funktioniert zwar, aber durch die eingeschränkte Anzahl der Calls pro Tag nur unzuverlässig. Vielleicht hilft derPost ja dem ein oder anderen: https://forum.iobroker.net/topic/48853/ww-zirkulationspumpe-bedarfsgerecht-ein-und-ausschalten/15?_=1665419497824

                            1 Reply Last reply
                            0
                            • T tombox

                              Hi ich habe ein neuen Adapter für Viessman erstellt

                              Man benötigt eine ClientID von der Viessmann API

                              https://app.developer.viessmann.com besuchen und eine Client ID mit diesen Optionen erstellen:

                              Name: iobroker
                              Google reCAPTCHA deaktivieren
                              Redirect URI: http://localhost:4200/

                              Die Client ID in die Einstellungen kopieren

                              Außentemperatur findet sich z.B. hier:
                              viessmannapi.0.XXXXX.0.features.heating.sensors.temperature.outside.properties.value.value

                              Weitere Beispiele siehe Unten

                              Remote Befehle sind möglich unter
                              viessmannapi.0.XXXXX.0.features.heating.dhw.temperature.main.commands.setTargetTemperature.setValue

                              Zum Installieren:
                              Via Adaptersuche

                              In den Instanzoptionen die jeweiligen Optionen einstellen.

                              Github
                              https://github.com/TA2k/ioBroker.viessmannapi

                              Kompatibilitätsliste:
                              https://documentation.viessmann.com/static/compatibility
                              Regelungen für Wand- oder Kompaktgeräte
                              Vitotronic 200, Typ HO1, HO1A, HO1B, HO1D, HO2B, HO2C
                              Vitotronic 200 RF, Typ HO1C, HO1E
                              Regelungen für bodenstehende Heizkessel
                              Vitotronic 200, Typ KO1B, KO2B, KW6, KW6A, KW6B, KW1, KW2, KW4, KW5
                              Vitotronic 300, Typ KW3
                              Regelungen für Wärmepumpen und Hybridgeräte
                              Vitotronic 200, Typ WO1A, WO1B, WO1C
                              Regelungen für Festbrennstoffkessel
                              Vitoligno 200-S mit Ecotronic (ab Softwarestand 2.03)
                              Vitoligno 250-S mit Ecotronic (ab Softwarestand 2.00)
                              Vitoligno 300-C mit Ecotronic (ab Softwarestand 2.12)
                              Vitoligno 300-P mit Vitotronic 200 FO1
                              Vitoligno 300-S mit Ecotronic (ab Softwarestand 2.04)

                              Liste aller Datenpunkte:
                              https://documentation.viessmann.com/static/iot/data-points

                              Frage zu fehlende Datenpunkte bitte direkt an Viessmann
                              https://www.viessmann-community.com/t5/The-Viessmann-API/bd-p/dev-viessmann-api

                              Beispiele:

                              Vorlauftemperatur: 
                              viessmannapi.0.XXXX.features.heating.circuits.0.sensors.temperature.supply.properties.value.value, 
                              
                              Brennerstatus:
                              viessmannapi.0.XXXX.0.features.heating.burners.0.properties.active.value
                              
                              Anzahl Zündungen:
                              viessmannapi.0.XXXXX.features.heating.burners.0.statistics.properties.starts.value
                              
                              Betriebsstunden
                              viessmannapi.0.XXXXX.features.heating.burners.0.statistics.properties.hours.value
                              
                              Kesseltemperatur
                              viessmannapi.0.XXXXX.features.heating.boiler.sensors.temperature.main.properties.unit.value
                              
                              Kompressor aktiv:		viessmannapi.0.xxx.0.features.heating.compressors.0.properties.active.value
                              Heizkreispumpe aktiv:		viessmannapi.0.xxx.0.features.heating.circuits.1.circulation.pump.properties.status.value
                              Warmwasserbereitung:		viessmannapi.0.xxx.0.features.heating.dhw.charging.properties.active.value
                              Heizungsmodus:			viessmannapi.0.xxx.0.features.heating.circuits.1.operating.modes.active.properties.value.value
                              Heizprogramm:			viessmannapi.0.xxx.0.features.heating.circuits.1.operating.programs.active.properties.value.value
                              Temperatur Heizprogramm normal:	viessmannapi.0.xxx.0.features.heating.circuits.1.operating.programs.normal.properties.temperature.value
                              Temperatur Heizprogramm reduz.:	viessmannapi.0.xxx.0.features.heating.circuits.1.operating.programs.reduced.properties.temperature.value
                              Warmwasser Soll Temperatur:	viessmannapi.0.xxx.0.features.heating.dhw.temperature.properties.value.value
                              Warmwasser Ist Temperatur:	viessmannapi.0.xxx.0.features.heating.dhw.sensors.temperature.hotWaterStorage.properties.value.value
                              Temperatur Außensensor:		viessmannapi.0.xxx.0.features.heating.sensors.temperature.outside.properties.value.value
                              Statistik Kompressor Starts:	viessmannapi.0.xxx.0.features.heating.compressors.0.statistics.properties.starts.value
                              Statistik Kompressor Stunden:	viessmannapi.0.xxx.0.features.heating.compressors.0.statistics.properties.hours.value
                              Temperatursensoren der Heizkreise:   viessmannapi.0.xxxxxxx.0.features.heating.circuits.0.sensors.temperature.supply.properties.value.value
                               
                              Primärkreis Vorlauftemperatur:		viessmann.0.xxx.0.features.heating.primaryCircuit.sensors.temperature.supply.properties.value.value
                              Sekundärkreis Vorlauftemperatur:	viessmann.0.xxx.0.features.heating.secondaryCircuit.sensors.temperature.supply.properties.value.value
                              Sekundärkreis Rücklauftemperatur:	viessmann.0.xxx.0.features.heating.secondaryCircuit.sensors.temperature.return.properties.value.value
                              ?					viessmann.0.xxx.0.features.heating.sensors.temperature.return.properties.value.value
                              
                              
                              Heizung an (Kompressor): viessmannapi.0.x.0.features.heating.compressors.0.properties.active.value
                              
                              WW Temp viessmannapi.0.x.0.features.heating.dhw.sensors.temperature.hotWaterStorage.properties.value.value
                              
                              HW Temp  viessmannapi.0.x.0.features.heating.buffer.sensors.temperature.main.properties.value.value
                              
                              ZP features.heating.circuits.1.circulation.pump.properties.status.value
                              
                              WP_Aussentemperatur 0.features.heating.sensors.temperature.outside.properties.value.value
                              WP_gemeinsame Vorlauftemperatur 0.features.heating.boiler.sensors.temperature.commonSupply.properties.value.value
                              WP_Temperatur Pufferspeicher 0.features.heating.buffer.sensors.temperature.main.properties.value.value
                              WP_Heizkörper_Umwälzpumpe ON/OFF 0.features.heating.circuits.0.circulation.pump.properties.status.value
                              WP_Heizkörper_Umwälzpumpe_Frostschutz 0.features.heating.circuits.0.frostprotection.properties.status.value
                              WP_Heizkörper_Niveau 0.features.heating.circuits.0.heating.curve.properties.shift.value
                              WP_Heizkörper_Neigung 0.features.heating.circuits.0.heating.curve.properties.slope.value
                              WP_Heizkörper_Zeitplan 0.features.heating.circuits.0.heating.schedule.properties.entries.value
                              WP_Heizkörper_Komfort_Solltemperatur 0.features.heating.circuits.0.operating.programs.comfortHeating.properties.temperature.value
                              WP_Heizkörper_Normal_Solltemperatur 0.features.heating.circuits.0.operating.programs.normalHeating.properties.temperature.value
                              WP_Heizkörper_Reduziert_Solltemperatur 0.features.heating.circuits.0.operating.programs.reducedHeating.properties.temperature.value
                              WP_Vorlauftemperatur Heizkörper 0.features.heating.circuits.0.sensors.temperature.supply.properties.value.value
                              ???? 0.features.heating.circuits.0.operating.programs.comfortEnergySaving.properties.reason.value
                              ???? 0.features.heating.circuits.0.operating.programs.normalEnergySaving.properties.reason.value
                              WP_Heizkörper_FBH ON/OFF 0.features.heating.circuits.1.circulation.pump.properties.status.value
                              WP_FBH_Umwälzpumpe_Frostschutz 0.features.heating.circuits.1.frostprotection.properties.status.value
                              WP_FBH_Niveau 0.features.heating.circuits.1.heating.curve.properties.shift.value
                              WP_FBH_Neigung 0.features.heating.circuits.1.heating.curve.properties.slope.value
                              WP_FBH_Zeitplan 0.features.heating.circuits.1.heating.schedule.properties.entries.value
                              
                              WP_FBH_Komfort_Solltemperatur 0.features.heating.circuits.1.operating.programs.comfortHeating.properties.temperature.value
                              WP_FBH_Normal_Solltemperatur 0.features.heating.circuits.1.operating.programs.normalHeating.properties.temperature.value
                              WP_FBH_Reduziert_Solltemperatur 0.features.heating.circuits.1.operating.programs.reducedHeating.properties.temperature.value
                              
                              WP_FBH_Vorlauftemperatur 0.features.heating.circuits.1.sensors.temperature.supply.properties.value.value
                              
                              WP_Stromverbrauch_HEUTE 0.features.heating.power.consumption.summary.heating.properties.currentDay.value
                              WP_Stromverbrauch_MONAT 0.features.heating.power.consumption.summary.heating.properties.currentMonth.value
                              WP_Stromverbrauch_JAHR 0.features.heating.power.consumption.summary.heating.properties.currentYear.value
                              WP_Stromverbrauch_LETZTER_MONAT 0.features.heating.power.consumption.summary.heating.properties.lastMonth.value
                              WP_Stromverbrauch_LETZTEN_7_TAGE 0.features.heating.power.consumption.summary.heating.properties.lastSevenDays.value
                              WP_Stromverbrauch_LETZTES_JAHR 0.features.heating.power.consumption.summary.heating.properties.lastYear.value
                              WP_Primärkreis_Temperatur 0.features.heating.primaryCircuit.sensors.temperature.supply.properties.value.value
                              WP_Sekundärkreis_Temperatur 0.features.heating.secondaryCircuit.sensors.temperature.supply.properties.value.value
                              WP_Rücklauftemperatur 0.features.heating.sensors.temperature.return.properties.value.value
                              WP_Volumenstrom 0.features.heating.sensors.volumetricFlow.allengra.properties.value.value
                              Betriebsstunden Verdichter 0.features.heating.compressors.0.statistics.properties.hours.value
                              

                              Beispiel zum setzen eines Schedule:

                              var standard = '{"mon":[{"start":"00:00","end":"24:00","mode":"standard","position":0}],"tue":[{"start":"00:00","end":"24:00","mode":"standard","position":0}],\
                                            "wed":[{"start":"00:00","end":"24:00","mode":"standard","position":0}],"thu":[{"start":"00:00","end":"24:00","mode":"standard","position":0}],\
                                            "fri":[{"start":"00:00","end":"24:00","mode":"standard","position":0}],"sat":[{"start":"00:00","end":"24:00","mode":"standard","position":0}],\
                                            "sun":[{"start":"00:00","end":"24:00","mode":"standard","position":0}]}'
                               
                              setState("viessmannapi.0.xxxxxxx.0.features.ventilation.schedule.commands.setSchedule.setValue", JSON.parse(standard)); 
                              

                              Beispiel zirkulationspumpe

                              // 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
                              

                              Die Max. Heizleistung gibt es nicht als API Datenpunkt, kann nur am Gerät geändert werden.

                              Kostenlose Paket enthält:
                              23a824bd-cb36-4930-b8c0-cde030634129-image.png

                              T Offline
                              T Offline
                              Tontechniker
                              wrote on last edited by
                              #432

                              @tombox Hallo, hab mal eine Anfängerfrage. Werden die Datenpunkte automatisch angelegt, oder muss ich das manuell erledigen. Habe installiert wie angegeben und alle Punkte der Instanz sind grün.

                              T 1 Reply Last reply
                              0
                              • T Tontechniker

                                @tombox Hallo, hab mal eine Anfängerfrage. Werden die Datenpunkte automatisch angelegt, oder muss ich das manuell erledigen. Habe installiert wie angegeben und alle Punkte der Instanz sind grün.

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

                                @tontechniker wenn verknüpfte Installationen gefunden werden dan werden sie automatisch angelegt einfach im Protokoll nachschauen

                                T 2 Replies Last reply
                                0
                                • T tombox

                                  @tontechniker wenn verknüpfte Installationen gefunden werden dan werden sie automatisch angelegt einfach im Protokoll nachschauen

                                  T Offline
                                  T Offline
                                  Tontechniker
                                  wrote on last edited by
                                  #434

                                  @tombox Danke!

                                  1 Reply Last reply
                                  0
                                  • T Offline
                                    T Offline
                                    Triple-M
                                    wrote on last edited by Triple-M
                                    #435

                                    Welchen Datenpunkt muss man denn benutzen um den Betriebsmodus eines Heizkreises zu ändern? Ich habe folgenden probiert aber das klappt leider nicht:

                                    viessmannapi.0.93635.0.features.heating.circuits.2.operating.modes.active.properties.value.value

                                    Oder anders gefragt, was kann man machen um ein Heizkreis herunterzufahren z.B. wenn man das Haus verlässt oder so?

                                    1 Reply Last reply
                                    0
                                    • T Offline
                                      T Offline
                                      tombox
                                      wrote on last edited by
                                      #436

                                      @triple-m geändert werden kann nur über setValue

                                      1 Reply Last reply
                                      0
                                      • T Offline
                                        T Offline
                                        Triple-M
                                        wrote on last edited by Triple-M
                                        #437

                                        Ich habe, mit Hilfe eines Users aus dem Loxforum, ein Blockly erstellt das den Wert des oben genannten Datenpunkts z.B. auf "forcedReduced" setzt wenn unter Loxone ein Schalter aktiviert wird. Das klappt soweit auch, der Wert wird geändert/geschrieben aber bei der Heizung tut sich nichts und der Wert "forcedReduced" wird nach ein paar Minuten, wenn der Adapter sich wieder mit der Cloud verbindet, wieder überschrieben.

                                        Sorry ich bin da nicht so firm drin in dem Thema, was heisst denn setValue? Ist das nicht das was das Script von oben macht?

                                        T 1 Reply Last reply
                                        0
                                        • T Triple-M

                                          Ich habe, mit Hilfe eines Users aus dem Loxforum, ein Blockly erstellt das den Wert des oben genannten Datenpunkts z.B. auf "forcedReduced" setzt wenn unter Loxone ein Schalter aktiviert wird. Das klappt soweit auch, der Wert wird geändert/geschrieben aber bei der Heizung tut sich nichts und der Wert "forcedReduced" wird nach ein paar Minuten, wenn der Adapter sich wieder mit der Cloud verbindet, wieder überschrieben.

                                          Sorry ich bin da nicht so firm drin in dem Thema, was heisst denn setValue? Ist das nicht das was das Script von oben macht?

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

                                          @triple-m
                                          viessmannapi.0.93635.0.features.heating.circuits.2.operating.modes.active.properties.value.value
                                          Ist der IST Wert

                                          der soll wert sollte irgendwo hier sein muss man suchen und probieren
                                          viessmannapi. 0.93635.0.features.heating.circuits.2.operating.modes.commands.xxxxxx.setValue

                                          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

                                          521

                                          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