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. Code an Restapi senden via http Befehl…

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.1k

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

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

Code an Restapi senden via http Befehl…

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
15 Beiträge 6 Kommentatoren 2.9k 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.
  • Z Offline
    Z Offline
    Zodiac2812
    schrieb am zuletzt editiert von
    #1

    Hallo Leute,

    ich habe da mal eine Frage, und zwar habe ich eine Multiplex Trio E der Firma Viega

    verbaut. Das ist eine elektrische Badewannenbefüllung. Jetzt habe ich dazu von Viega

    ein IOT Modul verbaut, welches zulässt, dass ich die Wanne auch mit dem Handy befüllen

    kann. Nun habe ich mir über deren Technischen Support die Rest API Schnittstellenbeschreibung geben lassen,

    in der Hoffnung auch mit meinem Raspi befehle per http hin senden zu können.

    Ich bin nicht der Guru im Programmieren, habe da eher gefährliches Halbwissen, daher die Frage ob

    es eine Möglichkeit gibt mit Blockly etc. einen solchen Befehl wie "Badewanne füllen" an die

    Schnittstelle zu senden

    Danke vorab….
    13004_viega1.jpg
    13004_viega_2.jpg

    Irgendwann muss man anfangen… :mrgreen:

    1 Antwort Letzte Antwort
    0
    • Z Offline
      Z Offline
      Zodiac2812
      schrieb am zuletzt editiert von
      #2

      Hat keiner eine Idee oder nen Tipp wie ich die HTTP befehle senden und empfangen kann? :(

      Irgendwann muss man anfangen… :mrgreen:

      1 Antwort Letzte Antwort
      0
      • Lenny.CBL Offline
        Lenny.CBL Offline
        Lenny.CB
        Most Active
        schrieb am zuletzt editiert von
        #3

        @Zodiac2812:

        Hat keiner eine Idee oder nen Tipp wie ich die HTTP befehle senden und empfangen kann? :( `
        sprichst du die Wanne mit einer internen IP an, oder läuft das alles über eine Cloud mit auth, token und son mist?

        versuche mal (ungetestet):````
        var server = ''; // IP der Wanne
        var id = ''; // ID der Wanne

        request.post ({
        url: server + '/api/tlc/' + id + '/bathtub-fill/',
        headers: {'Content-Type': 'application/json'}
        },
        function (error, response, body) {
        log('Code_statusCode: ' + response.statusCode);
        log(JSON.parse(body));
        });

        1 Antwort Letzte Antwort
        0
        • D Offline
          D Offline
          danw
          schrieb am zuletzt editiert von
          #4

          @Lenny.CB:

          @Zodiac2812:

          Hat keiner eine Idee oder nen Tipp wie ich die HTTP befehle senden und empfangen kann? :( `
          sprichst du die Wanne mit einer internen IP an, oder läuft das alles über eine Cloud mit auth, token und son mist?

          versuche mal (ungetestet):````
          var server = ''; // IP der Wanne
          var id = ''; // ID der Wanne

          request.post ({
          url: server + '/api/tlc/' + id + '/bathtub-fill/',
          headers: {'Content-Type': 'application/json'}
          },
          function (error, response, body) {
          log('Code_statusCode: ' + response.statusCode);
          log(JSON.parse(body));
          });
          ```` `

          Das zu übertragene JSON fehlt hier.

          var server = '';    // IP der Wanne
          var id  = '';       // ID der Wanne
          var body_sent = {
            "temperature": 23.5,
            "amount": 0.7
          }
          
          request.post    ({  
                      url: server + '/api/tlc/' + id + '/bathtub-fill/',        
                      headers: {'Content-Type': 'application/json'},
                      json:    body_sent
                  },
                      function (error, response, body) {
                              log('Code_statusCode: ' + response.statusCode);
                              log(JSON.parse(body));
                  });
          
          

          It's not a Bug, it's a Feature

          1 Antwort Letzte Antwort
          0
          • Lenny.CBL Offline
            Lenny.CBL Offline
            Lenny.CB
            Most Active
            schrieb am zuletzt editiert von
            #5

            @danw:

            @Lenny.CB:

            @Zodiac2812:

            Hat keiner eine Idee oder nen Tipp wie ich die HTTP befehle senden und empfangen kann? :( `
            sprichst du die Wanne mit einer internen IP an, oder läuft das alles über eine Cloud mit auth, token und son mist?

            versuche mal (ungetestet):````
            var server = ''; // IP der Wanne
            var id = ''; // ID der Wanne

            request.post ({
            url: server + '/api/tlc/' + id + '/bathtub-fill/',
            headers: {'Content-Type': 'application/json'}
            },
            function (error, response, body) {
            log('Code_statusCode: ' + response.statusCode);
            log(JSON.parse(body));
            });
            ```` `

            Das zu übertragene JSON fehlt hier.

            var server = '';    // IP der Wanne
            var id  = '';       // ID der Wanne
            var body_sent = {
              "temperature": 23.5,
              "amount": 0.7
            }
            
            request.post    ({  
                        url: server + '/api/tlc/' + id + '/bathtub-fill/',        
                        headers: {'Content-Type': 'application/json'},
                        json:    body_sent
                    },
                        function (error, response, body) {
                                log('Code_statusCode: ' + response.statusCode);
                                log(JSON.parse(body));
                    });
            
            ```` `  
            

            ich bin der Meinung, dass du hier Daten abfragst. Da brauchst kein JSON mitschicken. Oder?

            1 Antwort Letzte Antwort
            0
            • D Offline
              D Offline
              danw
              schrieb am zuletzt editiert von
              #6

              Laut der API Beschreibung des OP ist bei dem HTTP POST (nicht GET) eine Einstellung der Menge und Temperatur möglich. (was er ja auch wünscht)

              It's not a Bug, it's a Feature

              1 Antwort Letzte Antwort
              0
              • Z Offline
                Z Offline
                Zodiac2812
                schrieb am zuletzt editiert von
                #7

                Hi Männers,

                sorry grad ne Zeit lang nicht aktiv gewesen, ich spreche die Geräte dann mit einer internen IP-Adresse an.

                Das sollte das ganze einfacher gestalten.

                Muss ich jetzt nur noch einen Trigger haben und den entsprechenden Befehl losschicken oder wie starte ich

                eines der gezeigten Skripte dann?

                Danke natürlich auch noch an euch :D

                Irgendwann muss man anfangen… :mrgreen:

                1 Antwort Letzte Antwort
                0
                • D Offline
                  D Offline
                  danw
                  schrieb am zuletzt editiert von
                  #8

                  Das Script startet sofort, wenn du Speichern drückst (und auch nur einmal). Es hat keinen Trigger oder ähnliches, das musst du dann noch drumherum bauen.

                  Aber ne Info, ob das so funktioniert, wäre schonmal hilfreich.

                  It's not a Bug, it's a Feature

                  1 Antwort Letzte Antwort
                  0
                  • Z Offline
                    Z Offline
                    Zodiac2812
                    schrieb am zuletzt editiert von
                    #9

                    Hallo Leute, bin erst jetzt wieder dazu gekommen es zu testen, bin nebenbei noch am Hausbauen da fehlt oft Zeit.
                    Habe es mal so reingehackt in meinem Unwissen... Es kamen nur Fehlermeldungen, aber ich denke so ganz so einfach war es auch nicht :relaxed:

                    habt ihr mal nen Tipp?

                    064afbce-c9e1-4e11-939a-e3c75f45391e-image.png

                    Irgendwann muss man anfangen… :mrgreen:

                    Z 1 Antwort Letzte Antwort
                    0
                    • Z Zodiac2812

                      Hallo Leute, bin erst jetzt wieder dazu gekommen es zu testen, bin nebenbei noch am Hausbauen da fehlt oft Zeit.
                      Habe es mal so reingehackt in meinem Unwissen... Es kamen nur Fehlermeldungen, aber ich denke so ganz so einfach war es auch nicht :relaxed:

                      habt ihr mal nen Tipp?

                      064afbce-c9e1-4e11-939a-e3c75f45391e-image.png

                      Z Offline
                      Z Offline
                      Zodiac2812
                      schrieb am zuletzt editiert von
                      #10

                      @danw Kannst du mich vll. noch einmal kurz in die richtige Richtung stupsen?

                      Danke vorab....

                      Irgendwann muss man anfangen… :mrgreen:

                      AsgothianA 1 Antwort Letzte Antwort
                      0
                      • Z Zodiac2812

                        @danw Kannst du mich vll. noch einmal kurz in die richtige Richtung stupsen?

                        Danke vorab....

                        AsgothianA Offline
                        AsgothianA Offline
                        Asgothian
                        Developer
                        schrieb am zuletzt editiert von
                        #11

                        @Zodiac2812 Versuch doch mal statt

                        log('Code_statusCode: ' + response.statusCode);
                        log(JSON.parse(body));
                        

                        dieses zu nutzen: Ich gehe davon aus das die response leer ist.

                        log('Code_statusCode: ' + JSON.stringify(statusCode)
                        log(JSON.stringify(body));
                        

                        Des weiteren kann ich dir Insomnia als Werkzeug empfehlen. Das ist ein CrossPlatform Programm mit dem du REST API's abfragen kannst. Deutlich einfacher als ueber js dir das immer selber zusammen zu bauen. Wenn du die Syntax sauber hast kannst du die Requests dann ja in JS nachbilden

                        A.

                        ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                        "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                        1 Antwort Letzte Antwort
                        0
                        • D Offline
                          D Offline
                          danw
                          schrieb am zuletzt editiert von danw
                          #12

                          Zeig uns mal den Fehler aus dem Log-Reiter, der sollte größer sein.

                          Ich kriege keine Mail-Benachrichtigung mehr seit dem neuem Forum, deswegen fällt mir das gar nicht auf, wenn jemand was in einem abonnierten Thema schreibt etc.

                          So funktioniert es bei mir:

                          var server = '';    // IP der Wanne
                          var id  = '';       // ID der Wanne
                          var body_sent = {
                             "temperature": 23.5,
                             "amount": 0.7
                           }
                          
                          request.post({
                                  url: server + '/api/tlc/' + id + '/bathtub-fill/',
                                  headers: {'Content-Type': 'application/json'},
                                  json:    body_sent
                              
                              }, function(error, response, body) {
                                  if (error)  { console.log(error); }
                                  if (!error && response.statusCode == 200) {
                                      log(JSON.parse(body));
                                  }
                              }
                          );
                          

                          Bitte dran denken, dass der Code ja noch entsprechend genutzt werden muss oder was auch immer mit gemacht werden muss, was du erreichen willst. Das ist nur ein Beispiel.

                          It's not a Bug, it's a Feature

                          1 Antwort Letzte Antwort
                          0
                          • Z Offline
                            Z Offline
                            Zodiac2812
                            schrieb am zuletzt editiert von
                            #13

                            Danke für die Hilfe... setze mich jetzt am Wochenende mal intensiv damit auseinander...
                            und werde Berichten..... Insomnia Teste ich dann auch mal auch wenn ich als kompletter starter denke da nicht viel zu checken. :confused:

                            Irgendwann muss man anfangen… :mrgreen:

                            StefanHemi1S 1 Antwort Letzte Antwort
                            0
                            • Z Zodiac2812

                              Danke für die Hilfe... setze mich jetzt am Wochenende mal intensiv damit auseinander...
                              und werde Berichten..... Insomnia Teste ich dann auch mal auch wenn ich als kompletter starter denke da nicht viel zu checken. :confused:

                              StefanHemi1S Offline
                              StefanHemi1S Offline
                              StefanHemi1
                              schrieb am zuletzt editiert von
                              #14

                              @zodiac2812

                              Guten Abend oder besser noch guten Morgen!

                              Darf ich mal neugierig sein und nachfragen, ob man in diesem Thema schon weiter gekommen ist?

                              MfG, Stefan!

                              OliverIOO 1 Antwort Letzte Antwort
                              0
                              • StefanHemi1S StefanHemi1

                                @zodiac2812

                                Guten Abend oder besser noch guten Morgen!

                                Darf ich mal neugierig sein und nachfragen, ob man in diesem Thema schon weiter gekommen ist?

                                MfG, Stefan!

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

                                @stefanhemi1 sagte in Code an Restapi senden via http Befehl…:

                                @zodiac2812

                                Guten Abend oder besser noch guten Morgen!

                                Darf ich mal neugierig sein und nachfragen, ob man in diesem Thema schon weiter gekommen ist?

                                MfG, Stefan!

                                das hier ist schon alt.
                                was willst du genau erreichen?

                                folgende fragen muss man sich beim Abruf oder senden per http überlegen:

                                • mit welcher Methode erwartet die gegenstelle die Anfrage (GET oder POST)
                                • gibt es eine Authentifizierung? Welche Methode? (formular, oauth, Basic)
                                • Welche Daten in welchem exakten Format erwartet die Gegenstelle zum Abruf , aber auch zum setzen von Daten (JSON,XML,proprietär). Das findet man entweder in API-Beschreibungen oder bekommt das durch Reengineering raus (sehr aufwändig, viel rumprobieren) und manchmal versucht der Hersteller der Gegenstelle es auch durch verschlüsseln oder verschwurbeln künstlich schwierig zu machen.

                                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

                                892

                                Online

                                32.5k

                                Benutzer

                                81.6k

                                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