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. JavaScript
  5. REST API Post

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.5k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    990

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.3k

REST API Post

Geplant Angeheftet Gesperrt Verschoben JavaScript
5 Beiträge 3 Kommentatoren 460 Aufrufe 3 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.
  • J Offline
    J Offline
    JörnW
    schrieb am zuletzt editiert von JörnW
    #1

    Hallo zusammen,

    ich bräuchte bitte einmal eure Hilfe für mein Projekt.

    Ich habe ein Script, mit dem ich die Entladung meines Energiespeichersystems steuern möchte. Nicht komplett steuern, sondern in einigen Fällen am Tag eher übersteuern. Beispielsweise die Entladung des Akkus auf 0 setzen, wenn das eAuto beladen wird.

    Dafür muss ich an eine lokale API des Energiespeichersystems (läuft hier im lokalem Netz) einen Wert per POST Request senden. Die Sache an der ich jetzt scheitere ist die verflixte Authentifizierung. Man muss Username und Passwort übergeben.

    Ich habe das versucht, bekomme aber keine Erfolgs- oder Fehlermeldung. Wenn das Script läuft tut sich schlicht "nichts" Im Postman funktioniert es. Also die API des Speichersystem selbst funktioniert.

    Hier das Script

    let server = 'http://192.168.25.99:8084/rest/channel/ess0/SetActivePowerEquals';    
    let body_sent = {
       "value": 2500          
     };                                                  
    console.log("Server : " + server);
    request.post({
            url: server,
            headers: {'Content-Type': 'application/json'},        
            json:    body_sent,
            form: {username: 'x', password: 'y'}
            
        }, function(error, response, body) {
            
            if (error)  { console.log(error); }
            if (!error && response.statusCode == 200) {
                log(JSON.parse(body));
            }
            
        }
        
    );
    

    Könnt Ihr mir helfen? Wie bzw. wo genau muss ich die Credentials unterbringen? In der Anleitung des Herstellers steht, das username und Passwort genutzt werden müssen. Kein API Key.

    Vielen Dank!
    Jörn

    arteckA OliverIOO 2 Antworten Letzte Antwort
    0
    • J JörnW

      Hallo zusammen,

      ich bräuchte bitte einmal eure Hilfe für mein Projekt.

      Ich habe ein Script, mit dem ich die Entladung meines Energiespeichersystems steuern möchte. Nicht komplett steuern, sondern in einigen Fällen am Tag eher übersteuern. Beispielsweise die Entladung des Akkus auf 0 setzen, wenn das eAuto beladen wird.

      Dafür muss ich an eine lokale API des Energiespeichersystems (läuft hier im lokalem Netz) einen Wert per POST Request senden. Die Sache an der ich jetzt scheitere ist die verflixte Authentifizierung. Man muss Username und Passwort übergeben.

      Ich habe das versucht, bekomme aber keine Erfolgs- oder Fehlermeldung. Wenn das Script läuft tut sich schlicht "nichts" Im Postman funktioniert es. Also die API des Speichersystem selbst funktioniert.

      Hier das Script

      let server = 'http://192.168.25.99:8084/rest/channel/ess0/SetActivePowerEquals';    
      let body_sent = {
         "value": 2500          
       };                                                  
      console.log("Server : " + server);
      request.post({
              url: server,
              headers: {'Content-Type': 'application/json'},        
              json:    body_sent,
              form: {username: 'x', password: 'y'}
              
          }, function(error, response, body) {
              
              if (error)  { console.log(error); }
              if (!error && response.statusCode == 200) {
                  log(JSON.parse(body));
              }
              
          }
          
      );
      

      Könnt Ihr mir helfen? Wie bzw. wo genau muss ich die Credentials unterbringen? In der Anleitung des Herstellers steht, das username und Passwort genutzt werden müssen. Kein API Key.

      Vielen Dank!
      Jörn

      arteckA Offline
      arteckA Offline
      arteck
      Developer Most Active
      schrieb am zuletzt editiert von
      #2

      @jörnw sagte in REST API Pos:

      In der Anleitung des Herstellers steht,

      ahhh und du erwartest jetzt was.. meine Glaskugel ist gerade zur Politur..

      also kein Plan :

      was du das hast
      welche API genutzt wird
      welche Doku es zur der Api gibt

      und zur guter letzt.. LOG ??

      zigbee hab ich, zwave auch, nuc's genauso und HA auch

      J 1 Antwort Letzte Antwort
      0
      • J JörnW

        Hallo zusammen,

        ich bräuchte bitte einmal eure Hilfe für mein Projekt.

        Ich habe ein Script, mit dem ich die Entladung meines Energiespeichersystems steuern möchte. Nicht komplett steuern, sondern in einigen Fällen am Tag eher übersteuern. Beispielsweise die Entladung des Akkus auf 0 setzen, wenn das eAuto beladen wird.

        Dafür muss ich an eine lokale API des Energiespeichersystems (läuft hier im lokalem Netz) einen Wert per POST Request senden. Die Sache an der ich jetzt scheitere ist die verflixte Authentifizierung. Man muss Username und Passwort übergeben.

        Ich habe das versucht, bekomme aber keine Erfolgs- oder Fehlermeldung. Wenn das Script läuft tut sich schlicht "nichts" Im Postman funktioniert es. Also die API des Speichersystem selbst funktioniert.

        Hier das Script

        let server = 'http://192.168.25.99:8084/rest/channel/ess0/SetActivePowerEquals';    
        let body_sent = {
           "value": 2500          
         };                                                  
        console.log("Server : " + server);
        request.post({
                url: server,
                headers: {'Content-Type': 'application/json'},        
                json:    body_sent,
                form: {username: 'x', password: 'y'}
                
            }, function(error, response, body) {
                
                if (error)  { console.log(error); }
                if (!error && response.statusCode == 200) {
                    log(JSON.parse(body));
                }
                
            }
            
        );
        

        Könnt Ihr mir helfen? Wie bzw. wo genau muss ich die Credentials unterbringen? In der Anleitung des Herstellers steht, das username und Passwort genutzt werden müssen. Kein API Key.

        Vielen Dank!
        Jörn

        OliverIOO Offline
        OliverIOO Offline
        OliverIO
        schrieb am zuletzt editiert von
        #3

        @jörnw sagte in REST API Pos:

        request

        fehlt da

        const request = require("request");
        

        Meine Adapter und Widgets
        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
        Links im Profil

        1 Antwort Letzte Antwort
        0
        • arteckA arteck

          @jörnw sagte in REST API Pos:

          In der Anleitung des Herstellers steht,

          ahhh und du erwartest jetzt was.. meine Glaskugel ist gerade zur Politur..

          also kein Plan :

          was du das hast
          welche API genutzt wird
          welche Doku es zur der Api gibt

          und zur guter letzt.. LOG ??

          J Offline
          J Offline
          JörnW
          schrieb am zuletzt editiert von
          #4

          @arteck : Sorry, ich wolle nicht, das du noch zur Politur greifen musst oder gar den ganzen Kristallkugel-Cluster hochfahren musst.

          Ich habe mich da wohl nicht präzise genug ausgedrückt. Sehe es mir als Anfänger bitte nach. Das was mir fehlte war schlicht der richtige Weg, wie ich Username und Password übergeben muss. Ich habe mich da die Tage "zu Tode Gegoogelt". Habe gestern einen Tip bekommen es mit Axios zu versuchen. Dort bei Axios-http in der Doku habe ich einen Hinweis gefunden, der auch mit meinem Code hier funktioniert...

          Ich habe versucht die Benutzerdaten so zu übergeben: (s. oben im Code):

          form: {username: 'x', password: 'y'}
          

          Korrekt wäre aber wohl gewesen:

                  auth: { username: 'x', password: 'y', }     
          

          Mit "auth{}" bekomme ich nun status code 200 zurück. Und das ESS reagiert wie gewünscht.
          Mit "form{}" war es status code 401. Da dann wohl die Credentials an der falschen Stelle (oder garnicht übertragen wurden?) standen.

          Ich habe dann noch die Info von @OliverIO mit eingebaut. Danke dafür @OliverIO

          Nun läuft es wie verrückt und mir fällt, nach dem ganzen hin und her probieren, ein Stein vom Herzen das es endlich klappt :-)

          Viele Grüße & Danke
          Jörn

          OliverIOO 1 Antwort Letzte Antwort
          0
          • J JörnW

            @arteck : Sorry, ich wolle nicht, das du noch zur Politur greifen musst oder gar den ganzen Kristallkugel-Cluster hochfahren musst.

            Ich habe mich da wohl nicht präzise genug ausgedrückt. Sehe es mir als Anfänger bitte nach. Das was mir fehlte war schlicht der richtige Weg, wie ich Username und Password übergeben muss. Ich habe mich da die Tage "zu Tode Gegoogelt". Habe gestern einen Tip bekommen es mit Axios zu versuchen. Dort bei Axios-http in der Doku habe ich einen Hinweis gefunden, der auch mit meinem Code hier funktioniert...

            Ich habe versucht die Benutzerdaten so zu übergeben: (s. oben im Code):

            form: {username: 'x', password: 'y'}
            

            Korrekt wäre aber wohl gewesen:

                    auth: { username: 'x', password: 'y', }     
            

            Mit "auth{}" bekomme ich nun status code 200 zurück. Und das ESS reagiert wie gewünscht.
            Mit "form{}" war es status code 401. Da dann wohl die Credentials an der falschen Stelle (oder garnicht übertragen wurden?) standen.

            Ich habe dann noch die Info von @OliverIO mit eingebaut. Danke dafür @OliverIO

            Nun läuft es wie verrückt und mir fällt, nach dem ganzen hin und her probieren, ein Stein vom Herzen das es endlich klappt :-)

            Viele Grüße & Danke
            Jörn

            OliverIOO Offline
            OliverIOO Offline
            OliverIO
            schrieb am zuletzt editiert von
            #5

            @jörnw
            Programmieren ist eine exakte Disziplin.
            Nix mit ungefähr wird schon funktionieren.

            Viele müssen das erst lernen Texte genau zu lesen und zu verstehen.
            Aber um so öfters man das macht um so einfacher fällt einem das

            Meine Adapter und Widgets
            TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
            Links im Profil

            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

            315

            Online

            32.6k

            Benutzer

            82.3k

            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