Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. JS zum senden über "Dockerized Signal Messenger REST API"

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

JS zum senden über "Dockerized Signal Messenger REST API"

Scheduled Pinned Locked Moved JavaScript
14 Posts 3 Posters 794 Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • K Offline
    K Offline
    Klausimausi
    wrote on last edited by
    #1

    Hallo, ich muß als Neuling mal wieder was aufleben lassen.
    Diesen Code hatte @Codierknecht 2023 zur Verfügung gestellt.

    function sendWithSignal(message, recipients) {
        var sendParams = {
            url: 'http://192.168.178.5:8086/v2/send',
            headers: {'Content-Type': 'application/json'},
            body: '{"message": "' + message + '", "number": "+4915*****", "recipients": [ ' + recipients + ' ]}'
        };
        request.post(sendParams, function(error, response, body) {
            if (error) {
                log(error);
            } else {
                log('Nachricht versendet!');
            }
        });
    }
     
    

    Ich wollte diesen aufgrund mangelnder Codierkenntnisse auch nutzen.
    Das funktioniert auch soweit, bis auf das dass Verfahren über request.post nicht mehr up to date ist.
    Ich bin leider zu doof um das auf httpget oder fetch umzustellen.
    Es wäre schön, wenn mir das jemand anpassen könnte ohne noch zusätzliche Pakete installieren zu müssen.
    Vielen Dank
    Klausimausi

    CodierknechtC 1 Reply Last reply
    0
    • K Klausimausi

      Hallo, ich muß als Neuling mal wieder was aufleben lassen.
      Diesen Code hatte @Codierknecht 2023 zur Verfügung gestellt.

      function sendWithSignal(message, recipients) {
          var sendParams = {
              url: 'http://192.168.178.5:8086/v2/send',
              headers: {'Content-Type': 'application/json'},
              body: '{"message": "' + message + '", "number": "+4915*****", "recipients": [ ' + recipients + ' ]}'
          };
          request.post(sendParams, function(error, response, body) {
              if (error) {
                  log(error);
              } else {
                  log('Nachricht versendet!');
              }
          });
      }
       
      

      Ich wollte diesen aufgrund mangelnder Codierkenntnisse auch nutzen.
      Das funktioniert auch soweit, bis auf das dass Verfahren über request.post nicht mehr up to date ist.
      Ich bin leider zu doof um das auf httpget oder fetch umzustellen.
      Es wäre schön, wenn mir das jemand anpassen könnte ohne noch zusätzliche Pakete installieren zu müssen.
      Vielen Dank
      Klausimausi

      CodierknechtC Online
      CodierknechtC Online
      Codierknecht
      Developer Most Active
      wrote on last edited by
      #2

      @klausimausi
      Der Teil von Zeile 7 bis 13 sollte dann so aussehen:

          httpPost(url, reqBody, (error) => {
              if (error) {
                  console.error(error)
              } else {
                  console.log('Nachricht versendet!');
              }
          });
      
      

      "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

      Proxmox 9.1.1 LXC|8 GB|Core i7-6700
      HmIP|ZigBee|Tasmota|Unifi
      Zabbix Certified Specialist
      Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

      K 1 Reply Last reply
      0
      • CodierknechtC Codierknecht

        @klausimausi
        Der Teil von Zeile 7 bis 13 sollte dann so aussehen:

            httpPost(url, reqBody, (error) => {
                if (error) {
                    console.error(error)
                } else {
                    console.log('Nachricht versendet!');
                }
            });
        
        
        K Offline
        K Offline
        Klausimausi
        wrote on last edited by
        #3

        @codierknecht
        WoW! Schnell !
        Da muss ich nochmal nachhaken.
        Die Variable var sendParams brauche ich dann ja so nicht mehr. die URL kann ich da direkt eintragen
        nur wie übergebe ich dann die benötigten Parameter an regBody?

        Danke Klausimausi

        CodierknechtC 1 Reply Last reply
        0
        • K Klausimausi

          @codierknecht
          WoW! Schnell !
          Da muss ich nochmal nachhaken.
          Die Variable var sendParams brauche ich dann ja so nicht mehr. die URL kann ich da direkt eintragen
          nur wie übergebe ich dann die benötigten Parameter an regBody?

          Danke Klausimausi

          CodierknechtC Online
          CodierknechtC Online
          Codierknecht
          Developer Most Active
          wrote on last edited by wendy2702
          #4

          @klausimausi
          So sieht meine Funktion komplett aus. Die kann auch Anhänge (Bilder) mitschicken.
          Nur mit 'ner Nachricht aufgerufen, wird diese an den Standardempfänger (mich) versendet.
          Man kann auch ein Array mitgeben - dann wird an mehrere Empfänger versendet.

          const url = 'http://192.168.179.13:8086/v2/send';
          const fs = require('fs');
          const mobileNumber = ['+49xxxxxx7'];
          
          function toBase64(filePath) {
            const img = fs.readFileSync(filePath);
            return Buffer.from(img).toString('base64');
          }
          
          async function sendSignalMessage(message, recipients = mobileNumber, attachment = '') {
          
              const reqBody = {
                  message,
                  number: '+49xxxxxxx9',
                  recipients: recipients,
              };    
          
              if (attachment != '') {
                  const base64File = await toBase64(attachment);
                  reqBody.base64_attachments = base64File;
                  console.log('Sende Signal-Nachricht mit Anhang');
              }
          
              httpPost(url, reqBody, (error) => {
                  if (error) {
                      console.error(error);
                  } else {
                      console.log('Nachricht versendet!');
                  }
              });
          }
          

          MOD EDIT: Private Handynummer unkenntlich gemacht

          "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

          Proxmox 9.1.1 LXC|8 GB|Core i7-6700
          HmIP|ZigBee|Tasmota|Unifi
          Zabbix Certified Specialist
          Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

          wendy2702W 1 Reply Last reply
          0
          • CodierknechtC Codierknecht

            @klausimausi
            So sieht meine Funktion komplett aus. Die kann auch Anhänge (Bilder) mitschicken.
            Nur mit 'ner Nachricht aufgerufen, wird diese an den Standardempfänger (mich) versendet.
            Man kann auch ein Array mitgeben - dann wird an mehrere Empfänger versendet.

            const url = 'http://192.168.179.13:8086/v2/send';
            const fs = require('fs');
            const mobileNumber = ['+49xxxxxx7'];
            
            function toBase64(filePath) {
              const img = fs.readFileSync(filePath);
              return Buffer.from(img).toString('base64');
            }
            
            async function sendSignalMessage(message, recipients = mobileNumber, attachment = '') {
            
                const reqBody = {
                    message,
                    number: '+49xxxxxxx9',
                    recipients: recipients,
                };    
            
                if (attachment != '') {
                    const base64File = await toBase64(attachment);
                    reqBody.base64_attachments = base64File;
                    console.log('Sende Signal-Nachricht mit Anhang');
                }
            
                httpPost(url, reqBody, (error) => {
                    if (error) {
                        console.error(error);
                    } else {
                        console.log('Nachricht versendet!');
                    }
                });
            }
            

            MOD EDIT: Private Handynummer unkenntlich gemacht

            wendy2702W Offline
            wendy2702W Offline
            wendy2702
            wrote on last edited by
            #5

            @codierknecht War mal so frei deine Handynummer unkenntlich zu machen.

            Bitte keine Fragen per PN, die gehören ins Forum!

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            CodierknechtC 1 Reply Last reply
            1
            • wendy2702W wendy2702

              @codierknecht War mal so frei deine Handynummer unkenntlich zu machen.

              CodierknechtC Online
              CodierknechtC Online
              Codierknecht
              Developer Most Active
              wrote on last edited by
              #6

              @wendy2702
              Danke - das waren logischerweise Phantasienummern ;-)

              "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

              Proxmox 9.1.1 LXC|8 GB|Core i7-6700
              HmIP|ZigBee|Tasmota|Unifi
              Zabbix Certified Specialist
              Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

              K 2 Replies Last reply
              0
              • CodierknechtC Codierknecht

                @wendy2702
                Danke - das waren logischerweise Phantasienummern ;-)

                K Offline
                K Offline
                Klausimausi
                wrote on last edited by
                #7

                @codierknecht
                Danke ! Jetzt wird es klarer. Mal sehen ob ich das so in mein Script kriege.
                MfG Klausimausi

                1 Reply Last reply
                0
                • CodierknechtC Codierknecht

                  @wendy2702
                  Danke - das waren logischerweise Phantasienummern ;-)

                  K Offline
                  K Offline
                  Klausimausi
                  wrote on last edited by
                  #8

                  @codierknecht

                  Also für heute gebe ich es auf.
                  Ich habe die attachments erstmal entfernt um die Fehlermeldung zu eleminieren, weil es kein (img) hatte.
                  Dann läuft das script ohne fehler durch und zeigt im LOG auch "Nachricht versendet!" an.
                  Nur am Empfänger kommt nichts an.

                  MfG

                  CodierknechtC 1 Reply Last reply
                  0
                  • K Klausimausi

                    @codierknecht

                    Also für heute gebe ich es auf.
                    Ich habe die attachments erstmal entfernt um die Fehlermeldung zu eleminieren, weil es kein (img) hatte.
                    Dann läuft das script ohne fehler durch und zeigt im LOG auch "Nachricht versendet!" an.
                    Nur am Empfänger kommt nichts an.

                    MfG

                    CodierknechtC Online
                    CodierknechtC Online
                    Codierknecht
                    Developer Most Active
                    wrote on last edited by
                    #9

                    @klausimausi
                    Du hast als number auch Deine Absendernummer eingetragen?

                    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                    Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                    HmIP|ZigBee|Tasmota|Unifi
                    Zabbix Certified Specialist
                    Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                    K 1 Reply Last reply
                    0
                    • CodierknechtC Codierknecht

                      @klausimausi
                      Du hast als number auch Deine Absendernummer eingetragen?

                      K Offline
                      K Offline
                      Klausimausi
                      wrote on last edited by Klausimausi
                      #10

                      @codierknecht
                      Ja. number ist die Absendenummer und mobileNumber als Zielnummer. Als message übergebe ich einen String mit Funktionsaufruf.

                      httpPost Agrumente habe ich mir mal im log anzeigen lassen:
                      url --> http://192.168.33.33:8085/v2/send
                      reqBody--> {message:'Hallo Test',number:'+49xxxxxxx3',recipients:'+49xxxxxxxx9'}

                      CodierknechtC 1 Reply Last reply
                      0
                      • K Klausimausi

                        @codierknecht
                        Ja. number ist die Absendenummer und mobileNumber als Zielnummer. Als message übergebe ich einen String mit Funktionsaufruf.

                        httpPost Agrumente habe ich mir mal im log anzeigen lassen:
                        url --> http://192.168.33.33:8085/v2/send
                        reqBody--> {message:'Hallo Test',number:'+49xxxxxxx3',recipients:'+49xxxxxxxx9'}

                        CodierknechtC Online
                        CodierknechtC Online
                        Codierknecht
                        Developer Most Active
                        wrote on last edited by
                        #11

                        @klausimausi
                        Die Empfängernummer ist ein Array?

                        recipients:['+49xxxxxxxx9']
                        

                        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                        Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                        HmIP|ZigBee|Tasmota|Unifi
                        Zabbix Certified Specialist
                        Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                        K 1 Reply Last reply
                        0
                        • CodierknechtC Codierknecht

                          @klausimausi
                          Die Empfängernummer ist ein Array?

                          recipients:['+49xxxxxxxx9']
                          
                          K Offline
                          K Offline
                          Klausimausi
                          wrote on last edited by
                          #12

                          @codierknecht
                          Yes ! Das Script sendet nun die Message. Im Log erhalte ichnun allerdings eine Fehlermeldung:

                          error httpPost(url=http://192.168.33.33:8085/v2/send, error=timeout of 2000ms exceeded)
                          error timeout of 2000ms exceeded)

                          Puh
                          MfG

                          CodierknechtC 1 Reply Last reply
                          0
                          • K Klausimausi

                            @codierknecht
                            Yes ! Das Script sendet nun die Message. Im Log erhalte ichnun allerdings eine Fehlermeldung:

                            error httpPost(url=http://192.168.33.33:8085/v2/send, error=timeout of 2000ms exceeded)
                            error timeout of 2000ms exceeded)

                            Puh
                            MfG

                            CodierknechtC Online
                            CodierknechtC Online
                            Codierknecht
                            Developer Most Active
                            wrote on last edited by
                            #13

                            @klausimausi

                            httpPost(url, reqBody, {timeout: 5000}, (error) => {
                            

                            "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                            Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                            HmIP|ZigBee|Tasmota|Unifi
                            Zabbix Certified Specialist
                            Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                            K 1 Reply Last reply
                            0
                            • CodierknechtC Codierknecht

                              @klausimausi

                              httpPost(url, reqBody, {timeout: 5000}, (error) => {
                              
                              K Offline
                              K Offline
                              Klausimausi
                              wrote on last edited by
                              #14

                              @codierknecht
                              Geschafft. Jetzt geht es! Nochmal ei dickes Lob!
                              MfG

                              1 Reply Last reply
                              0
                              Reply
                              • Reply as topic
                              Log in to reply
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes


                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              711

                              Online

                              32.6k

                              Users

                              82.2k

                              Topics

                              1.3m

                              Posts
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                              ioBroker Community 2014-2025
                              logo
                              • Login

                              • Don't have an account? Register

                              • Login or register to search.
                              • First post
                                Last post
                              0
                              • Home
                              • Recent
                              • Tags
                              • Unread 0
                              • Categories
                              • Unreplied
                              • Popular
                              • GitHub
                              • Docu
                              • Hilfe