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. Hilfe bei der Script erstellung

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

Hilfe bei der Script erstellung

Geplant Angeheftet Gesperrt Verschoben JavaScript
98 Beiträge 6 Kommentatoren 8.6k Aufrufe 5 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.
  • T T0biT3ch

    @oliverio
    ich habe debug und verbose eingeschaltet. wenn ich das script ausführe bekomme ich diese log

    info	javascript.0 (31387) Start javascript script.js.Pager_Alarmierung.emessage_Send_3
    20:21:59.200	info	javascript.0 (31387) script.js.Pager_Alarmierung.emessage_Send_3: Start Auth
    20:21:59.200	info	javascript.0 (31387) script.js.Pager_Alarmierung.emessage_Send_3: registered 0 subscriptions and 0 schedules
    20:21:59.392	info	javascript.0 (31387) script.js.Pager_Alarmierung.emessage_Send_3: Auth response
    20:21:59.396	info	javascript.0 (31387) script.js.Pager_Alarmierung.emessage_Send_3: Auth error
    20:21:59.396	info	javascript.0 (31387) script.js.Pager_Alarmierung.emessage_Send_3: {}
    

    pager bleibt weiterhin ruhig :disappointed:

    das ist der code aus dem programm postman mit dem die authentifizierung funktioniert

    var axios = require('axios');
    var data = JSON.stringify({
      "username": "USERNAME",
      "password": "PASSWORD"
    });
    
    var config = {
      method: 'post',
      url: 'https://api.emessage.de/auth/login',
      headers: { 
        'Authorization': 'Basic Og==', 
        'Content-Type': 'application/json'
      },
      data : data
    };
    
    axios(config)
    .then(function (response) {
      console.log(JSON.stringify(response.data));
    })
    .catch(function (error) {
      console.log(error);
    });
    

    und mit diesem code aus postman kann ich den pager auslösen

    var axios = require('axios');
    var data = JSON.stringify({
      "messageText": "Testnachricht",
      "recipients": [
        {
          "serviceName": "eCityruf",
          "identifier": "*********"
        }
      ]
    });
    
    var config = {
      method: 'post',
      url: 'https://api.emessage.de/rs/eSendMessages',
      headers: { 
        'Authorization': 'Bearer jdfngjdfgnhflnhlhnjkgöfxclknjfgnklkmnvöldkgnbjhb önflgkdsnölkdymfkäsöldgn lkdnfgksdnfgnbksngjrfgblfdngfskdöngölnhdknhfäödlkgtekröälqenacklvnbmözlmvtöälaenrljeknvtbjölrnzrtmzövdrml.', 
        'Content-Type': 'application/json'
      },
      data : data
    };
    
    axios(config)
    .then(function (response) {
      console.log(JSON.stringify(response.data));
    })
    .catch(function (error) {
      console.log(error);
    });
    
    
    OliverIOO Offline
    OliverIOO Offline
    OliverIO
    schrieb am zuletzt editiert von
    #23

    @t0bit3ch sagte in Hilfe bei der Script erstellung:

    'Authorization': 'Basic Og==', 
    

    Der einzige Unterschied ist Zeile 11.
    Das steht nicht im pdf Dokument drin
    Du kannst ja diesen Header dem Code noch hinzufügen

    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
    • T Nicht stören
      T Nicht stören
      ticaki
      schrieb am zuletzt editiert von ticaki
      #24

      Werft die

      console.log(response);
      

      Aufrufe alle raus. Hab oben geschrieben, dass es einen Fehler auslöst und dann wahrscheinlich in den .catch() Block springt. Log sieht zumindest danach aus.

      Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

      Spenden

      T 1 Antwort Letzte Antwort
      0
      • T ticaki

        Werft die

        console.log(response);
        

        Aufrufe alle raus. Hab oben geschrieben, dass es einen Fehler auslöst und dann wahrscheinlich in den .catch() Block springt. Log sieht zumindest danach aus.

        T Offline
        T Offline
        T0biT3ch
        schrieb am zuletzt editiert von
        #25

        @ticaki sagte in Hilfe bei der Script erstellung:

        Werft die

        console.log(response);
        

        Aufrufe alle raus. Hab oben geschrieben, dass es einen Fehler auslöst und dann wahrscheinlich in den .catch() Block springt. Log sieht zumindest danach aus.

        habe jetzt den code um die zeile

        'Authorization': 'Basic Og==',
        

        erweitert und die

        console.log(response);
        

        entfernt. wenn ich den code jetzt ausführe bekomme ich folgende log

        info	javascript.0 (31387) script.js.Pager_Alarmierung.emessage_Send_3: {'message':'Request failed with status code 401','name':'Error','stack':'Error: Request failed with status code 401\n at createError (/opt/iobroker/node_modules/iobroker.javascript/node_modules/axios/lib/core/createError.js:16:15)\n at settle (/opt/iobroker/node_modules/iobroker.javascript/node_modules/axios/lib/core/settle.js:17:12)\n at IncomingMessage.handleStreamEnd (/opt/iobroker/node_modules/iobroker.javascript/node_modules/axios/lib/adapters/http.js:260:11)\n at IncomingMessage.emit (events.js:326:22)\n at IncomingMessage.EventEmitter.emit (domain.js:483:12)\n at endReadableNT (_stream_readable.js:1241:12)\n at processTicksAndRejections (internal/process/task_queues.js:84:21)','config':{'url':'https://api.emessage.de/rs/eSendMessages','method':'post','data':'{\'messageText\':\'Testnachricht\',\'recipients\':[{\'serviceName\':\'eCityruf\',\'identifier\':\'*******\'}]}','headers':{'Content-Type':'text/plain','Authorization':'hgjfhglöfhdghdhugdfhgöksydjäfgposjghifhgjofnbvdjkidsigfhfdoghfoihgsdihgfiohgodhgosihfghogfdhgoiuhfgosihgsdghesiujpojfpjurtzoieur984548ß90uitjkgigjhöohsdgpsio','User-Agent':'axios/0.21.1','Content-Length':96},'transformRequest':[null],'transformResponse':[null],'timeout':0,'xsrfCookieName':'XSRF-TOKEN','xsrfHeaderName':'X-XSRF-TOKEN','maxContentLength':-1,'maxBodyLength':-1}}
        
        T 1 Antwort Letzte Antwort
        0
        • T T0biT3ch

          @ticaki sagte in Hilfe bei der Script erstellung:

          Werft die

          console.log(response);
          

          Aufrufe alle raus. Hab oben geschrieben, dass es einen Fehler auslöst und dann wahrscheinlich in den .catch() Block springt. Log sieht zumindest danach aus.

          habe jetzt den code um die zeile

          'Authorization': 'Basic Og==',
          

          erweitert und die

          console.log(response);
          

          entfernt. wenn ich den code jetzt ausführe bekomme ich folgende log

          info	javascript.0 (31387) script.js.Pager_Alarmierung.emessage_Send_3: {'message':'Request failed with status code 401','name':'Error','stack':'Error: Request failed with status code 401\n at createError (/opt/iobroker/node_modules/iobroker.javascript/node_modules/axios/lib/core/createError.js:16:15)\n at settle (/opt/iobroker/node_modules/iobroker.javascript/node_modules/axios/lib/core/settle.js:17:12)\n at IncomingMessage.handleStreamEnd (/opt/iobroker/node_modules/iobroker.javascript/node_modules/axios/lib/adapters/http.js:260:11)\n at IncomingMessage.emit (events.js:326:22)\n at IncomingMessage.EventEmitter.emit (domain.js:483:12)\n at endReadableNT (_stream_readable.js:1241:12)\n at processTicksAndRejections (internal/process/task_queues.js:84:21)','config':{'url':'https://api.emessage.de/rs/eSendMessages','method':'post','data':'{\'messageText\':\'Testnachricht\',\'recipients\':[{\'serviceName\':\'eCityruf\',\'identifier\':\'*******\'}]}','headers':{'Content-Type':'text/plain','Authorization':'hgjfhglöfhdghdhugdfhgöksydjäfgposjghifhgjofnbvdjkidsigfhfdoghfoihgsdihgfiohgodhgosihfghogfdhgoiuhfgosihgsdghesiujpojfpjurtzoieur984548ß90uitjkgigjhöohsdgpsio','User-Agent':'axios/0.21.1','Content-Length':96},'transformRequest':[null],'transformResponse':[null],'timeout':0,'xsrfCookieName':'XSRF-TOKEN','xsrfHeaderName':'X-XSRF-TOKEN','maxContentLength':-1,'maxBodyLength':-1}}
          
          T Offline
          T Offline
          T0biT3ch
          schrieb am zuletzt editiert von
          #26

          @t0bit3ch
          muss beim token noch das 'Bearer' voran?

          OliverIOO 1 Antwort Letzte Antwort
          0
          • T T0biT3ch

            @t0bit3ch
            muss beim token noch das 'Bearer' voran?

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

            @t0bit3ch
            Ja, bearer muss noch davor.
            Vergleiche die Notation mit dem pdf. Genau so muss es raus.
            sonst sieht es schon mal gut aus. Die Abfragen sind raus gegangen.

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

            T 1 Antwort Letzte Antwort
            0
            • OliverIOO OliverIO

              @t0bit3ch
              Ja, bearer muss noch davor.
              Vergleiche die Notation mit dem pdf. Genau so muss es raus.
              sonst sieht es schon mal gut aus. Die Abfragen sind raus gegangen.

              T Offline
              T Offline
              T0biT3ch
              schrieb am zuletzt editiert von
              #28

              @oliverio
              Wie muss ich es denn schreiben? Ich hatte schon ein paar Sachen probiert, aber leider ohne Erfolg

              T 1 Antwort Letzte Antwort
              0
              • T T0biT3ch

                @oliverio
                Wie muss ich es denn schreiben? Ich hatte schon ein paar Sachen probiert, aber leider ohne Erfolg

                T Nicht stören
                T Nicht stören
                ticaki
                schrieb am zuletzt editiert von
                #29

                @t0bit3ch
                es müsste eigentlich so richtig sein:

                   {
                            headers: {
                                'Content-Type': 'text/plain',
                                'Authorization': 'Bearer ' + token,
                            }
                    })
                

                Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                Spenden

                T 1 Antwort Letzte Antwort
                0
                • T ticaki

                  @t0bit3ch
                  es müsste eigentlich so richtig sein:

                     {
                              headers: {
                                  'Content-Type': 'text/plain',
                                  'Authorization': 'Bearer ' + token,
                              }
                      })
                  
                  T Offline
                  T Offline
                  T0biT3ch
                  schrieb am zuletzt editiert von T0biT3ch
                  #30

                  @ticaki
                  @OliverIO

                  Guten morgen,

                  ich habe bei den versuchen das Bearer in den code mit einzubauen das + vergessen :face_palm:

                  'authorization': 'Bearer ' + token,
                  

                  ich habe den code jetzt so angepasst

                  const axios = require('axios');
                   
                  function auth() {
                   
                      axios.post('https://api.emessage.de/auth/login',{
                          username: 'USERNAME',
                          password: 'PASSWORD'
                      },{
                          headers: {
                              'Authorization': 'Basic Og==',
                              'Content-Type': 'application/json',
                          }
                      }).then(function (response) {
                          if (response.status==200) {
                              var token = response.data.data.jwt;
                              sendMessage(token)
                          }
                      })
                      .catch(function (error) {
                          console.log(error);
                      });
                      
                  }
                   
                  function sendMessage(token) {
                      axios.post('https://api.emessage.de/rs/eSendMessages',{
                          "messageText": "Testnachricht",
                          "recipients": [
                              {
                              "serviceName": "eCityruf",
                              "identifier": "********"
                              }
                          ]
                      },{
                              headers: {
                                  'Content-Type': 'text/plain',
                                  'Authorization': 'Bearer ' + token,
                              }
                      
                      })
                      .catch(function (error) {
                          console.log(error);
                      });
                   }
                   
                  auth();
                  

                  doch leider bekomme ich noch folgende log

                  info	javascript.0 (31387) script.js.Pager_Alarmierung.emessage_Send_3: registered 0 subscriptions and 0 schedules
                  
                  info	javascript.0 (31387) script.js.Pager_Alarmierung.emessage_Send_3: {'message':'Request failed with status code 400','name':'Error','stack':'Error: Request failed with status code 400\n at createError (/opt/iobroker/node_modules/iobroker.javascript/node_modules/axios/lib/core/createError.js:16:15)\n at settle (/opt/iobroker/node_modules/iobroker.javascript/node_modules/axios/lib/core/settle.js:17:12)\n at IncomingMessage.handleStreamEnd (/opt/iobroker/node_modules/iobroker.javascript/node_modules/axios/lib/adapters/http.js:260:11)\n at IncomingMessage.emit (events.js:326:22)\n at IncomingMessage.EventEmitter.emit (domain.js:483:12)\n at endReadableNT (_stream_readable.js:1241:12)\n at processTicksAndRejections (internal/process/task_queues.js:84:21)','config':{'url':'https://api.emessage.de/rs/eSendMessages','method':'post','data':'{\'messageText\':\'Testnachricht\',\'recipients\':[{\'serviceName\':\'eCityruf\',\'identifier\':\'5201709\'}]}','headers':{'Content-Type':'text/plain','Authorization':'Bearer ighndoönhgdboknbgoföänkjhäpsofmjsponmgbpoikfgnbäkmövkömnfpidsahfiohgniocjro#eiutv0gßreitéß049u48w+9r5uiq0´rwjkefgirgjzh+09vujr5tßhbz iüjvpoawxkjxe2','User-Agent':'axios/0.21.1','Content-Length':96},'transformRequest':[null],'transformResponse':[null],'timeout':0,'xsrfCookieName':'XSRF-TOKEN','xsrfHeaderName':'X-XSRF-TOKEN','maxContentLength':-1,'maxBodyLength':-1}}
                  

                  und der pager bleibt auch ruhig.

                  1 Antwort Letzte Antwort
                  0
                  • T Nicht stören
                    T Nicht stören
                    ticaki
                    schrieb am zuletzt editiert von
                    #31

                    @t0bit3ch sagte in Hilfe bei der Script erstellung:

                    axios.post('https://api.emessage.de/rs/eSendMessages',{

                    In der PDF steht das die Adresse:

                    axios.post('https://api.emessage.de/api/eSendMessages',{
                    

                    Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                    Spenden

                    T 1 Antwort Letzte Antwort
                    0
                    • T ticaki

                      @t0bit3ch sagte in Hilfe bei der Script erstellung:

                      axios.post('https://api.emessage.de/rs/eSendMessages',{

                      In der PDF steht das die Adresse:

                      axios.post('https://api.emessage.de/api/eSendMessages',{
                      
                      T Offline
                      T Offline
                      T0biT3ch
                      schrieb am zuletzt editiert von
                      #32

                      @ticaki
                      Das ist korrekt, funktioniert aber leider nicht. Wenn man sich in der PDF die Screenshots des Postman Programms anschaut sieht man die funktionierende Adresse. Hatte es im Script aber auch schon mit beiden probiert.

                      OliverIOO 1 Antwort Letzte Antwort
                      0
                      • T T0biT3ch

                        @ticaki
                        Das ist korrekt, funktioniert aber leider nicht. Wenn man sich in der PDF die Screenshots des Postman Programms anschaut sieht man die funktionierende Adresse. Hatte es im Script aber auch schon mit beiden probiert.

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

                        @T0biT3ch
                        Zeig nochmal die postman Informationen zum 2. request
                        Der funktioniert hat

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

                        T 1 Antwort Letzte Antwort
                        0
                        • OliverIOO OliverIO

                          @T0biT3ch
                          Zeig nochmal die postman Informationen zum 2. request
                          Der funktioniert hat

                          T Offline
                          T Offline
                          T0biT3ch
                          schrieb am zuletzt editiert von
                          #34

                          @oliverio
                          hier der code zum holen des token

                          var axios = require('axios');
                          var data = JSON.stringify({
                            "username": "USERNAME",
                            "password": "PASSWORD"
                          });
                          
                          var config = {
                            method: 'post',
                            url: 'https://api.emessage.de/auth/login',
                            headers: { 
                              'Authorization': 'Basic Og==', 
                              'Content-Type': 'application/json'
                            },
                            data : data
                          };
                          
                          axios(config)
                          .then(function (response) {
                            console.log(JSON.stringify(response.data));
                          })
                          .catch(function (error) {
                            console.log(error);
                          });
                          

                          es scheint als würde dieser teil in deinem code funktionieren, da die log beim ausführen ja einen token ausgibt.

                          und das ist der code zum senden der nachrichten

                          var axios = require('axios');
                          var data = JSON.stringify({
                            "messageText": "Testnachricht",
                            "recipients": [
                              {
                                "serviceName": "eCityruf",
                                "identifier": "********"
                              }
                            ]
                          });
                          
                          var config = {
                            method: 'post',
                            url: 'https://api.emessage.de/rs/eSendMessages',
                            headers: { 
                              'Authorization': 'Bearer hgöfhogsioghösibnovdjuös<opriheourhweidjmanspkf<gob vuodsöahgbfdosuib0dsifohw84u0ü93rhfouisjhbgnvsoifedsökgpfingüer4984utißqü+äowfmägjhipoqehwfüouasdhgousgjohugurhgjiwehfgiwhfwquhbdcasukojgbhikgögloadfjasfghitiu<fbghkjybgvidfgdhfhgkjhlkzthgtzjklioölzfkdtjrhgstgfzhjui.k,mnjhbgvfadeshgjm', 
                              'Content-Type': 'application/json'
                            },
                            data : data
                          };
                          
                          axios(config)
                          .then(function (response) {
                            console.log(JSON.stringify(response.data));
                          })
                          .catch(function (error) {
                            console.log(error);
                          });
                          
                          
                          T 1 Antwort Letzte Antwort
                          0
                          • T T0biT3ch

                            @oliverio
                            hier der code zum holen des token

                            var axios = require('axios');
                            var data = JSON.stringify({
                              "username": "USERNAME",
                              "password": "PASSWORD"
                            });
                            
                            var config = {
                              method: 'post',
                              url: 'https://api.emessage.de/auth/login',
                              headers: { 
                                'Authorization': 'Basic Og==', 
                                'Content-Type': 'application/json'
                              },
                              data : data
                            };
                            
                            axios(config)
                            .then(function (response) {
                              console.log(JSON.stringify(response.data));
                            })
                            .catch(function (error) {
                              console.log(error);
                            });
                            

                            es scheint als würde dieser teil in deinem code funktionieren, da die log beim ausführen ja einen token ausgibt.

                            und das ist der code zum senden der nachrichten

                            var axios = require('axios');
                            var data = JSON.stringify({
                              "messageText": "Testnachricht",
                              "recipients": [
                                {
                                  "serviceName": "eCityruf",
                                  "identifier": "********"
                                }
                              ]
                            });
                            
                            var config = {
                              method: 'post',
                              url: 'https://api.emessage.de/rs/eSendMessages',
                              headers: { 
                                'Authorization': 'Bearer hgöfhogsioghösibnovdjuös<opriheourhweidjmanspkf<gob vuodsöahgbfdosuib0dsifohw84u0ü93rhfouisjhbgnvsoifedsökgpfingüer4984utißqü+äowfmägjhipoqehwfüouasdhgousgjohugurhgjiwehfgiwhfwquhbdcasukojgbhikgögloadfjasfghitiu<fbghkjybgvidfgdhfhgkjhlkzthgtzjklioölzfkdtjrhgstgfzhjui.k,mnjhbgvfadeshgjm', 
                                'Content-Type': 'application/json'
                              },
                              data : data
                            };
                            
                            axios(config)
                            .then(function (response) {
                              console.log(JSON.stringify(response.data));
                            })
                            .catch(function (error) {
                              console.log(error);
                            });
                            
                            
                            T Nicht stören
                            T Nicht stören
                            ticaki
                            schrieb am zuletzt editiert von
                            #35

                            @t0bit3ch
                            Content/Type ist anders

                            Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                            Spenden

                            T 1 Antwort Letzte Antwort
                            0
                            • T ticaki

                              @t0bit3ch
                              Content/Type ist anders

                              T Offline
                              T Offline
                              T0biT3ch
                              schrieb am zuletzt editiert von
                              #36

                              @ticaki sagte in Hilfe bei der Script erstellung:

                              @t0bit3ch
                              Content/Type ist anders

                              @ticaki
                              @OliverIO

                              ES FUNKTIONIERT :+1: :grinning: :kissing_heart: :+1:
                              Vielen Vielen Vielen dank euch.

                              const axios = require('axios');
                               
                              function auth() {
                               
                                  axios.post('https://api.emessage.de/auth/login',{
                                      username: 'USERNAME',
                                      password: 'PASSWORD'
                                  },{
                                      headers: {
                                          'Authorization': 'Basic Og==',
                                          'Content-Type': 'application/json',
                                      }
                                  }).then(function (response) {
                                      if (response.status==200) {
                                          var token = response.data.data.jwt;
                                          sendMessage(token)
                                      }
                                  })
                                  .catch(function (error) {
                                      console.log(error);
                                  });
                                  
                              }
                               
                              function sendMessage(token) {
                                  axios.post('https://api.emessage.de/rs/eSendMessages',{
                                      "messageText": "Testnachricht",
                                      "recipients": [
                                          {
                                          "serviceName": "eCityruf",
                                          "identifier": "********"
                                          }
                                      ]
                                  },{
                                          headers: {
                                              'Content-Type': 'application/json',
                                              'Authorization': 'Bearer ' + token,
                                          }
                                  
                                  })
                                  .catch(function (error) {
                                      console.log(error);
                                  });
                               }
                               
                              auth();
                              

                              eine kleine frage hätte ich noch um die sache perfekt zu machen
                              wie kann ich bei

                              "messageText": "Testnachricht",
                              

                              den Text "Testnachricht" durch den wert aus einem datenpunkt ersetzen?

                              OliverIOO 1 Antwort Letzte Antwort
                              0
                              • T T0biT3ch

                                @ticaki sagte in Hilfe bei der Script erstellung:

                                @t0bit3ch
                                Content/Type ist anders

                                @ticaki
                                @OliverIO

                                ES FUNKTIONIERT :+1: :grinning: :kissing_heart: :+1:
                                Vielen Vielen Vielen dank euch.

                                const axios = require('axios');
                                 
                                function auth() {
                                 
                                    axios.post('https://api.emessage.de/auth/login',{
                                        username: 'USERNAME',
                                        password: 'PASSWORD'
                                    },{
                                        headers: {
                                            'Authorization': 'Basic Og==',
                                            'Content-Type': 'application/json',
                                        }
                                    }).then(function (response) {
                                        if (response.status==200) {
                                            var token = response.data.data.jwt;
                                            sendMessage(token)
                                        }
                                    })
                                    .catch(function (error) {
                                        console.log(error);
                                    });
                                    
                                }
                                 
                                function sendMessage(token) {
                                    axios.post('https://api.emessage.de/rs/eSendMessages',{
                                        "messageText": "Testnachricht",
                                        "recipients": [
                                            {
                                            "serviceName": "eCityruf",
                                            "identifier": "********"
                                            }
                                        ]
                                    },{
                                            headers: {
                                                'Content-Type': 'application/json',
                                                'Authorization': 'Bearer ' + token,
                                            }
                                    
                                    })
                                    .catch(function (error) {
                                        console.log(error);
                                    });
                                 }
                                 
                                auth();
                                

                                eine kleine frage hätte ich noch um die sache perfekt zu machen
                                wie kann ich bei

                                "messageText": "Testnachricht",
                                

                                den Text "Testnachricht" durch den wert aus einem datenpunkt ersetzen?

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

                                @t0bit3ch

                                genauso wie du den token an die nachricht anfügst.
                                du ersetzt die stelle mit einer variable und belegst die variable mit deinem nachrichtentext

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

                                T 1 Antwort Letzte Antwort
                                0
                                • OliverIOO OliverIO

                                  @t0bit3ch

                                  genauso wie du den token an die nachricht anfügst.
                                  du ersetzt die stelle mit einer variable und belegst die variable mit deinem nachrichtentext

                                  T Offline
                                  T Offline
                                  T0biT3ch
                                  schrieb am zuletzt editiert von
                                  #38

                                  @oliverio sagte in Hilfe bei der Script erstellung:

                                  @t0bit3ch

                                  genauso wie du den token an die nachricht anfügst.
                                  du ersetzt die stelle mit einer variable und belegst die variable mit deinem nachrichtentext

                                  @OliverIO

                                  ich habe den code jetzt so angepasst, aber er schmeißt mir nur fehler

                                  const axios = require('axios');
                                  var alarmmeldung = getState"javascript.0.emmesage.alarmtext".val;
                                  function auth() {
                                   
                                      axios.post('https://api.emessage.de/auth/login',{
                                          username: 'USERNAME',         //* E*Message Benutzername */
                                          password: 'PASSWORD'   //* E*Message Kennwort */
                                      },{
                                          headers: {
                                              'Authorization': 'Basic Og==',
                                              'Content-Type': 'application/json',
                                          }
                                      }).then(function (response) {
                                          if (response.status==200) {
                                              var token = response.data.data.jwt;
                                              sendMessage(token)
                                          }
                                      })
                                      .catch(function (error) {
                                          console.log(error);
                                      });
                                      
                                  }
                                   
                                  function sendMessage(token) {
                                      axios.post('https://api.emessage.de/rs/eSendMessages',{
                                          "messageText": alarmmeldung,     //* Pocsag Nachricht an Pager */ //* bei mir durch einen Datenpunkt ersetzt */
                                          "recipients": [
                                              {
                                              "serviceName": "eCityruf",  //* Alarmierungstyp */ //* eCityruf - eBos - 2wayS */
                                              "identifier": "*******"     //* E*Message Funkrufnummer */
                                              }
                                          ]
                                      },{
                                              headers: {
                                                  'Content-Type': 'application/json',
                                                  'Authorization': 'Bearer ' + token,
                                              }
                                      
                                      })
                                      .catch(function (error) {
                                          console.log(error);
                                      });
                                   }
                                   
                                  auth();
                                  
                                  error	javascript.0 (13740) script.js.Pager_Alarmierung.emessage_send_test1 compile failed: at script.js.Pager_Alarmierung.emessage_send_test1:2
                                  
                                  T 1 Antwort Letzte Antwort
                                  0
                                  • T T0biT3ch

                                    @oliverio sagte in Hilfe bei der Script erstellung:

                                    @t0bit3ch

                                    genauso wie du den token an die nachricht anfügst.
                                    du ersetzt die stelle mit einer variable und belegst die variable mit deinem nachrichtentext

                                    @OliverIO

                                    ich habe den code jetzt so angepasst, aber er schmeißt mir nur fehler

                                    const axios = require('axios');
                                    var alarmmeldung = getState"javascript.0.emmesage.alarmtext".val;
                                    function auth() {
                                     
                                        axios.post('https://api.emessage.de/auth/login',{
                                            username: 'USERNAME',         //* E*Message Benutzername */
                                            password: 'PASSWORD'   //* E*Message Kennwort */
                                        },{
                                            headers: {
                                                'Authorization': 'Basic Og==',
                                                'Content-Type': 'application/json',
                                            }
                                        }).then(function (response) {
                                            if (response.status==200) {
                                                var token = response.data.data.jwt;
                                                sendMessage(token)
                                            }
                                        })
                                        .catch(function (error) {
                                            console.log(error);
                                        });
                                        
                                    }
                                     
                                    function sendMessage(token) {
                                        axios.post('https://api.emessage.de/rs/eSendMessages',{
                                            "messageText": alarmmeldung,     //* Pocsag Nachricht an Pager */ //* bei mir durch einen Datenpunkt ersetzt */
                                            "recipients": [
                                                {
                                                "serviceName": "eCityruf",  //* Alarmierungstyp */ //* eCityruf - eBos - 2wayS */
                                                "identifier": "*******"     //* E*Message Funkrufnummer */
                                                }
                                            ]
                                        },{
                                                headers: {
                                                    'Content-Type': 'application/json',
                                                    'Authorization': 'Bearer ' + token,
                                                }
                                        
                                        })
                                        .catch(function (error) {
                                            console.log(error);
                                        });
                                     }
                                     
                                    auth();
                                    
                                    error	javascript.0 (13740) script.js.Pager_Alarmierung.emessage_send_test1 compile failed: at script.js.Pager_Alarmierung.emessage_send_test1:2
                                    
                                    T Nicht stören
                                    T Nicht stören
                                    ticaki
                                    schrieb am zuletzt editiert von
                                    #39

                                    @t0bit3ch
                                    Steht doch da :) in Zeile 2 ist ein Fehler. Da fehlen die Klammer setState().val

                                    Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                    Spenden

                                    T 1 Antwort Letzte Antwort
                                    0
                                    • T ticaki

                                      @t0bit3ch
                                      Steht doch da :) in Zeile 2 ist ein Fehler. Da fehlen die Klammer setState().val

                                      T Offline
                                      T Offline
                                      T0biT3ch
                                      schrieb am zuletzt editiert von T0biT3ch
                                      #40

                                      @ticaki
                                      wenn ich es so mache

                                      var alarmmeldung = getState("javascript.0.emmesage.alarmtext").val;
                                      

                                      bekomme ich den log

                                      warn	javascript.0 (13740) at script.js.Pager_Alarmierung.emessage_send_test1:2:20
                                      21:09:20.934	warn	javascript.0 (13740) at script.js.Pager_Alarmierung.emessage_send_test1:49:3
                                      21:09:20.935	info	javascript.0 (13740) script.js.Pager_Alarmierung.emessage_send_test1: registered 0 subscriptions and 0 schedules
                                      21:09:21.235	info	javascript.0 (13740) script.js.Pager_Alarmierung.emessage_send_test1: {'message':'Request failed with status code 400','name':'Error','stack':'Error: Request failed with status code 400\n at createError (/opt/iobroker/node_modules/iobroker.javascript/node_modules/axios/lib/core/createError.js:16:15)\n at settle (/opt/iobroker/node_modules/iobroker.javascript/node_modules/axios/lib/core/settle.js:17:12)\n at IncomingMessage.handleStreamEnd (/opt/iobroker/node_modules/iobroker.javascript/node_modules/axios/lib/adapters/http.js:260:11)\n at IncomingMessage.emit (events.js:326:22)\n at IncomingMessage.EventEmitter.emit (domain.js:483:12)\n at endReadableNT (_stream_readable.js:1241:12)\n at processTicksAndRejections (internal/process/task_queues.js:84:21)','config':{'url':'https://api.emessage.de/rs/eSendMessages','method':'post','data':'{\'messageText\':null,\'recipients\':[{\'serviceName\':\'eCityruf\',\'identifier\':\'*******\'}]}','headers':{'Content-Type':'application/json','Authorization':'Bearer TOKEN','User-Agent':'axios/0.21.1','Content-Length':85},'transformRequest':[null],'transformResponse':[null],'timeout':0,'xsrfCookieName':'XSRF-TOKEN','xsrfHeaderName':'X-XSRF-TOKEN','maxContentLength':-1,'maxBodyLength':-1}}
                                      

                                      aber in zeile 3 steht ja garnichts :thinking_face:

                                      T 1 Antwort Letzte Antwort
                                      0
                                      • T T0biT3ch

                                        @ticaki
                                        wenn ich es so mache

                                        var alarmmeldung = getState("javascript.0.emmesage.alarmtext").val;
                                        

                                        bekomme ich den log

                                        warn	javascript.0 (13740) at script.js.Pager_Alarmierung.emessage_send_test1:2:20
                                        21:09:20.934	warn	javascript.0 (13740) at script.js.Pager_Alarmierung.emessage_send_test1:49:3
                                        21:09:20.935	info	javascript.0 (13740) script.js.Pager_Alarmierung.emessage_send_test1: registered 0 subscriptions and 0 schedules
                                        21:09:21.235	info	javascript.0 (13740) script.js.Pager_Alarmierung.emessage_send_test1: {'message':'Request failed with status code 400','name':'Error','stack':'Error: Request failed with status code 400\n at createError (/opt/iobroker/node_modules/iobroker.javascript/node_modules/axios/lib/core/createError.js:16:15)\n at settle (/opt/iobroker/node_modules/iobroker.javascript/node_modules/axios/lib/core/settle.js:17:12)\n at IncomingMessage.handleStreamEnd (/opt/iobroker/node_modules/iobroker.javascript/node_modules/axios/lib/adapters/http.js:260:11)\n at IncomingMessage.emit (events.js:326:22)\n at IncomingMessage.EventEmitter.emit (domain.js:483:12)\n at endReadableNT (_stream_readable.js:1241:12)\n at processTicksAndRejections (internal/process/task_queues.js:84:21)','config':{'url':'https://api.emessage.de/rs/eSendMessages','method':'post','data':'{\'messageText\':null,\'recipients\':[{\'serviceName\':\'eCityruf\',\'identifier\':\'*******\'}]}','headers':{'Content-Type':'application/json','Authorization':'Bearer TOKEN','User-Agent':'axios/0.21.1','Content-Length':85},'transformRequest':[null],'transformResponse':[null],'timeout':0,'xsrfCookieName':'XSRF-TOKEN','xsrfHeaderName':'X-XSRF-TOKEN','maxContentLength':-1,'maxBodyLength':-1}}
                                        

                                        aber in zeile 3 steht ja garnichts :thinking_face:

                                        T Nicht stören
                                        T Nicht stören
                                        ticaki
                                        schrieb am zuletzt editiert von
                                        #41

                                        @t0bit3ch
                                        In Zeile 3 steht die Funktion in der eine Warnung ausgelöst wird. In Zeile 20 rufst du console.log(error) auf. Keine Ahnung was in error drin steht, aber scheinbar kann die log funktion das nicht verarbeiten.

                                        Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                        Spenden

                                        T 1 Antwort Letzte Antwort
                                        0
                                        • T ticaki

                                          @t0bit3ch
                                          In Zeile 3 steht die Funktion in der eine Warnung ausgelöst wird. In Zeile 20 rufst du console.log(error) auf. Keine Ahnung was in error drin steht, aber scheinbar kann die log funktion das nicht verarbeiten.

                                          T Offline
                                          T Offline
                                          T0biT3ch
                                          schrieb am zuletzt editiert von
                                          #42

                                          @ticaki

                                          hab es jetzt so probiert

                                          var alarmmeldung = "javascript.0.E_Message.Alarmtext";
                                          
                                          "messageText": getState(alarmmeldung).val,
                                          

                                          jetzt kommt kein fehler mehr im log aber der pager wird auch nicht mehr ausgelöst :sob:

                                          T 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

                                          830

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          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