Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test Adapter Signal-cli-rest-api-client

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Test Adapter Signal-cli-rest-api-client

    This topic has been deleted. Only users with topic management privileges can see it.
    • Codierknecht
      Codierknecht Developer Most Active @Issr4k last edited by

      @issr4k sagte in Test Adapter Signal-cli-rest-api-client:

      @codierknecht
      Ich glaube ein Missverständnis...

      Bietet die Software, die du getestet hast, die Funktion eine eigenständige Nummer zu verwenden?

      Natürlich. Sonst wäre das für mich eigentlich unbrauchbar. Ich will ja, dass sich der ioBroker mit 'ner eigenen Nummer meldet.

      Issr4k 1 Reply Last reply Reply Quote 1
      • Issr4k
        Issr4k @Codierknecht last edited by Issr4k

        @codierknecht said in Test Adapter Signal-cli-rest-api-client:

        Natürlich. Sonst wäre das für mich eigentlich unbrauchbar. Ich will ja, dass sich der ioBroker mit 'ner eigenen Nummer meldet.

        Ah ok, dann habe ich dich anfangs falsch verstanden.
        Es wäre auch meine Vorstellung ioBroker mit eigener Nummer zu nutzen 🙂

        Edit: Was meinst du dann genau hiermit?
        @codierknecht said in Test Adapter Signal-cli-rest-api-client:

        • Für mich der schwerwiegenste Nachteil:
        Codierknecht 1 Reply Last reply Reply Quote 0
        • Codierknecht
          Codierknecht Developer Most Active @Issr4k last edited by

          @issr4k sagte in Test Adapter Signal-cli-rest-api-client:

          Was meinst du dann genau hiermit?

          @codierknecht said in Test Adapter Signal-cli-rest-api-client:

          Für mich der schwerwiegenste Nachteil:

          Das muss ich mittlerweile relativieren:
          Prinzipiell hat hier erstmal der CallMeBot die Nase vorn, da er ja mit seiner Nummer sendet und damit leicht als ioBroker identifiziert werden kann.
          Ich hatte aber noch eine SIM-Karte "übrig" und auch noch ein Reservehandy, um das soweit einzurichten.
          Aber das kann oder will halt nicht jeder.

          Issr4k 1 Reply Last reply Reply Quote 0
          • Issr4k
            Issr4k @Codierknecht last edited by

            @codierknecht
            Ok verstehe 🙂
            Ich bin auch bereit irgendein Prepaid oder günstigen Vertrag abzuschließen um eine eigenständige Nummer für ioBroker zu haben 🙂

            Ich versuche mich die nächsten Tage ebenfalls mal daran.
            Habe zwar noch nie Docker benutzt, aber habe noch einen Raspi, wo ich das installieren kann 🙂

            Komme dann bestimmt nochmal auf dich zurück, falls es Probleme gibt 🙂
            Danke!

            Codierknecht 1 Reply Last reply Reply Quote 0
            • Codierknecht
              Codierknecht Developer Most Active @Issr4k last edited by

              @issr4k
              Wenn Du eine Raspi hast, brauchst Du ja kein Docker.

              Issr4k 1 Reply Last reply Reply Quote 0
              • Issr4k
                Issr4k @Codierknecht last edited by

                @codierknecht
                Nicht?

                Was dann?

                Diese CallmetBot Geschichte?
                Da hängt dann ja leider wieder eine dritte Partei drin…

                Codierknecht 1 Reply Last reply Reply Quote 0
                • Codierknecht
                  Codierknecht Developer Most Active @Issr4k last edited by

                  @issr4k
                  Im Detail bin ich da leider überfragt, aber ich bin mir fast sicher dass das auch ohne geht.
                  Vielleicht springt hier ja mal einer der Spezialisten ein.

                  Issr4k 1 Reply Last reply Reply Quote 0
                  • Issr4k
                    Issr4k @Codierknecht last edited by Issr4k

                    @codierknecht Hast du hier nochmal weitergearbeitet?
                    Habe das mittlerweile auch endlich, mal vorsichtig ausgedruckt "am Laufen"...
                    leider steht die Verbindung zu ioBroker noch nicht.

                    der Docker Container läuft auf externer Hardware (Raspi), über ssh kann ich mit dem entsprechenden curl Befehl auch eine Nachricht senden die auch erfreulicherweise ankommt 🙂

                    curl -X POST -H "Content-Type: application/json" 'http://localhost:8080/v2/send' \
                         -d '{"message": "Test via Signal API!", "number": "+4917****", "recipients": [ "+4917*****" ]}'
                    

                    ioBroker sagt mir aber folgendes... der Adapter wird nur kurz gelb und springt direkt wieder auf rot.

                    signalclirestapiclient.0   28862	2023-03-26 17:28:44.275	error	SignalRestAPI Webscocket: not Connected
                    

                    Welche url muss ich aufrufen bzw wie muss der Syntax aussehen um manuell über den Browser eine Nachricht zu verschicken?

                    // Wie muss die Adresse kmplettiert werden um z.B. die gleiche Nachricht wie oben an die entsprechende Nummer zu schicken?
                    http://XXX.XXX.XXX.XXX:8080/v2/send/ ....
                    

                    Eine Verbindung ist logischerweise da wie man hier sehen kann wenn ich im Browser .../about aufrufe kommt zumindest Antwort.

                    http://XXX.XXX.XXX.XXX:8080/v1/about
                    
                    {"versions":["v1","v2"],"build":2,"mode":"normal","version":"0.65","capabilities":{"v2/send":["quotes","mentions"]}}
                    

                    Danke vorab!!!

                    Codierknecht 1 Reply Last reply Reply Quote 0
                    • Codierknecht
                      Codierknecht Developer Most Active @Issr4k last edited by

                      @issr4k
                      Ich habe mir dazu ganz einfach eine globale Funktion gebaut:

                      function sendSignalMessage(aMessage, aNumber) {
                          sendTo("signalclirestapiclient.0", "send", {
                              "text": aMessage,
                              "numbers": [aNumber]
                          });
                      }
                      
                      Issr4k 1 Reply Last reply Reply Quote 1
                      • Issr4k
                        Issr4k @Codierknecht last edited by

                        @codierknecht das funktioniert ja leider nur wenn der Adapter läuft…

                        Codierknecht 1 Reply Last reply Reply Quote 0
                        • Codierknecht
                          Codierknecht Developer Most Active @Issr4k last edited by

                          @issr4k
                          Bei mir laufen sowohl ioB als auch signal-cli als Container unter Synology DSM.
                          Eingestellt wie folgt:
                          72e6d66d-4a8e-4583-a889-c23a747245a9-grafik.png
                          140b3c8a-ea4c-4f87-8560-912273f663e4-grafik.png

                          Issr4k 1 Reply Last reply Reply Quote 0
                          • Issr4k
                            Issr4k @Codierknecht last edited by

                            @codierknecht Ok, das hilft mir nicht wirklich weiter.
                            Ich danke dir trotzdem!!

                            Codierknecht 1 Reply Last reply Reply Quote 0
                            • Codierknecht
                              Codierknecht Developer Most Active @Issr4k last edited by

                              @issr4k
                              Theoretisch müsste man sich doch eine JS-Funktion bauen können, die die Parameter entgegennimmt und dann per exec >= curl xxx den Request absetzt.

                              Codierknecht 1 Reply Last reply Reply Quote 0
                              • Codierknecht
                                Codierknecht Developer Most Active @Codierknecht last edited by

                                @Issr4k
                                So sollte das auch ohne Adapter funktionieren 😉

                                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!');
                                        }
                                    });
                                }
                                
                                

                                Quick & Dirty - ohne große Fehlerbehandlung oder sonstige Features.

                                Issr4k 1 Reply Last reply Reply Quote 0
                                • Issr4k
                                  Issr4k @Codierknecht last edited by Issr4k

                                  @codierknecht Geil! Probiere ich aus sobald ich zuhause bin! :))

                                  Aktuell scheitert es wohl daran, dass ich signal-cli nicht im json-rpc Mode nutze.
                                  Steht im Adapter ja auch eindeutig drin...

                                  Zum Nummer registrieren benötigt man aber native oder normal.

                                  ich bekomme jetzt schlicht den Wechsel von native auf json-rpc über Kommandozeile nicht hin bzw. habe Angst wenn ich einfach

                                  sudo docker run -d --name signal-api --restart=always -p 8080:8080 \
                                        -v $HOME/.local/share/signal-cli:/home/.local/share/signal-cli \
                                        -e 'MODE=json-rpc' bbernhard/signal-cli-rest-api
                                  

                                  ausführe mein Container hinüber ist.

                                  Codierknecht 1 Reply Last reply Reply Quote 0
                                  • Codierknecht
                                    Codierknecht Developer Most Active @Issr4k last edited by

                                    @issr4k
                                    Bei mir stelle ich das über die Umgebungsvariablen des Containers ein.
                                    1x Neustart und funzt.

                                    e96a01e7-c0b4-4d69-adee-1cd4795f1f5a-image.png

                                    Issr4k 2 Replies Last reply Reply Quote 0
                                    • Issr4k
                                      Issr4k @Codierknecht last edited by

                                      @codierknecht Mit der grafischen Oberfläche kann ich leider nicht dienen.

                                      Wie gesagt docker läuft bei mir auf einem PI. Und generell kenne ich mich mit Docker nicht aus.
                                      Hatte mal auf github mit bbernhard Kontakt und ggf muss ich mit nano ja einfach nur ein file anpassen... Werde berichten.

                                      Zuerst probiere ich auf jedenfall dein Script aus 🙂
                                      Und dann kommt die Kür 🙂

                                      Danke!!!

                                      1 Reply Last reply Reply Quote 1
                                      • Issr4k
                                        Issr4k @Codierknecht last edited by Issr4k

                                        @codierknecht ... positives Feedback!
                                        Das Script funzt, hat mich aber ein wenig Nerven gekostet weil die " bei recipients gefehlt haben. Daher ließen sich die Parameter bei aufrufen der Funktion nicht übergeben bzw. es kam keine Nachricht an.

                                        So siehts jetzt aus und das reicht völlig 🙂 Im übrigen geht das extrem fix. Nachdem der Trigger kommt dauert es keine 3 Sekunden und die Nachricht ist da 🙂 Daher auch keine Notwendigkeit für json-rpc 🙂

                                        Schicke hier eine Nachricht mit dem aktuellen Messwert am Hausübergabepunkt

                                        schedule("* * * * *", async function () {  // Beispieltrigger
                                            sendWithSignal(getState('modbus.1.holdingRegisters.23316_power').val +"W" , "group.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>=");
                                        });
                                        
                                        function sendWithSignal(message, recipients) {
                                            var sendParams = {
                                                url: 'http://192.168.128.15:8086/v2/send',
                                                headers: {'Content-Type': 'application/json'},
                                                body: '{"message": "' + message + '", "number": "+4917*****", "recipients": [ "' + recipients + '" ]}'
                                            };
                                            request.post(sendParams, function(error, response, body) {
                                                if (error) {
                                                    log(error);
                                                } else {
                                                    log('Nachricht versendet!');
                                                }
                                            });
                                        }
                                        

                                        Nochmal vielen Dank!!!

                                        1 Reply Last reply Reply Quote 0
                                        • First post
                                          Last post

                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate

                                        640
                                        Online

                                        31.7k
                                        Users

                                        79.8k
                                        Topics

                                        1.3m
                                        Posts

                                        3
                                        23
                                        1687
                                        Loading More Posts
                                        • Oldest to Newest
                                        • Newest to Oldest
                                        • Most Votes
                                        Reply
                                        • Reply as topic
                                        Log in to reply
                                        Community
                                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                        The ioBroker Community 2014-2023
                                        logo