Neuigkeiten:

Am Sonntag den 8.12.2024 kann es ab ca. 8:00 Uhr zu kurzzeitigen Einschränkungen / Ausfällen bei den Diensten des FHEM Vereines kommen.
Die Server müssen mal gewartet und dabei neu gestartet werden ;)

Hauptmenü

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

Hallo
Gibt es schon eine Lösung zu dem Problem, dass unter fhem nur noch Text verschickt werden kann und keine Bilder mehr?
(ich verwende Signalbot:3.20 signal-cli:0.12.8 Protocol::DBus:0.22 / bullseye)

weini

Wie oben bereits beschrieben: Am besten einfach auf die neueste signal-cli updaten (13.9).
Voraussetzung dafür ist aber, dass du auf Debian 12 bist.
Steht alles ein paar Beiträge weiter oben...

oelkanne

Danke, verstanden. Es führt wohl kein Weg an bookworm vorbei....

Adimarantis

@oelkanne: Kann ich jetzt nicht spezifisch sagen ob Bilder ein Versionsproblem sind. Vielleicht ist es ja auch was anderes (Zugriffsrechte?) - da wären spezifische Fehlermeldungen hilfreich
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU) + RfxTrx433XL + 2xRaspberry 1
Module: 50_Signalbot, 52_I2C_ADS1x1x , 58_RPI_1Wire, (50_SPI_MAX31865)

weini

Also bei mir war genau das das Fehlerbild: signal-cli 12.8. hat prinzipiell noch funktioniert, konnte aber keine Bilder mehr versenden.
Nachdem andere hier im Thread ebenfalls Probleme beim Bilderversand bekommen haben, war ich davon ausgegangen, dass ein Update von signal-cli notwendig ist. Das ist dann unter Debian 11 auf Fehler gelaufen, nach meinem Verständnis wg. dem libc-Problem.
Zum Glück lief die Aktualisierung auf Debian 12 recht reibungslos. Da konnte ich dann auch erfolgreich auf signal-cli 13.9 aktualisieren und damit funktioniert jetzt der Bilderversand wieder einwandfrei.

oelkanne

Bei ist es genauso wie bei weini. Alle Arten von Texten (smileys, ..) funktionieren aber Bilder werden weggelassen.
Wenn ich ein Bild alleine sende, stellt sich das reading sentMsgTimestamp auf "pending". Irgendwann stellt sich das Reading lastError    
auf "Timeout in sendMessage".

Bin aber schon dabei auf Deb12 umzustellen. Ist nur mühselig wegen Goggle Assistant, Alexa, FhemPy, ...

Hausautomat

Als kleiner Zwischenruf - bei mir läuft auf dem Pi noch immer bullseye 32bit.
Mit der signal-cli 12.8 hatte ich auch das Problem, dass Bilder nicht gesendet wurden. Ein Update von signal-cli auf 13.9 hat geholfen. Bilder werden wieder versandt.

Fhem läuft dazu auf baremetal Pi, signal-cli ist als systemd service eingerichtet.

 :)

weini

Das klingt jetzt spannend: Bei mir hatte unter Bullseye der Upgrade auf die 13.9 nicht funktioniert. Nach meinem Verständnis hatten da auch andere Nutzer Probleme (z. B. hier https://forum.fhem.de/index.php?msg=1324149).
Welche Version der glibc hast du denn?

Hausautomat

Bei mir ist es GLIBC 2.31-13+rpt2+rpi1+deb11u11. Das müsste die Standard glibc sein.

Java habe ich (manuell) die jdk-21.0.35 "installiert". Also, ich hab nur diese Version
https://github.com/bublath/FHEM-Signalbot/raw/main/java/openjdk-21.0.35-armv7l-glibc2.28.tar.gz runtergeladen und entpackt - keine Installationsroutine aufgerufen! Die Version ist dann über JAVA_HOME im systemd-service definiert.
 
Der systemd-service ist so definiert:

#/etc/systemd/system/signal.service
[Unit]
Description=Send secure messages to Signal clients
Requires=dbus.socket network-online.target
After=dbus.socket network-online.target
Wants=network-online.target

[Service]
Type=dbus
Environment="SIGNAL_CLI_OPTS=-Xms2m"
Environment="JAVA_HOME=/opt/jdk-21.0.35"
#ExecStartPre=/bin/sleep 3
ExecStart=/opt/signal-cli-0.13.9/bin/signal-cli --config /var/lib/signal-cli da>
User=signal-cli
BusName=org.asamk.Signal

[Install]
WantedBy=multi-user.target
Alias=dbus-org.asamk.Signal.service

Hoffe, es hilft.
libsignal natürlich gepatcht mit der korrekten + passenden Version.

KarlikKH

Ich wäre sehr dankbar wenn mir jemand einen Tipp geben könnte. Wahrscheinlich habe ich ein ganz triviales Problem.
Nachdem das Verschicken von Bildern auf FHEM-Signalbot nicht mehr möglich war, habe ich meim FHEM auf neuesten Stand gebracht, die Installationsdatei signal.install.sh lief durch ohne Fehler.
Die Registrierung meiner bisherigen Festnetznummer ist am Captcha gescheitert, die Registrierung mit link hat funktioniert und ich kann Nachrichten an mein Handy verschicken.
Allerdings kann ich keinen Text empfangen. Journalctl zeigt folgendes:


][/Nov 23 11:06:26 raspberrypi signal-cli[7992]: Envelope from: "Mein Name" +49xxxxxxxx (device: 1) to +49xxxxxxxx
Nov 23 11:06:26 raspberrypi signal-cli[7992]: Timestamp: 1732356386391 (2024-11-23T10:06:26.391Z)
Nov 23 11:06:26 raspberrypi signal-cli[7992]: Server timestamps: received: 1732356386546 (2024-11-23T10:06:26.546Z) delivered: 1732356386548 (2024-11-23T10:06:26.548Z)
Nov 23 11:06:26 raspberrypi signal-cli[7992]: Received a sync message
Nov 23 11:06:26 raspberrypi signal-cli[7992]: Received sync sent message
Nov 23 11:06:26 raspberrypi signal-cli[7992]:  To: "Mein Name" +49xxxxxxxx
Nov 23 11:06:26 raspberrypi signal-cli[7992]:  Timestamp: 1732356386391 (2024-11-23T10:06:26.391Z)
Nov 23 11:06:26 raspberrypi signal-cli[7992]:  Expiration started at: 1732356386391 (2024-11-23T10:06:26.391Z)
Nov 23 11:06:26 raspberrypi signal-cli[7992]:  Message timestamp: 1732356386391 (2024-11-23T10:06:26.391Z)
Nov 23 11:06:26 raspberrypi signal-cli[7992]:  Body: Hallo Mein gesendeter Text
]

das FHEM logfile zeigt:

2024.11.23 11:06:26 5: KHSignal: Sync Callback: SyncMessageReceived Args:1732356386391,+49171xxxxxx,+49171xxxxxx,Protocol::DBus::Type::Array=ARRAY(0x55b78a1be8),Hallo Mein gesendeter Text,Protocol::DBus::Type::Array=ARRAY(0x55b7909cc8)
2024.11.23 11:06:26 4: KHSignal: Unknown callback SyncMessageReceivedV2


Ich benutze einen Raspberry mit Debian 11



Adimarantis

Die logs unten zeigen das FHEM die Nachricht "Hallo Mein gesendeter Text" empfangen hat.
Erscheint diese Nachricht dann nicht in den Readings?
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU) + RfxTrx433XL + 2xRaspberry 1
Module: 50_Signalbot, 52_I2C_ADS1x1x , 58_RPI_1Wire, (50_SPI_MAX31865)

KarlikKH

Denke ich auch.

Bei den Readings fehlt mir halt das Reading "msgText"

Adimarantis

Wie ist das Testszenario?
Wenn ich quasi etwas an mich selbst sende (egal ob vom Handy oder FHEM) dann kann ich das Verhalten nachstellen. Wenn die Nachricht von dritten kommt funktioniert alles.

Bei dieser Nachricht an sich selbst, wird ein anderer CallBack verwendet (SyncMessageReceived statt MessageReceived) und der ist schlicht und ergreifend nicht implementiert (außer einer Ausgabe ins Log) - lang ist's her, aber ich denke, ich hab einfach keinen Anwendungsfall gefunden und ohne Testfall implementiert sichs schlecht. Muss ich bei Gelegenheit mal nachziehen, jetzt wo ich weiss wie man diesen Callback triggert.

Du solltest aber nach Möglichkeit schon eine eigene Nummer über Captcha registrieren - bzw. hast du die alte Registrierung noch? Funktioniert die nicht mehr mit der aktuellen Version? Das "link" Feature ist eher zum Ausprobieren gedacht, aber für den längerfristigen Einsatz halte ich das für ungeeignet, weil FHEM ständig mit eigentlich privaten Nachrichten zugeballert wird.
 
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU) + RfxTrx433XL + 2xRaspberry 1
Module: 50_Signalbot, 52_I2C_ADS1x1x , 58_RPI_1Wire, (50_SPI_MAX31865)

KarlikKH

Erstmal herzlichen Dank für die Unterstützung !!!!
Ich hatte eine Registrierung mit Festnetznummer.
Ich habe schon mal mit einem "Testraspberry und Bookworm" eine neue Registrierung über Captcha versucht, leider immer mit Error-Code.
Ich habe noch eine SD-Card mit der alten Installation. Ich kann da zumindest Dateien finden.
Wo finde ich die Registrierung ?
Danke

Adimarantis

Die Daten sind in /var/lib/signal-cli
Dieses Verzeichnis in die neue Installation kopieren (vorher signal service stoppen),
Rechte anpassen (chown -R signal-cli: /var/lib/signal-cli)
Und Service wieder starten.

Dann noch ein set reinit in FHEM , dann solltest du mit set signalAccount deine Festnetznummer wiederbekommen
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU) + RfxTrx433XL + 2xRaspberry 1
Module: 50_Signalbot, 52_I2C_ADS1x1x , 58_RPI_1Wire, (50_SPI_MAX31865)