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

oelkanne

Ja, ist noch 0.9.2

mit --config

root@rpi3-fhem:~# sudo -u signal-cli /opt/signal/bin/signal-cli --config /var/lib/signal-cli -u +49xx send -m "testmessage" +49xxxx
Failed to send message: null (UnregisteredUserException)


Dann geh ich erst mal wieder zurück.
Vielen Dank für deine Mühe!
Grüße
Oelkanne

Adimarantis

Das schaut so aus, als wäre der Empfänger nicht korrekt registriert (falsche Nummer?)
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU) + RfxTrx433XL + 2xRaspberry 1
Module: 50_Signalbot, 52_I2C_ADS1x1x , 58_RPI_1Wire, (50_SPI_MAX31865)

oelkanne

..Nummer ist richtig.
Ich kann von verschiedenen Handys zur Raspberry senden. Aber es geht nicht umgegehrt.

Flachzange

Hallo zusammen,

bei mir hat heute ohne Fremdeinwirkung Signalbot/signal-cli aufgehört zu arbeiten. Mir ist es nur aufgefallen, da meine Nachrichten vom Handy an signal-cli nicht ankamen. Dann den umgekehrten Weg getestet, der aber auch nicht funktionierte. Im lasterror Reading stand grob so etwas wie "Keine Verbindung zum Ziel möglich".  Von dem Fehler bei einer GroupMessage konnte ich noch einen Screenshot machen.

Nach einem Server-Neustart konnte signalbot die Nummer gar nicht anmelden und meldet sich wie beim initialen Start. Im signal.err sehe ich jetzt folgendes:

ZitatMultiAccountManager - Ignoring +49xxxxxxxx: Error while checking account ++49xxxxxxxx: StatusCode: 499 (AccountCheckException)

ZitatInternals:
   FD         15
   FUUID      613c63f7-f33f-fd7e-6ada-9e7d51101d69eb3e
   NAME       Signalbot
   NOTIFYDEV  global
   NR         353
   NTFY_ORDER 50-Signalbot
   STATE      Connected to /org/asamk/Signal
   TYPE       Signalbot
   VERSION    Signalbot:3.10 signal-cli:0.10.9 Protocol::DBus:0.22
   eventCount 2
   model      Debian GNU/Linux 11 (bullseye)
   Helper:
     DBLOG:
       account:
         logdb:
           TIME       1665075173.77501
           VALUE      none
       joinedGroups:
         logdb:
           TIME       1665075173.77501
           VALUE     
       lastError:
         logdb:
           TIME       1665075173.77501
           VALUE      No account registered - use set account to connect to an existing registration, link or register to get a new account
   READINGS:
     2022-10-06 18:52:53   account         none
     2022-10-02 12:06:45   accountName     FHEM
     2022-10-06 18:52:53   joinedGroups   
     2022-10-06 18:52:53   lastError       No account registered - use set account to connect to an existing registration, link or register to get a new account
     2022-10-05 14:33:51   msgAttachment   
     2022-10-05 14:33:51   msgAuth         0
     2022-10-05 14:33:51   msgGroupName    SmartHome
     2022-10-05 14:33:51   msgSender       Sarah
     2022-10-05 14:33:51   msgText         fav2
     2022-10-05 14:33:51   msgTimestamp    05-10-2022 14:33:50
     2022-10-05 14:33:51   prevMsgAttachment
     2022-10-05 14:33:51   prevMsgGroupName SmartHome
     2022-10-05 14:33:51   prevMsgSender   Sarah
     2022-10-05 14:33:51   prevMsgText     fav2
     2022-10-05 14:33:51   prevMsgTimestamp 05-10-2022 12:46:51
     2022-10-06 18:10:46   sentMsg         Kontakte offen: Kontakt_Haus_EG_Eingang_Kueche
     2022-10-05 23:53:19   sentMsgRecipient Sarah
     2022-10-06 18:10:46   sentMsgTimestamp pending
   helper:
     accounts   0
     init       1
     multi      1
     qr         
     register   
     signalpath /org/asamk/Signal
     verification
     version    1009
     accountlist:
Attributes:
   authDev    googleAuth
   authTimeout 300
   cmdKeyword /
   cmdKeywordNoAuth -
   cmdPatternNoAuth get .*;trigger .*;getstate .*
   favList    ...
   favPrefix  fav
   room       Messaging
   userattr   cmdKeywordNoAuth cmdPatternNoAuth favPrefix favList

Hat da jemand eine Idee?

Adimarantis

Kann ich auch bei mir auch nachvollziehen.
Ich vermute, dass es einen mismatch zwischen signal-cli version und dem Signal Server gibt.
In signal-cli 0.11.2 hat asamK einen neue Fehlermeldung für "signal-cli outdated" eingeführt - deutlicher Hinweis darauf, das es hier wohl Probleme gibt/gab.

Ich teste mal ob ein upgrade auf v0.11.2 das Problem behebt und melde mich wieder.

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

rubinho

Also ich hab auch heute keine Nachrichten mehr erhalten.
Als erstes wollte ich mit der 0.10.2er Version ein Reregister durchführen, was aber nicht mehr funktioniert hat.
Danach hatte ich signal-cli auf 0.11.2 geupdatet, danach konnte ich per cli ein Register durchführen.
Allerdings hatte ich beim Signalbot vergessen ein Reinit zu machen, und er wollte immer noch ein Captcha haben.
Nach dem Reinit war natürlich mein Register flöten gegangen und jetzt kann ich mich nicht mehr registrieren, wegen zu vielen Versuchen (Failed to register: [413] Rate limit exceeded: 413)  :'(
Weiß jeman wie lange man für einen neuen Versuch waren muss?

Gruß
Rubinho
Fhem 5.9@Zotac Zbox Ci327 | HMCCU | Z-Wave@ZMEEUZB1 | HUE Bridge Gen2 | knxd over IP

Adimarantis

So, hab bei mir das update auf V0.11.2 jetzt auch geschafft (musste die libraries für Raspberry erst neu übersetzen, was eine Weile dauert).
Nach set reinit, set signalAccount war ich wieder online.

Ich arbeite mich jetzt noch durch die restlichen Architekturen und stelle dann die libraries und ein neues Install script online.
Damit dürfte die Version 0.9.2. die noch Java11 unterstützt leider Geschichte sein und es bleibt nur eine entsprechende Java17 Installation zu machen.
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU) + RfxTrx433XL + 2xRaspberry 1
Module: 50_Signalbot, 52_I2C_ADS1x1x , 58_RPI_1Wire, (50_SPI_MAX31865)

andies

Gibt es einen besonderen Trick, wie man auf 11.2 kommt? Ich hatte 10.2 und beim update komme ich nicht weiter:
Okt 06 20:57:54 raspfhem signal-cli[10672]:         at org.asamk.signal.App.buildArgumentParser(App.java:106)
Okt 06 20:57:54 raspfhem signal-cli[10672]:         at org.asamk.signal.Main.main(Main.java:54)
Okt 06 20:57:54 raspfhem signal-cli[10672]: Caused by: java.lang.ClassNotFoundException: org.asamk.signal.manager.api.NotPrimaryDeviceException
Okt 06 20:57:54 raspfhem signal-cli[10672]:         at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
Okt 06 20:57:54 raspfhem signal-cli[10672]:         at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
Okt 06 20:57:54 raspfhem signal-cli[10672]:         at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
Okt 06 20:57:54 raspfhem signal-cli[10672]:         ... 3 more
Okt 06 20:57:54 raspfhem systemd[1]: signal.service: Main process exited, code=exited, status=1/FAILURE
Okt 06 20:57:54 raspfhem systemd[1]: signal.service: Failed with result 'exit-code'.
Okt 06 20:57:54 raspfhem systemd[1]: Failed to start Send secure messages to Signal clients.
FHEM 6.1 auf RaspPi3 (Raspbian:  6.1.21-v8+; Perl: v5.32.1)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

Flachzange

Zitat von: Adimarantis am 06 Oktober 2022, 20:28:16Ich arbeite mich jetzt noch durch die restlichen Architekturen und stelle dann die libraries und ein neues Install script online.
Damit dürfte die Version 0.9.2. die noch Java11 unterstützt leider Geschichte sein und es bleibt nur eine entsprechende Java17 Installation zu machen.

Super. Dank Dir. Gerne die libs schon mal pushen, sollte es mit dem Skript länger dauern.

Adimarantis

Update auf signal-cli 0.11.2

Dieses Update ist zwingend erforderlich, da sich anscheinend intern etwas beim Signal Server verändert hat.
Ich habe zwar Signalbot auch aktualisiert, aber neu ist nur dass er bei Versionen <0.11.2 meckert. Es ist nur ein signal-cli update notwendig.

Vorgehensweise:
1. in FHEM
set reinit
Sollte das aktuelle Install script nach www/signal laden - zur Kontrolle: SCRIPTVERSION="3.10"
2. in der Shell im Verzeichnis www/signal
sudo -E ./signal_install.sh
Installation durchführen, alte signal-cli version überschreiben.
Achtung an alle V0.9.2 und Java11 Nutzer - update auf Java17 ist notwendig!
3. wieder in FHEM
set reinit
Sollte das Account nicht mehr gesetzt sein, mit
set signalAccount <nummer>
neu setzen.

Danach sollte eigentlich alles wieder funktionieren.


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

enno

Zitat von: Adimarantis am 06 Oktober 2022, 21:38:49
Update auf signal-cli 0.11.2


Danach sollte eigentlich alles wieder funktionieren.

Super! Geht wieder :) Danke!

Gruss
  Enno
Einfacher FHEM Anwender auf Intel®NUC

Flachzange

Yay. Läuft auch bei mir wieder nachdem ich diverse Docker-Issues überwunden habe. Danke für den schnellen Fix @Jörg

fettgu

Bei mir funktioniert es leider nicht.

Im Anschluss an sudo -E ./signal_install.sh

Kommt irgendwann

ZitatJob for signal.service failed because the control process exited with error code.
See "systemctl status signal.service" and "journalctl -xe" for details.
Checking installation via dbus-send command...Error org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
unexpected reply

Im Detail passt passen die anderen Meldungen. Es scheint irgendwie mit "Failed to activate service 'org.asamk.Signal'" zusammenzuhängen.


Zitatsystemctl status signal.service
● signal.service - Send secure messages to Signal clients
   Loaded: loaded (/etc/systemd/system/signal.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Thu 2022-10-06 22:59:51 CEST; 34s ago
  Process: 3422 ExecStart=/opt/signal/bin/signal-cli --config /var/lib/signal-cli daemon --system (code=exited, status=2)
Main PID: 3422 (code=exited, status=2)

Okt 06 22:59:51 myfhem signal-cli[3422]:         at java.base/java.util.stream.ReferencePipeline.toArray(ReferencePipeline.java:616)
Okt 06 22:59:51 myfhem signal-cli[3422]:         at java.base/java.util.stream.ReferencePipeline.toArray(ReferencePipeline.java:622)
Okt 06 22:59:51 myfhem signal-cli[3422]:         at java.base/java.util.stream.ReferencePipeline.toList(ReferencePipeline.java:627)
Okt 06 22:59:51 myfhem signal-cli[3422]:         at org.asamk.signal.manager.SignalAccountFiles.initMultiAccountManager(SignalAccountFiles.jav
Okt 06 22:59:51 myfhem signal-cli[3422]:         at org.asamk.signal.App.handleMultiLocalCommand(App.java:309)
Okt 06 22:59:51 myfhem signal-cli[3422]:         at org.asamk.signal.App.init(App.java:191)
Okt 06 22:59:51 myfhem signal-cli[3422]:         at org.asamk.signal.Main.main(Main.java:60)
Okt 06 22:59:51 myfhem systemd[1]: signal.service: Main process exited, code=exited, status=2/INVALIDARGUMENT
Okt 06 22:59:51 myfhem systemd[1]: signal.service: Failed with result 'exit-code'.
Okt 06 22:59:51 myfhem systemd[1]: Failed to start Send secure messages to Signal clients.

Zitatpi@myfhem:/opt/fhem/www/signal $ journalctl -xe
Okt 06 22:59:51 myfhem signal-cli[3422]:         at java.base/java.util.stream.ReferencePipeline.toArray(ReferencePipeline.java:622)
Okt 06 22:59:51 myfhem signal-cli[3422]:         at java.base/java.util.stream.ReferencePipeline.toList(ReferencePipeline.java:627)
Okt 06 22:59:51 myfhem signal-cli[3422]:         at org.asamk.signal.manager.SignalAccountFiles.initMultiAccountManager(SignalAccountFiles.jav
Okt 06 22:59:51 myfhem signal-cli[3422]:         at org.asamk.signal.App.handleMultiLocalCommand(App.java:309)
Okt 06 22:59:51 myfhem signal-cli[3422]:         at org.asamk.signal.App.init(App.java:191)
Okt 06 22:59:51 myfhem signal-cli[3422]:         at org.asamk.signal.Main.main(Main.java:60)
Okt 06 22:59:51 myfhem systemd[1]: signal.service: Main process exited, code=exited, status=2/INVALIDARGUMENT
-- Subject: Unit process exited
-- Defined-By: systemd
-- Support: https://www.debian.org/support
--
-- An ExecStart= process belonging to unit signal.service has exited.
--
-- The process' exit code is 'exited' and its exit status is 2.
Okt 06 22:59:51 myfhem systemd[1]: signal.service: Failed with result 'exit-code'.
-- Subject: Unit failed
-- Defined-By: systemd
-- Support: https://www.debian.org/support
--
-- The unit signal.service has entered the 'failed' state with result 'exit-code'.
Okt 06 22:59:51 myfhem systemd[1]: Failed to start Send secure messages to Signal clients.
-- Subject: A start job for unit signal.service has failed
-- Defined-By: systemd
-- Support: https://www.debian.org/support
--
-- A start job for unit signal.service has finished with a failure.
--
-- The job identifier is 949 and the job result is failed.
Okt 06 23:00:04 myfhem dbus-daemon[362]: [system] Failed to activate service 'org.asamk.Signal': timed out (service_start_timeout=25000ms)
Okt 06 23:00:04 myfhem sudo[2709]: pam_unix(sudo:session): session closed for user root
Okt 06 23:01:57 myfhem dhcpcd[629]: eth0: Router Advertisement from fe80::de39:6fff:fecb:5811

Viele Grüße
Guido

rubinho

Moin, bei mir läufts auch wieder, allerdings nur durch die Hintertür.
Mir ist es einfach nicht gelungen über Fhem/Signalbot ein Register durchzuführen.
Signalbot akzeptierte das Captcha (signalcaptcha://signal-recaptcha-v2.6...) einfach nicht. Es kam die typische Fehlermeldung "Incorrect captcha - e.g. needs to start with signalcaptcha:// "
Ich musste die Registrierung wieder über CLI machen. Jetzt funktioniert das versenden der Nachrichten wieder, allerdings steht jetzt bei Signalbot oben "signal-cli v0.9.0+ required"
Obwohl alles funktioniert, meint wohl Signalbot dass ich kein Signal-Cli installiert habe (Oder war das schon immer so?  ::) )
Eventuell liegt es aber auch daran, dass ich das Register über CLI durchgeführt habe, oder es liegt an der neuen signal-cli Version.
Das hier spuckt Signalbot als Version aus.... Signalbot:3.10 signal-cli:Protocol::DBus::Type::Array=ARRAY(0x5606d9929278) Protocol::DBus:0.22

Gruß
Rubinho
Fhem 5.9@Zotac Zbox Ci327 | HMCCU | Z-Wave@ZMEEUZB1 | HUE Bridge Gen2 | knxd over IP

Flachzange

Zitatallerdings steht jetzt bei Signalbot oben "signal-cli v0.9.0+ required
Das hatte ich auch. Nach einem

set reinit

war es weg