Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. homeconnect Spülmaschine per Script starten

    NEWS

    • [erledigt] 15. 05. Wartungsarbeiten am ioBroker Forum

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    homeconnect Spülmaschine per Script starten

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

      Hallo zusammen!

      Ich habe folgendes Problem: Ich kann die Spülmaschine nicht per Script starten. Wenn ich aber bei den Objekten unter
      programs.active.BSH_Common_Root_ActiveProgram aus dem Dropdown den Wert "Auto 45-65°" auswähle, dann startet die Maschine. Versuche ich das per Blockly, dann kommt folgender Fehler:
      "programs/active/options: There is no program active."

      Mein Script sieht so aus:
      BBlockly SpüMa.png

      Bzw hier als Code:

      on({id: 'senec.0.ENERGY.GUI_GRID_POW', change: "ne"}, async function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        if (getState("homeconnect.0.011080424772004684.status.BSH_Common_Status_RemoteControlStartAllowed").val == true && getState("senec.0.ENERGY.GUI_GRID_POW").val < -100) {
          setState("homeconnect.0.011080424772004684.settings.BSH_Common_Setting_PowerState"/*Energiezustand*/, 'An', true);
          setState("homeconnect.0.011080424772004684.programs.selected.BSH_Common_Root_SelectedProgram"/*BSH_Common_Root_SelectedProgram*/, 'Auto 45-65°', true);
          setState("homeconnect.0.011080424772004684.programs.active.BSH_Common_Root_ActiveProgram"/*BSH_Common_Root_ActiveProgram*/, 'Auto 45-65°', true);
        }
      });
      

      Was ich nicht verstehe ist, ich kann über setState den programs.selected.BSH_Common_Root_SelectedProgram verändern, der in den Objekten auch als Dropdown angezeigt wird, aber bei active.BSH_Common_Root_ActiveProgram kommt dann im Log der Fehler.

      Da ich definitiv kein Programmierer bin, kann es auch daran liegen, dass ich das versuche falsch zu setzen. Ich bin für jeden Tipp dankbar!

      Beste Grüße

      arteck 1 Reply Last reply Reply Quote 0
      • arteck
        arteck Developer Most Active @paba42 last edited by arteck

        @paba42 du musst eine number auswählen nicht das Programm... schau mal in den RAW Objekt von dem BSH_Common_Root_ActiveProgram auf welcher Stelle es das was du auswählen willst steht..

        setState("homeconnect.0.011080424772004684.programs.active.BSH_Common_Root_ActiveProgram"/*BSH_Common_Root_ActiveProgram*/, 'Auto 45-65°', true);
        

        also hier anstatt 'Auto 45-65°' muss eine Zahl rein

        paul53 P 2 Replies Last reply Reply Quote 0
        • paul53
          paul53 @arteck last edited by

          @arteck sagte: anstatt 'Auto 45-65°' muss eine Zahl rein

          ... und anstelle der Blöcke "aktualisiere" die Blöcke "steuere" verwenden!

          1 Reply Last reply Reply Quote 0
          • P
            paba42 @arteck last edited by

            @arteck der Typ ist aber als String definiert, oder sehe ich das falsch?

            Wenn ich das Objekt bearbeite steht da folgendes:

            {
              "type": "state",
              "common": {
                "name": "BSH_Common_Root_ActiveProgram",
                "type": "string",
                "role": "indicator",
                "write": true,
                "read": true,
                "states": {
                  "Dishcare.Dishwasher.Program.Intensiv70": "Intensiv 70°",
                  "Dishcare.Dishwasher.Program.Auto2": "Auto 45-65°",
                  "Dishcare.Dishwasher.Program.Eco50": "Eco 50°",
                  "Dishcare.Dishwasher.Program.PreRinse": "Vorspülen",
                  "Dishcare.Dishwasher.Program.Quick65": "Express 65° - 1h",
                  "Dishcare.Dishwasher.Program.MachineCare": "Maschinenpflege"
                }
              },
              "native": {},
              "from": "system.adapter.homeconnect.0",
              "user": "system.user.admin",
              "ts": 1650857019858,
              "_id": "homeconnect.0.011080424772004684.programs.active.BSH_Common_Root_ActiveProgram",
              "acl": {
                "object": 1636,
                "state": 1636,
                "owner": "system.user.admin",
                "ownerGroup": "system.group.administrator"
              }
            }
            

            Wie gesagt den BSH_Common_Root_SelectedProgramkann ich auch ändern, und der ist so konfiguriert:

            {
              "type": "state",
              "common": {
                "name": "BSH_Common_Root_SelectedProgram",
                "type": "string",
                "role": "indicator",
                "write": true,
                "read": true,
                "states": {
                  "Dishcare.Dishwasher.Program.Intensiv70": "Intensiv 70°",
                  "Dishcare.Dishwasher.Program.Auto2": "Auto 45-65°",
                  "Dishcare.Dishwasher.Program.Eco50": "Eco 50°",
                  "Dishcare.Dishwasher.Program.PreRinse": "Vorspülen",
                  "Dishcare.Dishwasher.Program.Quick65": "Express 65° - 1h",
                  "Dishcare.Dishwasher.Program.MachineCare": "Maschinenpflege"
                }
              },
              "native": {},
              "from": "system.adapter.homeconnect.0",
              "user": "system.user.admin",
              "ts": 1650857019858,
              "_id": "homeconnect.0.011080424772004684.programs.selected.BSH_Common_Root_SelectedProgram",
              "acl": {
                "object": 1636,
                "state": 1636,
                "owner": "system.user.admin",
                "ownerGroup": "system.group.administrator"
              }
            }
            
            arteck 1 Reply Last reply Reply Quote 0
            • arteck
              arteck Developer Most Active @paba42 last edited by arteck

              @paba42 sagte in homeconnect Spülmaschine per Script starten:

              Dishcare.Dishwasher.Program.Auto2

              dann so Dishcare.Dishwasher.Program.Auto2

              setState("homeconnect.0.011080424772004684.programs.selected.BSH_Common_Root_SelectedProgram"/*BSH_Common_Root_SelectedProgram*/, 'Dishcare.Dishwasher.Program.Auto2', true);
              

              und vergiss das steuere nicht was der @paul53 geschrieben hat

              immer den indicator nicht den Text den du letztendlich in der combobox siehst

              paul53 P 2 Replies Last reply Reply Quote 0
              • paul53
                paul53 @arteck last edited by

                @arteck sagte: vergiss das steuere nicht

                Dann entferne mal true am Ende von setState().

                1 Reply Last reply Reply Quote 0
                • P
                  paba42 @arteck last edited by

                  @arteck @paul53 danke Euch!

                  Ich hab das jetzt mal so angepasst:

                  on({id: 'senec.0.ENERGY.GUI_GRID_POW', change: "ne"}, async function (obj) {
                    var value = obj.state.val;
                    var oldValue = obj.oldState.val;
                    if (getState("homeconnect.0.011080424772004684.status.BSH_Common_Status_RemoteControlStartAllowed").val == true && getState("senec.0.ENERGY.GUI_GRID_POW").val < -100) {
                      setState("homeconnect.0.011080424772004684.settings.BSH_Common_Setting_PowerState"/*Energiezustand*/, 'An');
                      setState("homeconnect.0.011080424772004684.programs.selected.BSH_Common_Root_SelectedProgram"/*BSH_Common_Root_SelectedProgram*/, 'Dishcare.Dishwasher.Program.Auto2');
                      setState("homeconnect.0.011080424772004684.programs.active.BSH_Common_Root_ActiveProgram"/*BSH_Common_Root_ActiveProgram*/, 'Dishcare.Dishwasher.Program.Auto2');
                    }
                  });
                  

                  Testen kann ich das gerade nicht, weil einen höhere Instanz nicht mehr warten wollte, und die Maschine kurzerhand manuell gestartet hat.

                  Wo ist denn der Unterschied zwischen steuere und aktualisiere?

                  arteck 1 Reply Last reply Reply Quote 0
                  • arteck
                    arteck Developer Most Active @paba42 last edited by

                    @paba42 sagte in homeconnect Spülmaschine per Script starten:

                    setState("homeconnect.0.011080424772004684.settings.BSH_Common_Setting_PowerState"/Energiezustand/, 'An');

                    ist der richtig ? check mal das RAW object

                    P 1 Reply Last reply Reply Quote 0
                    • P
                      paba42 @arteck last edited by

                      @arteck
                      Nee ist er nicht, aber es gab keine Fehlermeldung im Log. Ich teste das heute Abend noch mal.

                      {
                        "type": "state",
                        "common": {
                          "name": "Energiezustand",
                          "type": "string",
                          "role": "indicator",
                          "write": true,
                          "read": true,
                          "unit": "",
                          "states": {
                            "BSH.Common.EnumType.PowerState.Off": "Aus",
                            "BSH.Common.EnumType.PowerState.On": "An"
                          }
                        },
                        "native": {},
                        "from": "system.adapter.homeconnect.0",
                        "user": "system.user.admin",
                        "ts": 1650880220130,
                        "_id": "homeconnect.0.011080424772004684.settings.BSH_Common_Setting_PowerState",
                        "acl": {
                          "object": 1636,
                          "state": 1636,
                          "owner": "system.user.admin",
                          "ownerGroup": "system.group.administrator"
                        }
                      }
                      
                      arteck 1 Reply Last reply Reply Quote 0
                      • arteck
                        arteck Developer Most Active @paba42 last edited by

                        @paba42 doch ist der wohl... was hab ich vorer gesagt..

                        der indikator und der ist nicht AN AUS sondern

                        BSH.Common.EnumType.PowerState.Off
                        

                        und

                        BSH.Common.EnumType.PowerState.On
                        
                        P 1 Reply Last reply Reply Quote 0
                        • P
                          paba42 @arteck last edited by

                          @arteck Danke für die Hilfe.

                          Ich habe das Script jetzt laufen, muss jetzt nur noch die Startbedingungen anpassen. Das ist der aktuelle Stand:

                          on({id: 'senec.0.ENERGY.GUI_GRID_POW', change: "ne"}, async function (obj) {
                            var value = obj.state.val;
                            var oldValue = obj.oldState.val;
                            if (getState("homeconnect.0.011080424772004684.status.BSH_Common_Status_OperationState").val != 'BSH.Common.EnumType.OperationState.Run') {
                              if (getState("homeconnect.0.011080424772004684.status.BSH_Common_Status_RemoteControlStartAllowed").val == true && getState("senec.0.ENERGY.GUI_GRID_POW").val < -100) {
                                setState("homeconnect.0.011080424772004684.settings.BSH_Common_Setting_PowerState"/*Energiezustand*/, 'BSH.Common.EnumType.PowerState.On');
                                setState("homeconnect.0.011080424772004684.programs.selected.BSH_Common_Root_SelectedProgram"/*BSH_Common_Root_SelectedProgram*/, 'Dishcare.Dishwasher.Program.Auto2');
                                setState("homeconnect.0.011080424772004684.programs.active.BSH_Common_Root_ActiveProgram"/*BSH_Common_Root_ActiveProgram*/, 'Dishcare.Dishwasher.Program.Auto2');
                              }
                            }
                          });
                          
                          S 1 Reply Last reply Reply Quote 0
                          • S
                            Singular75 @paba42 last edited by

                            @paba42 Kurze Frage zum Skript: Wie stellst Du sicher, dass die Spülmaschine auch nur angeht, wenn sie gefüllt ist? Dafür gibts ja eigentlich keinen passenden Zustand, oder? Und so würde sie immer angehen, wenn PV-Überschuss da ist, egal ob leer, gefüllt und mit oder ohne Reinigungstab...

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

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            823
                            Online

                            31.6k
                            Users

                            79.5k
                            Topics

                            1.3m
                            Posts

                            4
                            12
                            683
                            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