Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [gelöst] Surveillance Station Home Mode steuern

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    23
    1
    1.3k

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.5k

[gelöst] Surveillance Station Home Mode steuern

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
50 Beiträge 12 Kommentatoren 8.3k Aufrufe 7 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • M Offline
    M Offline
    MKaiser96
    schrieb am zuletzt editiert von
    #1

    Hallo,

    ich beschäftige mich seit ein paar Tagen mit ioBroker auf dem Raspberry Pi. Da ich Anfänger in Sachen in Programmierung bin, nutze ich Blockly um Scripte zu erstellen.

    Soweit laufen auch die ersten Programme zur Anwesenheitserkennung über Ping. Doch nun stehe ich vor einem Problem.

    Ich möchte bei Anwesenheit die Surveillance Station in den Home Mode schalten. Dies kann ich händisch über http-Befehle im Browser durchführen. Als erstes einen Login-Befehl, dann die Anweisung zum schalten des Home Modes und zum Schluss der Logout-Befehl.

    Dazu habe ich ein Script mit Hilfe von Brookly erstellt, doch leider funktioniert das nicht.

    7256_blockly.jpg

    Ich hoffe ihr versteht mein Script und könnt mir bei dem Problem helfen.

    Gruß

    Markus

    1 Antwort Letzte Antwort
    0
    • wendy2702W Online
      wendy2702W Online
      wendy2702
      schrieb am zuletzt editiert von
      #2

      Baue doch mal ein paar logging Bausteine vor die Einzelnen sachen um zu sehen was ausgeführt wird.

      Bitte keine Fragen per PN, die gehören ins Forum!

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      1 Antwort Letzte Antwort
      0
      • M Offline
        M Offline
        MKaiser96
        schrieb am zuletzt editiert von
        #3

        Wie genau meinst du das? Wo finde ich die Logging-Bausteine?

        Ich habe textweise E-Mail-Bausteine eingefügt, um zu sehen, ob die einzelnen Bedingungen abgearbeitet werden. Dies funktioniert. Es scheint also ein Problem mit den http-URL zu geben.

        Hier nochmal die http-Befehle:

        http://IP:PORT/webapi/auth.cgi?api=SYNO.API.Auth&method=Login&version=3&account=BENUTZERNAME&passwd=PASSWORT&session=SurveillanceStation&format=sid
        http://IP:PORT/webapi/entry.cgi?api=SYNO.SurveillanceStation.HomeMode&version=1&method=Switch&on=true
        http://IP:PORT/webapi/entry.cgi?api=SYNO.SurveillanceStation.HomeMode&version=1&method=Switch&on=false
        http://IP:PORT/webapi/auth.cgi?api=SYNO.API.Auth&method=Logout&version=3
        
        
        1 Antwort Letzte Antwort
        0
        • M Offline
          M Offline
          mariohbs
          schrieb am zuletzt editiert von
          #4

          Die Bausteine findest du unter System und dort "debug output". Diese kannst du an verschiedenen Stellen einfügen und siehst dann im Log ob das Script überhaupt gelaufen ist und welche Punkte durchlaufen wurden.

          Was mir bei deinem Blockly auffällt ist der zeitliche Ablauf. Ich habe zwar mit dem "requests" Baustein noch nichts gemacht, vermute aber mal, dass wenn es ohne "mit Ergebnissen" ausgeführt wird einfach nur die Befehle abschießt und nicht auf ein Ergebnis wartet. Damit würden nach meinem Verständnis die Befehle nahezu gleichzeitig gesendet.

          Ich würde also mal den Haken "mit Ergebnissen" setzten, ein paar Debug Bausteine einfügen und mal schaun was dann so passiert ;)

          Gruß

          Mario

          1 Antwort Letzte Antwort
          0
          • M Offline
            M Offline
            MKaiser96
            schrieb am zuletzt editiert von
            #5

            Das Script an sich wird richtig abgearbeitet. Als Alternative zum Debug habe ich E-Mail-Blöcke eingebaut, um zu sehen, ob die Bedingungen richtig verarbeitet werden. Auch mit dem Haken "mit Ergebnissen" erhalte ich keine Schaltung des Home Modes an der Surveillance Station. Also scheint ein Problem mit dem Senden des HTTP-Befehls vorzuliegen.

            Gibt es denn noch andere Möglichkeiten, über Blockly HTTP-Befehle zu senden? Es gibt Request und Exec. Was sind hier die Unterschiede? Alternativ könnte man auch JavaScript-Bausteine einfügen. Allerdings habe ich von JavaScript keine Ahnung.

            Ich wäre um eure Mithilfe sehr dankbar.

            Gruß

            Markus

            1 Antwort Letzte Antwort
            0
            • M Offline
              M Offline
              MKaiser96
              schrieb am zuletzt editiert von
              #6

              Ich habe es nun geschafft, eine Information zum Request auszugeben.

              7256_iobroker.jpg

              Jetzt kann man das Problem weiter eingrenzen. Das Einloggen funktioniert problemlos, ebenso das Ausloggen. Testweise habe ich anstatt des Schaltens des Home Modes die GetInfo-Anweisung genommen. Als Ergebnis der Error Code 119 geschmissen. Leider finde ich nirgens die Erklärung des Fehlers.

              Kann mir da jemand weiterhelfen? Kann es unter Umständen daran liegen, dass in unterschiedlichen Ebenen aufgerufen werden, sodass beim GetInfo-Befehl der Login "vergessen" wurde? Als Alternative könnte man doch sicher auch eine JavaScript Funktion schreiben und als Block einfügen, doch leider müsste mir da jemand helfen, da ich keine Ahnung von JavaScript-Programmierung habe.

              1 Antwort Letzte Antwort
              0
              • wendy2702W Online
                wendy2702W Online
                wendy2702
                schrieb am zuletzt editiert von
                #7

                Hast du die Befehle mal nacheinander im Browser eingegeben um zu sehen ob die da funktionieren?

                Kann es eventuell auch sein das ein Timeout zwischen Login und nächstem Befehl benötigt wird?

                Bitte keine Fragen per PN, die gehören ins Forum!

                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                1 Antwort Letzte Antwort
                0
                • M Offline
                  M Offline
                  MKaiser96
                  schrieb am zuletzt editiert von
                  #8

                  Ich habe alle Befehle händisch im Browser ausprobiert und da funktionieren sie so, wie sie sollen. Es spielt auch keine Rolle, wieviel Zeit zwischen den Befehlsausführungen vergeht. Allerdings habe ich gesehen, dass eine SID ausgegeben wird. In einem anderen Thema habe ich gesehen, dass diese ausgelesen wurde und zusätzlich an die Befehls mit &sid="SID" angehangen wurde. Kann es sein, dass dies eine Art Sitzungszugang ist, der bei Geräten wie beim RasPi erforderlich ist?

                  Kann mir dann bitte jemand (einfach und verständlich) erklären, wie ich die SID aus der Rückgabe erxtrahiere und dem Befehlslink anfüge? Das wäre die einzige Möglichkeit die mir noch in den Sinn kommt.

                  1 Antwort Letzte Antwort
                  0
                  • M Offline
                    M Offline
                    MueThoS
                    schrieb am zuletzt editiert von
                    #9

                    Ich bin da nicht so firm aber ich könnte mir vor stellen das die Session verloren geht.

                    Jeder Block macht sozusagen einen neuen Browser auf und sendet seinen request.

                    Also "Browser auf" - Anmelden - "Browser zu"

                    "Browser auf" - Befehl senden - "Browser zu"

                    Und so ist beim zweiten aufruf kein Login erfolgt. Das war sozusagen jemand anders.

                    Kann aber auch sein das dem nicht so ist.

                    1 Antwort Letzte Antwort
                    0
                    • M Offline
                      M Offline
                      MKaiser96
                      schrieb am zuletzt editiert von
                      #10

                      Ja, das ist auch meine Vermutung. Darum wird beim Login eine SID ausgegeben, welche ich dem Befehl anfügen möchte. Aber ich weiß nicht, wie ich das auf hinbekomme.

                      1 Antwort Letzte Antwort
                      0
                      • D Offline
                        D Offline
                        dominik.braun82
                        schrieb am zuletzt editiert von
                        #11

                        Hat jemand dazu eine Lösung.

                        Bin aktuell auch an dem Thema dran…

                        Wenn man einen Javascript ausführt mit dem entsprechenden Link wird es wohl auf das selbe Problem herauslaufen, oder?

                        Ich teste die Woche hier auch ein wenig weiter und melde mich, falls ich was hinbekomme.

                        1 Antwort Letzte Antwort
                        0
                        • A Offline
                          A Offline
                          ak1
                          schrieb am zuletzt editiert von
                          #12

                          An einer Lösung bin ich auch sehr interessiert!

                          Wenn jemand Erfolg damit hat, bitte hier beschreiben.

                          Ich habe ein Skript zum Schalten des Home Mode der Surveillance Station auf meiner CCU2 laufen, zumindest test-weise. Lieber hätte ich es aber auch auf dem ioBroker

                          Gruß

                          Stefan

                          1 Antwort Letzte Antwort
                          0
                          • M Offline
                            M Offline
                            MKaiser96
                            schrieb am zuletzt editiert von
                            #13

                            Hallo,

                            seit langem melde ich mich wieder. Mittlerweile habe ich das Problem gelöst. Beim Anmelden Anmelden wird eine SID generiert. Diese muss jedem Befehl angefügt werden.

                            7256_home_mode_steuern_blockly.png

                            URL für den Login:

                            http://<ip_des_nas>:5000/webapi/auth.cgi?api=SYNO.API.Auth&method=Login&version=3&account=<account>&passwd=<passwort>&session=SurveillanceStation&format=sid

                            URL zum Aktivieren:

                            http://<ip_des_nas>:5000/webapi/entry.cgi?api=SYNO.SurveillanceStation.HomeMode&version=1&method=Switch&on=true

                            URL zum Deaktivieren:

                            http://<ip_des_nas>:5000/webapi/entry.cgi?api=SYNO.SurveillanceStation.HomeMode&version=1&method=Switch&on=false

                            Ich hoffe, ich konnte euch helfen.</ip_des_nas></ip_des_nas></passwort></account></ip_des_nas>

                            1 Antwort Letzte Antwort
                            0
                            • AlCalzoneA Offline
                              AlCalzoneA Offline
                              AlCalzone
                              Developer
                              schrieb am zuletzt editiert von
                              #14

                              Warum führst du die nachfolgenden Requests nicht innerhalb des Callbacks des ersten aus anstatt im Timeout? Was, wenn der erste länger dauert als 2s?

                              Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                              1 Antwort Letzte Antwort
                              0
                              • M Offline
                                M Offline
                                MKaiser96
                                schrieb am zuletzt editiert von
                                #15

                                Ich hatte da immer Probleme, dass er die SID noch nicht verarbeitet hat und so der Befehl nicht geschalten wurde.

                                1 Antwort Letzte Antwort
                                0
                                • A Offline
                                  A Offline
                                  ak1
                                  schrieb am zuletzt editiert von
                                  #16

                                  Markus, herzlichen Dank für Dein Feedback! Das ist sehr hilfreich.

                                  @AlCalzone: Deine Rückfrage suggeriert, dass Du an einen optimierten Programmablauf denkst. Wie würde der aussehen?

                                  Gruß

                                  Stefan

                                  1 Antwort Letzte Antwort
                                  0
                                  • D Offline
                                    D Offline
                                    dominik.braun82
                                    schrieb am zuletzt editiert von
                                    #17

                                    Hi.

                                    Ich bekomme es nicht hin…

                                    Siehe Bild anbei mit 2 Fragen...
                                    7511_2018-08-31_12h16_27.jpg

                                    Wäre echt dankbar über eine Info… :cry:

                                    1 Antwort Letzte Antwort
                                    0
                                    • AlCalzoneA Offline
                                      AlCalzoneA Offline
                                      AlCalzone
                                      Developer
                                      schrieb am zuletzt editiert von
                                      #18

                                      @ak1:

                                      @AlCalzone: Deine Rückfrage suggeriert, dass Du an einen optimierten Programmablauf denkst. Wie würde der aussehen? `

                                      Quick'n'dirty in Photoshop:
                                      1097_home_mode_steuern_blockly.png
                                      Eben den zweiten Request direkt nach Beendigung des ersten.

                                      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                                      1 Antwort Letzte Antwort
                                      0
                                      • M Offline
                                        M Offline
                                        MKaiser96
                                        schrieb am zuletzt editiert von
                                        #19

                                        SID und result sind neu erzeugte Variablen. Zu finden im Blockly und Variablen.

                                        1 Antwort Letzte Antwort
                                        0
                                        • D Offline
                                          D Offline
                                          dominik.braun82
                                          schrieb am zuletzt editiert von
                                          #20

                                          Hi. Danke für die Info, habe jetzt alles gefunden und so eingetippt.

                                          Anbei die Fehlermeldung….

                                          eine Idee was da noch falsch ist ?

                                          7511_2018-08-31_21h57_37.jpg

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          823

                                          Online

                                          32.5k

                                          Benutzer

                                          81.7k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe