Curl Befehle via Miniserver oder nur mittels Loxberry/Raspi möglich?

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • Walz83
    Smart Home'r
    • 04.11.2016
    • 34

    #1

    Curl Befehle via Miniserver oder nur mittels Loxberry/Raspi möglich?

    Hallo Zusammen

    Ich versuche mittels cURL Befehlen ein NAS herunterzufahren. Klappt auch einwandfrei von einem PC. Über den Miniserver habe ich das noch nicht geschafft.
    Ist es überhaupt möglich via Miniserver Curl Befehle abzusetzen oder benötige ich dazu einen Loxberry/Raspi?
    Falls zweiteres: Gibt es eine Anleitung dazu?

    Danke
  • svethi
    Lebende Foren Legende
    • 25.08.2015
    • 6314

    #2
    curl ist ein Konsolenprogramm zum Abrufen von Information/Webseiten eines Webservers aus der Linuxwelt. Du kannst ganz sicher kein curl im MiniServer benutzen. Vielleicht solltest Du Dir mal den virtuellen HTTP Ausgang ansehen. Vielleicht kannst Du ja damit Deine Funktionen umsetzen
    Miniserver; KNX; Vitogate; EnOcean (EnOceanPi); Loxone Air; Caldav-Kalenderanbindung; RaspberryPi und für keine Frickellösung zu schade :-)

    Kommentar

    • Walz83
      Smart Home'r
      • 04.11.2016
      • 34

      #3
      Hatte bereits versucht den Curl Befehl via virtuellen Ausgang (http) abzusetzen - ohne Erfolg. Das Nas kann ich nur per curl oder per ssh befehl (eher unsichere Geschichte bei netgear) herunterfahren.

      Gibt es das curl Konsolenprogramm für Loxberry?

      Kommentar

      • Christian Fenzl
        Lebende Foren Legende
        • 31.08.2015
        • 11236

        #4
        curl kommt ja aus der Linux-Welt und gibt es natürlich auch am LoxBerry.

        Poste mal die URL, die du absetzen möchtest. Vielleicht können wir dir helfen.

        Sonst jedoch arbeite ich gerade an meinem Any-Plugin (das "beliebige Sachen machen kann"), und sowas wird es auch können.

        lg, Christian
        Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

        Kommentar

        • svethi
          Lebende Foren Legende
          • 25.08.2015
          • 6314

          #5
          Wie gesagt, curl ist nur ein Programm. Mit was Du die Anfrage an den Webserver schickst, ist doch egal.
          Der Loxberry ist nichts anderes als ein Debian Jessie. Ja, da gibt es auch curl. Aber nicht als Plugin. Da müsstest Du eventuell selbst etwas programmieren.
          Ich weiß ja nicht was das für komplizierte Webanfragen sind, die nicht per virtuellem Ausgang getriggert werden können.
          Miniserver; KNX; Vitogate; EnOcean (EnOceanPi); Loxone Air; Caldav-Kalenderanbindung; RaspberryPi und für keine Frickellösung zu schade :-)

          Kommentar

          • Walz83
            Smart Home'r
            • 04.11.2016
            • 34

            #6
            Der Curl Befehl lautet:

            curl -u Benutzer:Passwort -k "http://IP_vom_NAS/dbbroker" -H "Content-Type: application/x-www-form-urlencoded;" -H "X-Requested-With: XMLHttpRequest" --data "<?xml version="1.0" encoding="UTF-8"?><xs:nml xmlns:xs="http://www.netgear.com/protocol/transaction/NMLSchema-0.9" xmlns="urn:netgear:nas:readynasd" src="dpv_1487538327000" dst="nas"><xs:transaction id="njl_id_2263"><xs:custom id="njl_id_2262" name="Halt" resource-id="Shutdown" resource-type="System"><Shutdown halt="true" fsck="false"/></xs:custom></xs:transaction></xs:nml>"

            "Benutzer, Passwort und IP_vom_NAS" natürlich an Gegebenheiten angepasst.
            Habe noch nicht getestet ob wirklich alle Einträge des Befehls benötigt werden oder nur die ersten und letzten Einträge.
            Der Befehl funktioniert einwandfrei am Windows PC mit nachträglich installierten Curl.exe.

            Danke Lg

            Kommentar

            • Christian Fenzl
              Lebende Foren Legende
              • 31.08.2015
              • 11236

              #7
              Ist vom MS aus eigentlich kein Problem, nur das Testen etwas zeitaufwändig (wenn man's überhaupt hinbringt ;-) ).

              Schau dir mal das Beispiel hier an:
              https://www.loxforum.com/forum/germa...ur-api-abfrage

              Die beiden -H-Zeilen fügst du zusammen und trennst sie mit \n, die kommen in HTTP-Erweiterung bei EIN.
              Der --data-Teil kommt in den HTTP-Post-Befehl bei EIN.

              In Befehl bei ein kommt http://Benutzer:Passwort@IP_vom_NAS/dbbroker

              und natürlich POST.

              Könnte klappen.
              Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

              Kommentar

              • Walz83
                Smart Home'r
                • 04.11.2016
                • 34

                #8
                Perfekt Danke Christian- Hat geklappt.
                Für alle die auch ein Netgear Readynas mit OS 6.6.1 (In meinem Fall Model: RN214) mit Loxone herunterfahren möchten. Hier alle Einstellungen im Virtuellen Ausgang am Miniserver:
                "Benutzer, Passwort und IP_vom_NAS" natürlich an Gegebenheiten angepasst.

                Adresse:
                http://Benutzer:Passwort@IP_vom_NAS/dbbroker

                Verbindung nach schließen:
                EIN

                Befehl bei EIN:
                http://Benutzer:Passwort@IP_vom_NAS/dbbroker

                HTTP-Erweiterung bei EIN:
                Content-Type: application/x-www-form-urlencoded;\n X-Requested-With: XMLHttpRequest

                HTTP-Post-Befehl bei EIN:
                <?xml version="1.0" encoding="UTF-8"?><xs:nml xmlns:xs="http://www.netgear.com/protocol/transaction/NMLSchema-0.9" xmlns="urn:netgear:nas:readynasd" src="dpv_1487538327000" dst="nas"><xs:transaction id="njl_id_2263"><xs:custom id="njl_id_2262" name="Halt" resource-id="Shutdown" resource-type="System"><Shutdown halt="true" fsck="false"/></xs:custom></xs:transaction></xs:nml>

                HTTP Methode bei EIN:
                POST

                Es kann sein dass die id's bzw. Zahl hinter dpv an das eigene NAS angepasst werden müssen. Ich habe diese Werte mittels Firefox-Inspektor aus der NAS Benutzeroberfläche ausgelesen. Siehe link.









                Is there a way to do a remote shutdown on OS 6? I found this for older versions: viewtopic.php?p=94750 but nothing for OS 6.

                Kommentar

                • Philipp
                  Azubi
                  • 27.04.2016
                  • 4

                  #9
                  Hallo

                  Würde gerne den Befehl versenden. Ist das möglich??

                  unter Windows im cmd funktioniert es

                  curl --data "lauftext=abc&helligkeit=1&wartenMs=100&submit =Sen den" http://192.168.6.13


                  C:\Users\Philipp>curl --data "lauftext=abc&helligkeit=1&wartenMs=100&submit =Sen den" http://192.168.6.13
                  <!DOCTYPE html>
                  <html>
                  <body style="font-family: Verdana, sans-serif">Gib deinen Text ein:<br>
                  <form action="" method="post">
                  Text: <input type="text" name="lauftext" ><br>
                  Warten ms: <input type="number" name="wartenMs" value="100" max="500" min="5"><br>
                  Helligkeit: <input type="number" name="helligkeit" value="6" max="15" min="0"><br>
                  <input type="submit" value="Senden">
                  </form>
                  </body>
                  </html>

                  Kann mir da jemand behilflich sein DANKESCHÖN

                  LG

                  Philipp

                  Kommentar

                  • Christian Fenzl
                    Lebende Foren Legende
                    • 31.08.2015
                    • 11236

                    #10
                    Genau wie Walz83 beschrieben hat, nur bei HTTP-Post-Befehl bei EIN setzt du deine Daten (ohne -data und ohne die Anführungszeichen ein.
                    Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

                    Kommentar

                    Lädt...