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. Werte (JSON) an URL senden

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.2k

  • 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

Werte (JSON) an URL senden

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
22 Beiträge 3 Kommentatoren 1.8k Aufrufe 1 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 M-A-X

    @paul53
    Das mit der zu kurzen Antwort war auf die Forenantwort bezogen :) wollte dir ursprünglich nur schreiben "jetzt kommt:" und dann den Code.
    Gibt es eine Möglichkeit das "Text" Fenster des exec Befehls größer zu machen, sodass ich darin leichter rum probieren kann?
    Ich hab in meinem ersten Beitrag auch mal ganz unten den anderen Thread verlinkt, falls das hilft

    paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von paul53
    #10

    @m-a-x
    Der Kommandotext wird durch Hochkommata unterbrochen. Wenn innerhalb des Kommandos Hochkommata erforderlich sind, müssen diese mit Backslash eingeleitet werden. Anfang:

    'cmd':'curl -X \'PUT\' \\ \'http:/
    

    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

    M 1 Antwort Letzte Antwort
    0
    • paul53P paul53

      @m-a-x
      Der Kommandotext wird durch Hochkommata unterbrochen. Wenn innerhalb des Kommandos Hochkommata erforderlich sind, müssen diese mit Backslash eingeleitet werden. Anfang:

      'cmd':'curl -X \'PUT\' \\ \'http:/
      
      M Offline
      M Offline
      M-A-X
      schrieb am zuletzt editiert von
      #11

      @paul53
      Leider nicht besser geworden :)

      javascript.0
      2023-03-01 19:37:31.205	info	script.js.TeslaSolarSetSOC1: {'code':3,'killed':false,'signal':null,'cmd':'curl -X \\'PUT\\' \\ \\'http://192.168.9.105:7190/api/Config/UpdateCarConfiguration?carId=1\\' \\ -H \\'accept: */*\\' \\ -H \\'Content-Type: application/json\\' \\ -d \\'{ \'chargeMode\': 2, \'minimumSoC\': 20, \'latestTimeToReachSoC\': \'2023-03-01T17:06:45.205Z\', \'ignoreLatestTimeToReachSocDate\': true, \'maximumAmpere\': 0, \'minimumAmpere\': 0, \'usableEnergy\': 0, \'shouldBeManaged\': true, \'chargingPriority\': 0 }\\''}
      

      Da, wo im Log jetzt ein ' ist, war vorher ein ", da wo jetzt zwei \' sind, hatte ich ein \ vor einem ' eingefügt...
      Auch ganz hinten und am Anfang

      curl -X \'PUT\' \   \'http://192.168.9.105:7190/api/Config/UpdateCarConfiguration?carId=1\' \   -H \'accept: */*\' \   -H \'Content-Type: application/json\' \   -d \'{   "chargeMode": 2,   "minimumSoC": 20,   "latestTimeToReachSoC": "2023-03-01T17:06:45.205Z",   "ignoreLatestTimeToReachSocDate": true,   "maximumAmpere": 0,   "minimumAmpere": 0,   "usableEnergy": 0,   "shouldBeManaged": true,   "chargingPriority": 0 }\'
      
      paul53P 1 Antwort Letzte Antwort
      0
      • M M-A-X

        @paul53
        Leider nicht besser geworden :)

        javascript.0
        2023-03-01 19:37:31.205	info	script.js.TeslaSolarSetSOC1: {'code':3,'killed':false,'signal':null,'cmd':'curl -X \\'PUT\\' \\ \\'http://192.168.9.105:7190/api/Config/UpdateCarConfiguration?carId=1\\' \\ -H \\'accept: */*\\' \\ -H \\'Content-Type: application/json\\' \\ -d \\'{ \'chargeMode\': 2, \'minimumSoC\': 20, \'latestTimeToReachSoC\': \'2023-03-01T17:06:45.205Z\', \'ignoreLatestTimeToReachSocDate\': true, \'maximumAmpere\': 0, \'minimumAmpere\': 0, \'usableEnergy\': 0, \'shouldBeManaged\': true, \'chargingPriority\': 0 }\\''}
        

        Da, wo im Log jetzt ein ' ist, war vorher ein ", da wo jetzt zwei \' sind, hatte ich ein \ vor einem ' eingefügt...
        Auch ganz hinten und am Anfang

        curl -X \'PUT\' \   \'http://192.168.9.105:7190/api/Config/UpdateCarConfiguration?carId=1\' \   -H \'accept: */*\' \   -H \'Content-Type: application/json\' \   -d \'{   "chargeMode": 2,   "minimumSoC": 20,   "latestTimeToReachSoC": "2023-03-01T17:06:45.205Z",   "ignoreLatestTimeToReachSocDate": true,   "maximumAmpere": 0,   "minimumAmpere": 0,   "usableEnergy": 0,   "shouldBeManaged": true,   "chargingPriority": 0 }\'
        
        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von paul53
        #12

        @m-a-x
        Gibt es irgendwo eine Beschreibung der API? Request ist vielleicht besser geeignet?

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        M 1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @m-a-x
          Gibt es irgendwo eine Beschreibung der API? Request ist vielleicht besser geeignet?

          M Offline
          M Offline
          M-A-X
          schrieb am zuletzt editiert von
          #13

          @paul53
          Ich glaube leider nein..
          Das ist das Projekt:
          https://github.com/pkuehnel/TeslaSolarCharger

          paul53P 1 Antwort Letzte Antwort
          0
          • M M-A-X

            @paul53
            Ich glaube leider nein..
            Das ist das Projekt:
            https://github.com/pkuehnel/TeslaSolarCharger

            paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von
            #14

            @m-a-x sagte: leider nein..

            Woher stammen die Bilder?

            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

            M 1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @m-a-x sagte: leider nein..

              Woher stammen die Bilder?

              M Offline
              M Offline
              M-A-X
              schrieb am zuletzt editiert von M-A-X
              #15

              @paul53
              Ich kann über IPdesSystems:7190/swagger
              die API aufrufen
              Also in meinem Fall 192.168.9.105:7190/swagger
              Zwischenablage02.jpg

              1 Antwort Letzte Antwort
              0
              • M M-A-X

                Hey,
                ich habe einen Dockercontainer laufen der über eine API verfügt. Man kann über die IP "IPdesSystems:PORT/swagger" auf die API zugreifen. Wenn ich dort im "PUT" Fenster "Try Out" wähle und Werte ändere und "execute", wird im WebInterface des Containers auch das geändert, was ich will.
                Zwischenablage02.jpg
                Zwischenablage03.jpg
                Da ich dieses Vorgehen über einen externen Taster realisieren möchte, bräuchte ich Hilfe, wie ich ein Skript erstelle, dass über den Trigger (Taster) die Werte an die API des Dockercontainer sendet.
                Ich habe einen Beitrag hier im Forum gefunden (heißt quasi wie dieser, ist aber auf "gelöst" gesetzt) in dem EIN Wert geschickt werden sollte. Bei mir müssten es mehrere sein.
                In der API wird scheinbar folgendes ausgeführt:

                curl -X 'PUT' \   'http://192.168.9.105:7190/api/Config/UpdateCarConfiguration?carId=1' \   -H 'accept: */*' \   -H 'Content-Type: application/json' \   -d '{   "chargeMode": 2,   "minimumSoC": 20,   "latestTimeToReachSoC": "2023-03-01T17:06:45.205Z",   "ignoreLatestTimeToReachSocDate": true,   "maximumAmpere": 0,   "minimumAmpere": 0,   "usableEnergy": 0,   "shouldBeManaged": true,   "chargingPriority": 0 }'
                

                Wenn ich im WebInterface den Entwicklermodus von Chrome aufrufe und da dann Netzwerk wird folgendes "geschickt" wenn ich im WebInterface auf "speichern" gehe.

                {
                    "carId": 1,
                    "chargeMode": 2,
                    "minimumStateOfCharge": 30,
                    "latestTimeToReachStateOfCharge": "2023-03-02T17:06:45.205",
                    "ignoreLatestTimeToReachSocDate": true
                }
                

                und zwar an "http://192.168.9.105:7190/api/Index/UpdateCarBaseSettings"
                Das würde mir reichen (ich brauche nur den chargeMode und den minimumStateOfCharge)
                Ich wollte das ganze mit nem BLockly mit exec Block ausprobieren.
                Zwischenablage01.jpg
                Wie bekomme ich da wo "test" steht "result" hin? Ich finde den Result Block nicht :(
                Die Idee hierzu habe ich aus dem anderen Beitrag (dort hat er allerdings nicht zum Erfolg geführt, sondern ein JavaScript, das ich nicht verstehe ^^
                Vielen Dank schon mal

                EDIT: Hier der Link zum anderen Thema, falls der hilft :)
                Klick

                paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von
                #16

                @m-a-x sagte: ich brauche nur den chargeMode und den minimumStateOfCharge

                Sollen die Werte abgefragt oder gesetzt werden?
                Welche Werte kann "chargeMode" annehmen?

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                M 1 Antwort Letzte Antwort
                0
                • paul53P paul53

                  @m-a-x sagte: ich brauche nur den chargeMode und den minimumStateOfCharge

                  Sollen die Werte abgefragt oder gesetzt werden?
                  Welche Werte kann "chargeMode" annehmen?

                  M Offline
                  M Offline
                  M-A-X
                  schrieb am zuletzt editiert von M-A-X
                  #17

                  @paul53
                  Die Werte sollen gesetzt werden. Wenn ich das per "PUT" in der API mache, klappt es auch (wie im ersten Post kommt kann dieser "code" mit CURL am Anfang raus.
                  Der DockerContainer lässt mein Fahrzeug nur mit PV Überschuss laden. Aber manchmal brauche ich es auch einfach, dass das Fahrzeug komplett geladen wird. Dazu möchte ich einen Taster neben die Wallbox bauen und hierdurch, über Iobroker, soll dann der SOC auf 100% gesetzt werden. Den Rest der Logik (zurückkehren zu den Standardwerten, sobald der Ladevorgang abgebrochen wird oder beendet ist) würde ich in ein Skript mit einbauen. Wichtig wäre zunächst "nur", dass dieser EXEC Block funktioniert :)

                  chargeMode gibt es von 0 bis 3. Ich brauche (immer nur) chargeMode:2 (es würden auch andere gehen, dann müsste ich aber beim Zurückwechseln noch mehr Werte ändern)
                  Das steht in der API
                  Zwischenablage03.jpg
                  minimumStateOfCharge ist eine (Prozent) Zahl zwischen 0 und 100 :)

                  paul53P 1 Antwort Letzte Antwort
                  0
                  • M M-A-X

                    @paul53
                    Die Werte sollen gesetzt werden. Wenn ich das per "PUT" in der API mache, klappt es auch (wie im ersten Post kommt kann dieser "code" mit CURL am Anfang raus.
                    Der DockerContainer lässt mein Fahrzeug nur mit PV Überschuss laden. Aber manchmal brauche ich es auch einfach, dass das Fahrzeug komplett geladen wird. Dazu möchte ich einen Taster neben die Wallbox bauen und hierdurch, über Iobroker, soll dann der SOC auf 100% gesetzt werden. Den Rest der Logik (zurückkehren zu den Standardwerten, sobald der Ladevorgang abgebrochen wird oder beendet ist) würde ich in ein Skript mit einbauen. Wichtig wäre zunächst "nur", dass dieser EXEC Block funktioniert :)

                    chargeMode gibt es von 0 bis 3. Ich brauche (immer nur) chargeMode:2 (es würden auch andere gehen, dann müsste ich aber beim Zurückwechseln noch mehr Werte ändern)
                    Das steht in der API
                    Zwischenablage03.jpg
                    minimumStateOfCharge ist eine (Prozent) Zahl zwischen 0 und 100 :)

                    paul53P Offline
                    paul53P Offline
                    paul53
                    schrieb am zuletzt editiert von
                    #18

                    @m-a-x
                    Ich habe zwar nicht wirklich Ahnung davon, aber versuche es mal mit request().

                    on({id: '0_userdata.0.Tesla.Laden.voll'}, function() { // Taste "voll laden"
                        request({
                            method: 'POST',
                            url: 'http://192.168.9.105:7190/api/Config/UpdateCarConfiguration?carId=1',
                            headers: {accept: '*/*', 'Content-Type': 'application/json'},
                            body: {chargeMode: 2, minimumSoC: 100}
                        }, function(error, response, body) {
                            if(error) log(error, 'warn');
                            else log(body);
                        });
                    });
                    

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                    M 1 Antwort Letzte Antwort
                    0
                    • paul53P paul53

                      @m-a-x
                      Ich habe zwar nicht wirklich Ahnung davon, aber versuche es mal mit request().

                      on({id: '0_userdata.0.Tesla.Laden.voll'}, function() { // Taste "voll laden"
                          request({
                              method: 'POST',
                              url: 'http://192.168.9.105:7190/api/Config/UpdateCarConfiguration?carId=1',
                              headers: {accept: '*/*', 'Content-Type': 'application/json'},
                              body: {chargeMode: 2, minimumSoC: 100}
                          }, function(error, response, body) {
                              if(error) log(error, 'warn');
                              else log(body);
                          });
                      });
                      
                      M Offline
                      M Offline
                      M-A-X
                      schrieb am zuletzt editiert von
                      #19

                      @paul53
                      Wie kann ich das Skript Triggern? ich habe "0_userdata.0.Tesla.Laden.voll" ersetzt durch "javascript.0.TeslaSetSOC".
                      Dieses Objekt habe ich als Logik Objekt angelegt und anschließend bei den Objekten auf "true" (bestätigt) gesetzt.
                      Dann stürzt aber der komplette Javaskriptadapter ab und restartet :)

                      paul53P 1 Antwort Letzte Antwort
                      0
                      • M M-A-X

                        @paul53
                        Wie kann ich das Skript Triggern? ich habe "0_userdata.0.Tesla.Laden.voll" ersetzt durch "javascript.0.TeslaSetSOC".
                        Dieses Objekt habe ich als Logik Objekt angelegt und anschließend bei den Objekten auf "true" (bestätigt) gesetzt.
                        Dann stürzt aber der komplette Javaskriptadapter ab und restartet :)

                        paul53P Offline
                        paul53P Offline
                        paul53
                        schrieb am zuletzt editiert von paul53
                        #20

                        @m-a-x sagte: Dann stürzt aber der komplette Javaskriptadapter ab und restartet

                        Dann ist vermutlich etwas am request() gefährlich falsch. Vielleicht meldet sich noch jemand, der sich besser damit auskennt?

                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                        1 Antwort Letzte Antwort
                        1
                        • mickymM Online
                          mickymM Online
                          mickym
                          Most Active
                          schrieb am zuletzt editiert von
                          #21

                          Nutze Node-Red - da hast Du alle Methoden out of the box. ;)

                          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                          M 1 Antwort Letzte Antwort
                          0
                          • mickymM mickym

                            Nutze Node-Red - da hast Du alle Methoden out of the box. ;)

                            M Offline
                            M Offline
                            M-A-X
                            schrieb am zuletzt editiert von
                            #22

                            @paul53
                            Danke schon mal für deine Hilfe. Ich habe auf jeden Fall etwas gelernt, auch wenn es nicht zum Erfolg geführt hat.

                            @mickym
                            Hab NodeRed jetzt mal schnell gegoogelt und hört sich wie ein "potentes" Blockly an. Also Flussdiagramme erstellen ohne zu programmieren, etc. Aber die Adapterbeschreibung ist sehr kurz und ich werde mich heute Abend nicht mehr damit beschäftigen, ob ich nur den Adapter installieren muss, oder noch weitere Änderungen vornehmen muss.. Lieber wäre mir eine Lösung ohne zusätzlichen Adapter :)

                            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

                            508

                            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