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 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

                            698

                            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