Neues Modul: Signalbot (Integration für den Signal Messenger) via signal-cli

Begonnen von Adimarantis, 31 Januar 2021, 19:16:19

Vorheriges Thema - Nächstes Thema

Ralli

Hallo Enno und Jörg,

ist bei mir auch so seit dem letzten (großen) Update. Nur dass in der Logzeile einfach nur

:+4915xxxxxxxxx:

steht, und zwar immer dann, wenn FHEM über Signal eine Nachricht verschickt hat.
Gruß,
Ralli

Proxmox 8.2 Cluster mit HP ED800G2i7, Intel NUC11TNHi7+NUC7i5BNH, virtualisiertes fhem 6.3 dev, virtualisierte RaspberryMatic (3.75.7.20240420) mit HB-RF-ETH 1.3.0 / RPI-RF-MOD, HM-LAN-GW (1.1.5) und HMW-GW, FRITZBOX 7490 (07.57), FBDECT, Siri und Alexa

Adimarantis

@Enno,

da hab ich ein paar Debugausgaben vergessen. Update ist unterwegs. Danke.
Bei der Gelegenheit auch gleich den Installer auf signal-cli 0.12.1 aktualisiert.

@Carsten,

wenn du ohne FHEM Nachrichten empfangen und senden kannst - wie rufst du das ganze denn auf? Wenn du nicht spezfisch angibst, dass die Configdaten von /var/lib/signal-cli genommen werden, dann landen sie in $HOME/.local/share/signal-cli/
Du scheinst ja dann eine funktionierende Config zu haben. Wenn du die an die richtige Stelle kopierst dann sollte die für FHEM auch funktionieren.

Jörg
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU) + RfxTrx433XL + 2xRaspberry 1
Module: 50_Signalbot, 52_I2C_ADS1x1x , 58_RPI_1Wire, (50_SPI_MAX31865)

enno

Moin Jörg,

Update gemacht und auch gleich signal-cli 0.12.1 aktualisiert. Sieht gut aus, sprich keine Einträge mehr im Log. Danke!

Gruss
  Enno
Einfacher FHEM Anwender auf Intel®NUC

Ralli

Gruß,
Ralli

Proxmox 8.2 Cluster mit HP ED800G2i7, Intel NUC11TNHi7+NUC7i5BNH, virtualisiertes fhem 6.3 dev, virtualisierte RaspberryMatic (3.75.7.20240420) mit HB-RF-ETH 1.3.0 / RPI-RF-MOD, HM-LAN-GW (1.1.5) und HMW-GW, FRITZBOX 7490 (07.57), FBDECT, Siri und Alexa

Carsten K.

Zitat von: Adimarantis am 29 August 2023, 21:13:36@Carsten,

wenn du ohne FHEM Nachrichten empfangen und senden kannst - wie rufst du das ganze denn auf? Wenn du nicht spezfisch angibst, dass die Configdaten von /var/lib/signal-cli genommen werden, dann landen sie in $HOME/.local/share/signal-cli/
Du scheinst ja dann eine funktionierende Config zu haben. Wenn du die an die richtige Stelle kopierst dann sollte die für FHEM auch funktionieren.

Jörg
Lieber Jörg,
genau wie Du es beschrieben hast. Ich hatte unwissend eine Konfiguration unter $HOME/.local/share/signal-cli/.
Die habe ich dann nach /var/lib/signal-cli übertragen - jetzt klappt's wieder.

Ganz herzlichen Dank !!!
NUC FHEM on Debian, CC1101-USB-Lite 868MHz;
HM_HM_CC_RT_DN, HM-LC-SW1-PL2, HM_HM_TC_IT_WM_W_EU, HM-SEC-SC-2, HM-ES-TX-WM
FRITZ!DECT 200
Philips TV (Android), VuDuo2, VU Ultimo4k

weini

Ich habe in meiner SignalBot Installation noch eine kleine Unschönheit: Umlaute werden nicht korrekt dargestellt, wenn der Text durch eine Perl-Funktion generiert wird.

Meine Version ist nicht ganz aktuell.
Signalbot:3.12 signal-cli:0.11.3 Protocol::DBus:0.22Sollte sich hier in den letzten Monaten etwas getan haben, dann würde ich notfalls updaten.

Ich nutze Favoriten, wo ich den Perl Code wie folgt aufrufe:
[Einkaufsliste]-{listEinkaufsliste;;}
Wie muss ich den von listEinkaufsliste zurückgegebenen Text in der Perl Funktion konvertieren, so dass die Umlaute korrekt dargestellt werden?

Adimarantis

Versuch mal

decode_utf8();
oder
encode_utf8();

Version sollte egal sein.

Jörg
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU) + RfxTrx433XL + 2xRaspberry 1
Module: 50_Signalbot, 52_I2C_ADS1x1x , 58_RPI_1Wire, (50_SPI_MAX31865)

weini


alma

Hallo zusammen,

nach einigen Versuchen habe ich es geschafft, auf meiner Festnetznummer einen Verification Code vorgelesen zu bekommen.

Jetzt sagt mir das Modul aber:
ZitatlastError: No account registered - use set account to connect to an existing registration, link or register to get a new account

Die Datei /var/lib/signal-cli/data/accounts.json sieht so aus:
{
  "accounts" : [ {
    "path" : "254180",
    "environment" : "LIVE",
    "number" : "+49403....",
    "uuid" : null
  } ],
  "version" : 2
}

und hier mein Device:
Internals:
   CFGFN     
   FD         108
   FUUID      65104ba0-f33f-d929-3c63-5047a7c682ebe45c
   NAME       SIGNAL
   NOTIFYDEV  global
   NR         901
   NTFY_ORDER 50-SIGNAL
   STATE      disconnected
   TYPE       Signalbot
   VERSION    Signalbot:3.16 signal-cli:0.12.1 Protocol::DBus:0.22
   eventCount 55
   model      Debian GNU/Linux 11 (bullseye)
   READINGS:
     2023-09-28 11:40:11   account         none
     2023-09-28 11:40:11   joinedGroups   
     2023-09-28 11:40:11   lastError       No account registered - use set account to connect to an existing registration, link or register to get a new account
     2023-09-28 11:40:11   state           disconnected

Wie kann ich dem Modul mein Account beibringen? set SIGNAL account +49403... geht schon mal nicht  :(

Bin für jeden Tipp dankbar,
Alex

Adimarantis

Nur um sicher zu gehen; Du hast schon "set verify" mit dem Code gemacht?
Dann mal sicherheitshalber:
set reinitund dann
get accountsDa sollte dann eigentlich ein Fenster aufgehen, dass deine Nummer listet

Spätestens jetzt sollte das Pulldown von
set signalAccount
mit deiner Nummer vorbefüllt sein

Jörg
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU) + RfxTrx433XL + 2xRaspberry 1
Module: 50_Signalbot, 52_I2C_ADS1x1x , 58_RPI_1Wire, (50_SPI_MAX31865)

alma

Hallo Jörg,

am "set verify" scheitere ich schon (bzw. immer wieder).

Zwar bekomme ich den Anruf auf mein Festnetz, kann den Code dann aber nicht über das Pulldown eintragen (s. Screenshot 1). Auch der Befehl set SIGNAL verify 123456 läuft ins leere...

Hier die Schritte die ich durchgeführt haben:
  • Installation mit deinem Skript aus dem Wiki
  • Anlegen des Device define SIGNAL Signalbot
  • Attribut auf SMS setzten: attr SIGNAL registerMethod SMS
  • Nummer registrieren
  • Captcha erzeugen und über set + Pulldown eingeben
  • ca. 60 sek warten und während dessen auf attr SIGNAL registerMethod Voice umstellen
  • wenn ich dann "set register" ausführe, kommt sofort der Anruf mit dem Verify-Code
  • kann den "set verify" Befehl leider nicht ausführen...  :(

Wenn ich versuche, mich direkt mit der Option Voice zu registrieren, kommt leider kein Anruf.

Was habe ich da falsch gemacht?

Alex

Adimarantis

Ok, tricky.
Vielleicht kommt da was im flow durcheinander da du gewisse Schritte doppelt ausführst, da voice nicht geht.
Und dann lässt Signalbot dich das verify nicht eintragen.

Um das zu checken, probier mal die beigefügt Version.
Der einzige Unterschied ist, dass der "set verify" (über Befehl, pulldown wird weiter nicht gehen) auch an signal-cli weitergereicht wird, wenn Signalbot eigentlich meint, das er zum falschen Zeitpunkt im Flow kommt.

Danach auf jeden Fall wie vorher beschrieben reinit, get accounts etc. - wenn das klappt muss ich mir ansehen wo der Flow durcheinander kommt.

Jörg
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU) + RfxTrx433XL + 2xRaspberry 1
Module: 50_Signalbot, 52_I2C_ADS1x1x , 58_RPI_1Wire, (50_SPI_MAX31865)

alma

Hallo Jörg,

danke für deine Bemühung!

Nach diversen Fehlermeldungen:
ZitatregisterWithCaptcha:InvalidTransportModeException StatusCode: 400
oder
ZitatregisterWithCaptcha:RegistrationRetryException StatusCode: 429

habe ich meine Verifizierung direkt auf der Console (mit ./signal-cli) ausführen können. Vielleicht hat es auch geholfen, dass ich mein Pi.Hole zeitweise deaktiviert habe  :-[

Dann ein "set reinit" und schon läuft es.  ;D

Nochmal vielen Dank für deine schnellen Antworten!

Viele Grüße,
Alex

Adimarantis

Das Update auf signal-cli 0.12.2 ist verfügbar.
Dazu mit "set reinit" den Installer unter www/signal aktualisieren und mit
sudo -E ./signal_install.shausführen.

Das Update dürfte nicht zwingend notwendig sein, bei Problemen aber bitte erst updaten, dann posten.
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU) + RfxTrx433XL + 2xRaspberry 1
Module: 50_Signalbot, 52_I2C_ADS1x1x , 58_RPI_1Wire, (50_SPI_MAX31865)

BAfH

Hallo in die Runde,
ich bin aktuell dabei meinen Raspberry 4 auf einen Dell Wyse 5070 zu migrieren.
Der Dell hat eine frische Proxmox Installation mit "aktuell" nur einer VM.
Dort soll Docker mit folgenden Containern laufen:
  • FHEM
  • MQTT
  • mySQL
  • ZigBee2MQTT
  • Nextcloud
  • BitWarden
  • EcoDMS
  • UnifiEcoDMS
  • Trefik
  • Portainer
Aktuell bin ich dabei den FHEM Container mit Signal aufzusetzen. Dazu nutze ich das Script was hier beschrieben wird. https://wiki.fhem.de/wiki/Signalbot#Installation_im_Docker_Container
Leider ohne Erfolg. Habe dann diesen Post gefunden.
Dieses File gibt es nicht mehr
RUN wget -qN https://github.com/bublath/FHEM-Signalbot/raw/main/amd64-glibc2.31-0.11.2/libsignal_jni.soIrgendwo im Netz gefunden
-rw-r-----  1 root     root      5033072 Okt 13 13:28 libsignal_jni.soZeile aus kommentiert, jetzt kommt ein Fehler bei
RUN zip -u /opt/signal/lib/libsignal-client-*.jar libsignal_jni.so
ERROR: failed to solve: process "/bin/sh -c zip -u /opt/signal/lib/libsignal-client-*.jar libsignal_jni.so" did not complete successfully: exit code: 12
ERROR: Service 'fhem' failed to build : Build failed

Zeile auch aus kommentiert, Image wird erstellt. Start soweit okay, bis auf
connect(unix:path=/var/run/dbus/system_bus_socket): No such file or directory at /usr/local/share/perl/5.32.1/Protocol/DBus/Client.pm line 144.Hat noch jemand eine Idee...
Danke
Gruß Thorben
mit sonnige Grüße aus Schönow