Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. ioBroker Signal Nachrichten

    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

    ioBroker Signal Nachrichten

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      Saschame last edited by

      Ich bin neu hier und auch in der Welt des Smarthome. Da ich ein NAS zuhause habe ist der ioBroker jetzt als Docker auf meiner QNAP. Das funktioneirt auch super die Einrichtung von Alexa war mir möglich. Jetzt habe ich gesehen das man auch Nachrichten an Signal damit schicken kannst.
      Ich habe da eine Anleitung gefunden die für den PI gemacht worden ist. Die Befehle kontne ich Auch im Docker absetzen. Das hat auch so weit geklappt.
      angefangen habe ich mit
      sudo apt update
      sudo apt upgrade (Optional. Danach sollte man "sudo reboot" eingeben)
      sudo apt install default-jdk
      sudo apt-get install qrencode

      Dann habe ich die Pakte runter geladen bei
      wget http://www.elzershark.com/iobroker/rpi_signal-cli-0.8.1.tar
      wget https://github.com/AsamK/signal-cli/releases/download/v0.8.3/signal-cli-0.8.3.tar.gz
      das ging auch noch die nächsten Befehle musste ich anpassen
      sudo tar xf rpi_signal-cli-0.8.1.tar -C /opt/iobroker
      sudo tar xf signal-cli-0.8.3.tar.gz -C /opt/iobroker
      Das iobroker musste ich hinzufügen damit es gefunden wird.

      Dann habe ich das neuere Programm Aktiviert
      sudo ln -sf /opt/iobrokersignal-cli-0.8.3/bin/signal-cli /usr/local/bin/
      auch hier habe ich das iobroker hinzugefügt.

      Damit war das Modul installiert und ich konnte es auch bedienenJetzt wollte ich mit einen QR Code erstellen lassen mit dem befehl
      sudo -u iobroker signal-cli link -n "iobroker" | tee >(xargs -L 1 qrencode -t utf8)
      Leider funktioniert das nicht ich bkomme folgende Fehlermeldung
      Benutzung: signal-cli link [-h] [-n NAME]

      signal-cli: Fehler: nicht berücksichtigte Argumente: '| tee >(xargs -L 1 qrencode -t utf8)'

      So kann ich keine verbunden Geräte einbinden da ich den QR Code scannen muss.
      Ich wollte dann aber testen ob es überhaut funktionert also habe ich eine alte Sim genommen wo ich sms empfangen kann.
      habe dann mit dem Befehl
      sudo -u iobroker signal-cli -u +49meinenummer register --captcha 03AGdBq27_3MFkj4Auugs8SI2vJ1QGiH8Y3xERyhW1fYfTI1OTG9COfg8STpslDZQme3sZ_vUFTmVq9nyXVjzIdt2bm5CMl8iLfM0zEuGl2-o5LkOdPMbk-cUqZhCIIqU1ApvoSAglZO0jrkJB6WQI2POUoal5n1zdvlPPqqA0_EPzFj6EJ_spMPFY-wPtbYJMeGh9TtP62MWTRHNTkXBf0lcA8is7mer97RLsZrrpSenR706mL4mwZDp1K8S1eoquO5dhYeJ-FdL-qei_S1KqAT__cNgIfw4eOIXHbzdETdipQ8ZsjiWPMPaIbd8SNj_qf_R4l1OjOGt_5babZXoB4LVMaUacCQGqlNIpERDGoHaitBCePgaFKU0Z_iObhUM_5TM6NHOanp8ijQMxzw2lW513jPkMgm8IuaOrH7FtzIe7X_MqC-s3Nb7pWIz5FmMx-uF16ooQgQ0CbajXK0Eh8a074INfWp55OEzO1XioGNt7EkS61GCBMqoxLqvZ64XROgeskxONKBeaKFCFm_s2dAsdeGMF4Et0XQ
      Einen Code angefordert mit dem erhalten Code habe ich dann

      sudo -u iobroker signal-cli -u +49meinenummer verify 123-456
      Die nummer ferei geschaltet

      Jetzt kann ich mit dem Befehl
      sudo -u iobroker signal-cli -u +49ibrokernummer send -m "Sascha lässt Grüßen!" +49empängernummer
      Auch nachrichten verschicken.

      Dann habe ich den Adapter javascript.0 installiert und den haken bei exec erlauben gesetzt.

      Jetzt soll es ausreichen wenn man ein skrip mit Blocky erstellt dort das exec modul mit dem Befehl
      signal-cli -u +49sender send -m "Sascha lässt Grüßen!" +49empfänger
      eigentlich eine nachricht versenden.
      Leider kommt die fehlermeldung
      javascript.0 (2284) Stop script script.js.Signal.Signal
      Jetzt weiß ich nicht weiter.
      Weiß jemand was ich falsch mache?

      S 1 Reply Last reply Reply Quote 0
      • S
        Saschame @Saschame last edited by

        So jetzt habe ich das ganze nicht als Blocky erstellt sondern direkt als Javascript

        exec('signal-cli -u +49sender send -m "Sascha lässt Grüßen!" +49empfänger')

        Da funktioniert es. Ich verstehe nicht warum aber bei dem einfach befehl geht das noch. ich weiß nur nicht wie ich das jetzt einbauen kann. Wenn ich zum beispiel mir eine nachricht zu schicken möchte das die Tür geöffnet worden ist.

        M K 2 Replies Last reply Reply Quote 0
        • M
          Michi_Pi @Saschame last edited by

          @saschame
          Ich habe heute auch Signal installiert, lief alles bestens.
          Nun wollte ich auch mit Blockly ein Script erstellen, allerdings werden hier keine Nachrichten versendet.
          Auch nicht mit Java. Hast du da noch was gemacht?

          Zu deiner Frage, mach es mal so
          aff9f892-b50e-4c23-b336-2fb3a52aea48-grafik.png

          A M 2 Replies Last reply Reply Quote 0
          • A
            Ahnungsbefreit @Michi_Pi last edited by

            @michi_pi @Saschame Warum nehmt Ihr nicht einfach den Signal Adapter?

            M 1 Reply Last reply Reply Quote 0
            • M
              Michi_Pi @Ahnungsbefreit last edited by

              @ahnungsbefreit Wusste nicht dass es da einen gibt!?
              Der ist wohl noch in beta oder?

              A 1 Reply Last reply Reply Quote 0
              • M
                Michi_Pi @Michi_Pi last edited by

                hab meinen Fehler nun selbst gefunden. 🤦‍♂️
                Hab das ganze am Slave installiert und hab das Skript am Master geschrieben, kann dann natürlich nicht funktionieren.

                1 Reply Last reply Reply Quote 0
                • A
                  Ahnungsbefreit @Michi_Pi last edited by

                  @michi_pi Du hast Recht, ich habe da was verwechselt. Es gibt aber einen Adapter Request hier und da in den Kommentaren wird auch auf den Artikel in der c't mit dem Kommandozeilen Tool für Signal verwiesen, das hatte ich noch im Hinterkopf und dachte, dann ist der Weg zum Adapter ja nicht mehr weit...

                  1 Reply Last reply Reply Quote 0
                  • K
                    KaosKatte @Saschame last edited by KaosKatte

                    @saschame da ich jetzt einige Stunden darauf verwendet habe, eine Variable in den zu sendenden Text einzubauen, will ich mein Ergebnis hier teilen; vielleicht hilft's ja jemandem.

                    Ich habe zunächst das Blockly-Beispiel von Elzershark aus seinem Forum genommen, wo immerhin schon neben fixem Text ein Variablenwert ergänzt wurde. Ich habe das Beispiel auf einen Variablenwert reduziert - also die festen Texte entfernt- , mir den JS-Code kopiert und diesen dann in einem JS-Skript laufen lassen. Ging auch. Dann wollte ich eine globale Funktion definieren, an die ein zuvor konstruierter String zum Senden übergeben wird. Dann wurd's erwas kompliziert mit 2 Sorten Anführungszeichen und Kommata. Verstanden hab ich es nicht 100%ig - auch weiß nicht nicht was .join('') am Ende bewirkt - , aber so funktioniert es immerhin:

                    Globale Funktion:
                    function SignalSend (SignalText) {
                    exec((['signal-cli -u +49172xxxxxxx send -m ', SignalText ,' +49172xxxxxxx'].join('')));
                    return;
                    }

                    let DAX = "'Der DAX steht bei " + getState('0_userdata.0.DAX30').val + " Punkten.'";
                    SignalSend (DAX);

                    Es geht auch ohne Text in der simplen Form
                    let DAX = getState('0_userdata.0.DAX30').val;

                    Doch wenn man Text vor den Wert stellt, muss man m.E. den String mit einem Hochkomma vorne beginnen lassen und hinter dem Wert ein Hochkomma in Anführungsstrichen folgen lassen, also:
                    let DAX = "'Der DAX liegt jetzt etwa bei " + getState('0_userdata.0.DAX30').val + "'";

                    Nachtrag:
                    Damit man sich keine Gedanken machen muss und einfach grundsätzlich einen "normalen" String an die globale Funktion übergeben kann, würde ich in der Globalfunktion zwei Hochkommata zwischen Anführungsstrichen ergänzen. Selbst wenn sie nicht gebraucht werden , stören sie wohl nicht:

                    exec((['signal-cli -u +49172xxxxxxx send -m ',"'"+ SignalText +"'",' +49172xxxxxxx'].join('')));

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

                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    956
                    Online

                    31.9k
                    Users

                    80.1k
                    Topics

                    1.3m
                    Posts

                    4
                    8
                    1429
                    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