Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test ViessmannAPI v2.0.0

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Test ViessmannAPI v2.0.0

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      mading last edited by mading

      Hi,

      bei mir kommen seit zwei Tagen keine Daten mehr über die API rein. Ich dachte eigentlich, dass es an Wartungsarbeiten liegt, allerdings kann ich über die vicare-App problemlos zugreifen. Adapterversion ist 2.4.0.

      //edit
      habe gerade gesehen, dass ich über den 1450 calls pro Tag bin. Hatte aber nichts an der Config geändert, das Abfrageinterfall müsste "Update device status in minutes" sein? Es war auf 1min gestellt. Die free API erlaubt 1450 calls pro Tag, also jede 2. Minute (1450 / 24h*60min).

      21a9a5a6-bb56-4851-9de4-8a0cff6faa3c-grafik.png

      Folgendes debug log schreibt der Adapter:

      iessmannapi.0
      	2023-12-24 10:00:45.149	error	{"error":"server_error","error_description":"Unexpected server error"}
      viessmannapi.0
      	2023-12-24 10:00:45.149	error	AxiosError: Request failed with status code 500
      viessmannapi.0
      	2023-12-24 10:00:38.201	debug	" \n\n\n\n\n\n \n\n\n\n \n\n\n \n <!DOCTYPE html>\n<html>\n <head>\n <title>Viessmann Login</title>\n <meta name='viewport' content='width=device-width, initial-scale=1'>\n <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">\n <meta name=\"color-scheme\" content=\"dark light\">\n\n <link rel=\"icon\" href=\"/idp/sso/v1/nevislogrend/applications/IDP_SSO_V1/webdata/images/favicon.ico\" type=\"image/x-icon\">\n <link href=\"/idp/sso/v1/nevislogrend/applications/IDP_SSO_V1/webdata/css/material-components-web.min.css\" rel=\"stylesheet\">\n <script src=\"/idp/sso/v1/nevislogrend/applications/IDP_SSO_V1/webdata/js/material-components-web.min.js\"></script>\n <link href=\"/idp/sso/v1/nevislogrend/applications/IDP_SSO_V1/webdata/css/iam.css\" rel=\"stylesheet\">\n <script src=\"/idp/sso/v1/nevislogrend/applications/IDP_SSO_V1/webdata/js/iam.js\"></script>\n <link href=\"/idp/sso/v1/nevislogrend/applications/IDP_SSO_V1/webdata/css/icon.css\" rel=\"stylesheet\">\n <script src=\"/idp/sso/v1/nevislogrend/applications/IDP_SSO_V1/webdata/js/jquery-3.6.3.min.js\"></script>\n \n </head>\n <body onload=\"loadForms();\">\n <div class=\"mdc-panel-left\" id=\"mdc-panel-left\">\n\n<header class=\"mdc-top-app-bar\">\n <section class=\"mdc-top-section\" >\n <svg width=\"147\" height=\"31\" viewBox=\"0 0 147 31\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M65.2066 0.00829679L53.8352 0C53.8352 0 49.3753 0.109502 49.3753 4.5076C49.3753 9.03172 53.8352 8.92957 53.8352 8.92957L60.5928 8.92036C60.5928 8.92036 61.4846 8.92036 61.4846 9.85427C61.4846 10.6631 60.59 10.6631 60.59 10.6631H49.6867V14.4585L60.9844 14.4594C60.9844 14.4594 65.7934 14.6424 65.7934 9.69881C65.7934 5.44426 60.9844 5.31914 60.9844 5.31914H54.5805C54.5805 5.31914 53.5864 5.31914 53.5864 4.50849C53.5864 3.72457 54.5805 3.72458 54.5805 3.72458H65.2066V0.00829679ZM0 7.22562L7.41078 21.0851H13.3816L20.6948 7.22652H14.9036L10.7735 15.6547C10.5598 16.0898 10.5598 16.5775 10.5598 16.5775C10.5598 16.5775 10.5598 16.0898 10.3405 15.6427L6.2113 7.22652L0 7.22562ZM28.0705 7.22657V21.0667H22.9122V7.22657H28.0705ZM87.4235 7.22657L80.4651 7.22753L78.3231 12.9561C78.1471 13.4299 78.0955 14.3353 78.0955 14.3353C78.0955 14.3353 78.0209 13.4161 77.8505 12.9561L75.726 7.22753L68.7933 7.22657L68.7868 21.0685L73.2358 21.0667V12.8328C73.2358 12.8328 73.2358 13.3213 73.4255 13.7621L76.5745 21.0685H79.6166L82.7655 13.5927C82.9525 13.1493 82.9525 12.6607 82.9525 12.6607V21.0667H87.4235V7.22657ZM120.817 21.0695L125.912 21.0667V7.22657H121.044V14.8257C121.044 14.8257 121.044 14.3371 120.724 13.9654L114.94 7.22657H109.811V21.0667H114.94V13.4685C114.94 13.4685 114.94 13.9562 115.246 14.3271L120.817 21.0695ZM108.145 21.0686L101.138 7.22846H95.6904L88.6831 21.0686H93.3899H94.1307L95.426 18.5089L101.401 18.5098L102.698 21.0686H102.911V21.0695H107.673L107.672 21.0686H108.145ZM96.737 15.0052C96.737 15.0052 97.9825 12.5375 98.1981 12.1096C98.4137 11.6818 98.4137 11.1941 98.4137 11.1941C98.4137 11.1941 98.4137 11.6818 98.6302 12.1114L100.098 15.0189L96.737 15.0052ZM37.6209 17.3753L37.6218 15.455H45.3587V12.3405H37.6218V10.6254H47.0392V7.22753L32.7326 7.22657V21.0667H47.415V17.3762L37.6209 17.3753ZM141.277 21.0714L146.372 21.0695V7.22846H141.504V14.8276C141.504 14.8276 141.504 14.339 141.185 13.9673L135.4 7.22846H130.271V21.0695H135.4V13.4704C135.4 13.4704 135.4 13.959 135.707 14.3298L141.277 21.0714ZM65.2103 16.5478L53.8389 16.5405C53.8389 16.5405 49.3781 16.649 49.3781 21.048C49.3781 25.5712 53.8389 25.4691 53.8389 25.4691L60.5956 25.4608C60.5956 25.4608 61.4874 25.4608 61.4874 26.3947C61.4874 27.2035 60.5938 27.2035 60.5938 27.2035H49.6904V30.9989H60.9872C60.9872 30.9989 65.7972 31.1829 65.7972 26.2392C65.7972 21.9837 60.9872 21.8595 60.9872 21.8595L54.5843 21.8586C54.5843 21.8586 53.5902 21.8586 53.5902 21.048C53.5902 20.2641 54.5843 20.2641 54.5843 20.2641L65.2103 20.265V16.5478Z\" fill=\"#FF3E17\"/>\n </svg>\n <div class=\"circle\"></div>\n <div class=\"mdc-fsp-text-element mdc-iam-font-viessmann-pro mdc-iam-font-account\">Account</div>\n <div class=\"mdc-fsp-button mdc-fsp-button-header\" id=\"CreateAccountButton\"></div>\n </section> \n</header>\n \n <main class=\"bg-container\">\n <section class=\"inside\"> \n<form class=\"b2b-form-space\" id=\"Name\" name=\"Name\" method=\"POST\" target=\"_self\" action=\"https://iam.viessmann.com/idp/v3/authorize?client_id=b00ea3266622b0fad3b3082944978dcb&response_type=code&scope=IoT+User+offline_access&code_challenge_method=S256&code_challenge=yfeKbkQYPyAwrXEN9efOFDgrHBMR76vpIZ0Yg8u6JNs&redirect_uri=http:%2F%2Flocalhost:4200%2F\" autocomplete=\"off\" accept-charset=\"UTF-8\" onchange=\"spez.onformchange();\">\n\n\n\t\n \n <div class=\"mdl-grid mdl-grid--no-spacing\">\n <div class=\"normal-text font-size-26px opacity-87 --mdc-theme-primary mdc-iam-font-viessmann-pro mdc-iam-font-big mdc-iam-info-title mdc-iam-font-title\"><p>Login</p></div>\n</div>\n\n\n\n \n\n\n\n\n\n\n</label>\n\n\n\n\n\t\t \n <div class=\"mdc-fsp-error-panel\">\n <div class=\"mdc-fsp-error-panel-inside\">\n <svg viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M10 0C4.47 0 0 4.47 0 10C0 15.53 4.47 20 10 20C15.53 20 20 15.53 20 10C20 4.47 15.53 0 10 0ZM15 13.59L13.59 15L10 11.41L6.41 15L5 13.59L8.59 10L5 6.41L6.41 5L10 8.59L13.59 5L15 6.41L11.41 10L15 13.59Z\" fill=\"#A71C00\"/>\n </svg> \n <div class=\"mdc-fsp-error-text\">Login failed; please check the details you have entered.</div>\n </div>\n </div>\n\n\n\n\t\t \n <noscript>\n <div class=\"mdc-fsp-jsnotenabled-panel\">\n <div class=\"mdc-fsp-jsnotenabled-panel-inside\">\n <svg viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M10 0C4.48 0 0 4.48 0 10C0 15.52 4.48 20 10 20C15.52 20 20 15.52 20 10C20 4.48 15.52 0 10 0ZM11 15H9V13H11V15ZM11 11H9V5H11V11Z\" fill=\"#B36F01\"/>\n </svg>\n <div class=\"mdc-fsp-jsnotenabled-text\">Javascript in your browser is disabled. This page requires javascript to work properly.<br>Please enable javascript in order to use this page.</div>\n </div>\n </div>\n </noscript>\n\n \n \n\n\n \n \n\n\n \n\n\n\n\n\n\n<label class=\"mdc-text-field mdc-text-field--filled field text required\" for=\"isiwebuserid\">\n <span class=\"mdc-text-field__ripple\"></span>\n <span class=\"mdc-floating-label\" id=\"isiwebuserid-id\">User name</span>\n <input type=\"password\" name=\"hidden-password\" value=\"00\" tabindex=\"-1\" style=\"display:none\" autocomplete=\"off\">\n <input name=\"isiwebuserid\" value=\"mhornstein@gmx.net\" class=\"mdc-text-field__input\" type=\"text\" aria-labelledby=\"isiwebuserid-id\" autocorrect=\"off\" autocapitalize=\"off\" autocomplete=\"off\" spellcheck=\"false\" size=\"20\" maxlength=\"255\" tabindex=\"6\"\n required\n onkeyup=\"spez.onformchange();\"\n >\n</label>\n\n\n\n\n \n\n\n\n\n\n\n</label>\n\n\n<div class=\"mdc-form-field mdl-fsp-checkbox\">\n <div class=\"mdc-checkbox\">\n <input type=\"checkbox\"\n class=\"mdc-checkbox__native-control\"\n id=\"stayloggedin\"\n value=\"Stay logged on\"\n name=\"stayloggedin\"\n />\n <div class=\"mdc-checkbox__background\">\n <svg class=\"mdc-checkbox__checkmark\"\n viewBox=\"0 0 24 64\">\n <path class=\"mdc-checkbox__checkmark-path\"\n fill=\"none\"\n d=\"M1.73,12.91 8.1,19.28 22.79,4.59\"/>\n </svg>\n <div class=\"mdc-checkbox__mixedmark\"></div>\n </div>\n <div class=\"mdc-checkbox__ripple\"></div>\n </div>\n <label for=\"stayloggedin\" class=\"mdc-iam-font-small\">Stay logged on</label>\n </div>\n\n\n\n\n\n \n\n\n\n\n\n\n</label>\n\n\n\n\n \t\t<div class=\"mdc-fsp-button mdc-fsp-button-submitLogin\">\n\n \t\t\t<button class=\"mdc-button mdc-button--raised mdc-button-big mdc-button-big-submit mdc-button-big-submitLogin\" type=\"submit\" name=\"submitLogin\" value=\"Next\" \n\t\t\t\tid=\"submitButton\" onclick=\"return spez.formSubmit();\" disabled=\"true\"\n\t\t\t>\n\t\t\t\t<span class=\"mdc-button__label mdc-iam-font-big\">Next</span>\n\t\t\t</button>\n\t\t</div>\n \n\n\n\n\n\n \n\n\n\n\n\n \n\n\n\n\n\n \n\n\n\n\n\n \n\n\n\n\n\n\n</label>\n\n\n\n \n\n\n\n\n\t<div class=\"mdc-fsp-button-footer\" id=\"CreateAccountButtonMobile\"></div>\n\t\n\n \n</form>\n\t\n<script type=\"text/javascript\">\n\tspez.formEl = document.getElementById( 'Name' );\n\tspez.focousElement(document.forms['Name']);\n\tspez.footerCreateButton();\n spez.onformchange();\n\tfunction gcapSuccess(token)\n\t{\n\t\tdocument.getElementById(\"Name\").submit();\n\t}\n</script>\n </section>\n </main>\n </div>\n \n <div class=\"mdc-panel-right\" id=\"mdc-panel-right\">\n </div>\n <script>\n var leftPanel = document.getElementById( \"mdc-panel-left\" );\n leftPanel.setAttribute( \"style\", \"width: 38%;\");\n </script>\n <style>\n div.mdl-grid > div.normal-text{\n text-align: left !important;\n }\n .inside{\n margin: auto 32px !important;\n max-width: none;\n }\n </style>\n \n\t</body>\n</html>\n\n\n\n "
      viessmannapi.0
      	2023-12-24 10:00:37.580	info	starting. Version 2.4.0 (non-npm: TA2k/ioBroker.viessmannapi#0db2d31c89eb0c56cd092fe1fb5c88fbc59cf12b) in /opt/iobroker/node_modules/iobroker.viessmannapi, node: v18.19.0, js-controller: 5.0.17
      viessmannapi.0
      	2023-12-24 10:00:37.450	debug	Plugin sentry Initialize Plugin (enabled=true)
      viessmannapi.0
      	2023-12-24 10:00:37.425	debug	States connected to redis: 127.0.0.1:9000
      viessmannapi.0
      	2023-12-24 10:00:37.353	debug	States create User PubSub Client
      viessmannapi.0
      	2023-12-24 10:00:37.353	debug	States create System PubSub Client
      viessmannapi.0
      	2023-12-24 10:00:37.336	debug	Redis States: Use Redis connection: 127.0.0.1:9000
      viessmannapi.0
      	2023-12-24 10:00:37.301	debug	Objects connected to redis: 127.0.0.1:9001
      viessmannapi.0
      	2023-12-24 10:00:37.299	debug	Objects client initialize lua scripts
      viessmannapi.0
      	2023-12-24 10:00:37.245	debug	Objects create User PubSub Client
      viessmannapi.0
      	2023-12-24 10:00:37.245	debug	Objects create System PubSub Client
      viessmannapi.0
      	2023-12-24 10:00:37.244	debug	Objects client ready ... initialize now
      viessmannapi.0
      	2023-12-24 10:00:37.216	debug	Redis Objects: Use Redis connection: 127.0.0.1:9001
      viessmannapi.0
      	2023-12-24 10:00:34.260	info	terminating
      viessmannapi.0
      	2023-12-24 10:00:33.758	info	Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
      viessmannapi.0
      	2023-12-24 10:00:33.758	info	terminating
      viessmannapi.0
      	2023-12-24 10:00:33.757	info	Got terminate signal TERMINATE_YOURSELF
      
      T 1 Reply Last reply Reply Quote 0
      • T
        tombox @mading last edited by

        @mading Fehler 500 ist ein Problem bei Viessmann
        1 Aktualisierung pro Minute bei einem Gerät sind 24*60=1440

        1 Reply Last reply Reply Quote 0
        • J
          juggi1962 last edited by

          Guten Morgen.
          Haben alle keine Verbindung mehr zum Viessmann Server oder ist das nur bei einigen so?
          habe auch diese Meldung seit 2 Tagen im Log.
          Egal ob mit Adapter Version 2.3.0 oder 2.4.0
          Schöne Feiertage aus Tirol

          viessmannapi.0
          2023-12-25 10:24:14.244	error	{"error":"server_error","error_description":"Unexpected server error"}
          
          viessmannapi.0
          2023-12-25 10:24:14.242	error	AxiosError: Request failed with status code 500
          
          viessmannapi.0
          2023-12-25 10:24:07.419	error	Please check username/password and deactivated Google Captcha in the Viessmann Settings
          
          Neuschwansteini 1 Reply Last reply Reply Quote 0
          • Neuschwansteini
            Neuschwansteini @juggi1962 last edited by

            @juggi1962

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

            J M 2 Replies Last reply Reply Quote 0
            • J
              juggi1962 @Neuschwansteini last edited by juggi1962

              @ilovegym Hmmmmm, ja hab ich alles schon versucht

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

              Schöne Feiertage Gruß Jürgen.

              Neuschwansteini M 2 Replies Last reply Reply Quote 1
              • Neuschwansteini
                Neuschwansteini @juggi1962 last edited by

                @juggi1962

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

                1 Reply Last reply Reply Quote 0
                • M
                  mading @juggi1962 last edited by

                  @juggi1962 sagte in Test ViessmannAPI v2.0.0:

                  @ilovegym Hmmmmm, ja hab ich alles schon versucht

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

                  Schöne Feiertage Gruß Jürgen.

                  Danke, hatte das gleiche Problem, nun gehts auch wieder

                  1 Reply Last reply Reply Quote 0
                  • M
                    m4rgott @mading last edited by m4rgott

                    @mading

                    Hallo zusammen,

                    Gab es hierzu inzwischen eine Lösung?

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

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

                    Blockly sieht wie folgt aus:

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

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

                    Log-Auszug:

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

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

                    Wäre super einen Hinweis von Euch zu bekommen.

                    Danke vorab.

                    M 1 Reply Last reply Reply Quote 0
                    • M
                      m4rgott @m4rgott last edited by

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

                      R B 2 Replies Last reply Reply Quote 0
                      • R
                        Ronniboy @m4rgott last edited by

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

                        M 1 Reply Last reply Reply Quote 0
                        • M
                          m4rgott @Ronniboy last edited by m4rgott

                          @ronniboy
                          Hi,

                          ich habe mich mit trial and error rangegeben.

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

                          Bei mir habe ich jetzt 2 Dinge "eingebaut".

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

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

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

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

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

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

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

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

                          Ich hoffe, das hilft Dir weiter.

                          1 Reply Last reply Reply Quote 0
                          • S
                            Schweiz last edited by

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

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

                            zugang mit der ViCare funktioniert...

                            MFG Schweizer

                            1 Reply Last reply Reply Quote 0
                            • S
                              Schweiz last edited by

                              @schweiz
                              erledigt...

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

                              MFG Schweizer

                              1 Reply Last reply Reply Quote 0
                              • I
                                io2345 @Tiger VI last edited by

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

                                1 Reply Last reply Reply Quote 0
                                • I
                                  io2345 @mading last edited by io2345

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

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

                                  N M 2 Replies Last reply Reply Quote 0
                                  • N
                                    nobbiman @io2345 last edited by nobbiman

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

                                    1 Reply Last reply Reply Quote 0
                                    • M
                                      mading @io2345 last edited by

                                      @io2345 sagte in Test ViessmannAPI v2.0.0:

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

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

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

                                      1 Reply Last reply Reply Quote 0
                                      • I
                                        io2345 @mading last edited by io2345

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

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

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

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

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

                                        1 Reply Last reply Reply Quote 0
                                        • B
                                          Bastler52 @m4rgott last edited by Bastler52

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

                                          M 1 Reply Last reply Reply Quote 0
                                          • M
                                            m4rgott @Bastler52 last edited by

                                            Hi @bastler52

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

                                            Ich habe nur die Anlagennummer durch "xxx" ersetzt.

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

                                            Ich hoffe das hilft Dir weiter.

                                            B 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            779
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            125
                                            791
                                            184089
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo