Autor Thema: Neues Modul: Signalbot (Integration für den Signal Messenger) via signal-cli  (Gelesen 14848 mal)

Offline MarcoE

  • Full Member
  • ***
  • Beiträge: 105
Hallo,
Beta release ist hier: https://forum.fhem.de/index.php/topic,118370.msg1136873.html#msg1136873
Sobald ich dazu komme es endgültig zu releasen, kommt die in den ersten Post.

Das Script hat eine Option "name" mit der man von dort den Namen setzen kann.

Danke! Habe nun auf die beta umgestellt. Jetzt im Moment funktioniert es- ich hoffe es bleibt so.

Viele Grüße
Marco

Offline Nighthawk

  • Full Member
  • ***
  • Beiträge: 262
Hallo Joerg,

leider bekomme ich keinen Hacken an das Problem.
Vor der Umstellung auf Beta 2 und 0.8.1 hat Signalbot klaglos seinen Dienst verrichtet.
Ich würde gerne testen ob es tatsächlich an der Umstellung liegt und nicht an einer potentiell veränderten Netzwerkstruktur.
Was müsste ich genau tun (neben dem zurückkopieren der 50_Signalbot.pm) um auf NET::DBUS zurückzukehren ?

Gruß
Alex

Offline Adimarantis

  • Developer
  • Full Member
  • ****
  • Beiträge: 269
Hi Alex,

der Fehler liegt eindeutig auf der Ebene signal-cli/signal - wenn Signalbot oder das Net::DBus/Protocol::Dbus schon ein Problem hätte, würdest du nichts im syslog finden.
Ich kann jetzt nur vaage vermuten, dass irgendwas mit der Registrierung nicht stimmt.
Eventuell mal komplett den Inhalt von /var/lib/signal-cli löschen und mit dem Installer die Nummer neu registrieren.

Jörg
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU) + RfxTrx433XL
70+ Homematic/HMIP, Diverse 433Mhz Sensoren und Schalter
Module: 52_I2C_ADS1x1x (offiziell), 50_Signalbot, 50_SPI_MAX31865

Offline Nighthawk

  • Full Member
  • ***
  • Beiträge: 262
Hallo Jörg,

eine falsche, oder defekte Registrierung würde doch dazu führen dass es gar nicht funktioniert, in meinem Fall funktioniert es immer mal wieder für einige Stunden und dann wieder nicht.
Ich fürchte das wird an der "brutalen" NAT liegen hinter der ich sitze, leider habe ich auf diese absolut keinen Einfluss :-(


Gruß
Alex

Offline kaufi88

  • New Member
  • *
  • Beiträge: 14
Das besorgt mich jetzt nicht sehr, aber vielleicht kannst du die mal irgendwo hochladen, damit ich die vergleichen (oder sogar mal auf meinem Testsystem einspielen) kann. Bisher sehe ich nicht warum es nicht funktionieren sollte.

Jörg

Hallo Jörg,
ich hatte die letzten Tagen viel um die Ohren und konnte jetzt die Feiertage nutzen.
Heute habe ich dann die neuste Version von Dir installiert, habe auch gesehen dass er Singal-CLI 0.81 herunterladen hat.
Jedoch habe ich das selbige Problem.
Die Datei zkgroup-java-0.7.0.jar wurde auch angefasst. Du findest diese hier: http://www.intespa.de/zkgroup-java-0.7.0.jar

Hier noch die Ausgabe vom Install-Skript:

Please verify that these settigns are correct:
Signal-cli User:              signal-cli
Signal-cli Install directory: /opt
Signal config storage:        /var/lib/signal-cli
Signal version:               0.8.1
System library path:          /usr/lib
Phone number to be used:      +49xxxx
You seem to be on a Raspberry pi with armv7l
This will update system packages, install signal-cli and help to register with Signal service
[....]
Checking for /usr/lib...found
Checking for /etc/dbus-1...found
Checking for /etc/dbus-1/system.d...found
Checking for /usr/share/dbus-1...found
Checking for /usr/share/dbus-1/system-services...found
Checking for /etc/systemd/system...found
Checking for /run/dbus...found
Checking for apt-ftparchive...available
Checking for wget...available
Checking for sudo...available
Checking for haveged...available
Checking for java...available
Checking for diff...available
Checking for dbus-send...available
Checking for cpan...available
Checking for qrencode...available
Checking for zip...available
Checking for /usr/include/dbus-1.0/dbus/dbus.h...available
Checking for /usr/share/build-essential/essential-packages-list...available
Checking for /usr/share/doc/libimage-librsvg-perl...available
Checking for Protocol::DBus...V0.16 found
Checking user signal-cli ...found
Checking for /opt...found
Checking for /var/lib/signal-cli...found
Checking for existing signal-cli installation...found
Checking signal-cli version...signal-cli 0.8.0
Update to current version (y/N)? y
Proceed with signal cli installation
Downloading signal-cli 0.8.1...done
Unpacking ...
Downloading native armv7l libraries...
done
Updating native x86 since you're on Raspberry...updating: libzkgroup.so (deflated 55%)
updating: libsignal_jni.so (deflated 53%)
done
done
Changing file ownership ...done
Checking for /etc/dbus-1/system.d/org.asamk.Signal.conf...found
Checking for /usr/share/dbus-1/system-services/org.asamk.Signal.service...found
Checking for /etc/systemd/system/signal.service...found
11c11
< ExecStart=/opt/signal/bin/signal-cli --config /var/lib/signal-cli -u "+49zzzzzzzzz" daemon --system
---
> ExecStart=/opt/signal/bin/signal-cli --config /var/lib/signal-cli -u "+49xxxx" daemon --system
/etc/systemd/system/signal.service differs, update (Y/n)?
n
/etc/systemd/system/signal.service left untouched
You already seem to have a device configured, add +49xxxx additionally?
Continue (y) or skip (N)?N
Please enter the number (+49...) of somebody that you can send a test message to
Number:+49174yyyyyyyyyyyyy
Sending a message from command line to +49174yyyyyyyyyyyyyyy
Stopping signal-cli service
If you get a 'in use, waiting' message, skip by pressing CTRL-C - this is normal when system service is already up and running
WARN App - WARNING: Support for new group V2 is disabled, because the required native library dependency is missing: libzkgroup
Invalid username (phone number), make sure you include the country code.
Start signal-cli service
Sending a message via dbus-send command
method return time=1617526008.746986 sender=:1.2620 -> destination=:1.2621 serial=5 reply_serial=2
   int64 1617526007446
Sending a message via perl Protocol::DBus
Message received
If the recipient got all three messages, your setup looks healthy and you're ready to go to set up Signalbot in FHEM
pi@raspberrypi:/tmp $ cd /opt/signal/lib

Folgende Datei habe ich Dir hochgeladen:
pi@raspberrypi:/tmp $ sudo find / -name zkgroup-java-*.jar 2>/dev/null
/opt/signal/lib/zkgroup-java-0.7.0.jar

Viele Grüße & Danke
Kaufi

Offline Adimarantis

  • Developer
  • Full Member
  • ****
  • Beiträge: 269
Hi Kaufi,

Inhaltlich ist dein .jar mit meinem identisch. Seltsamerweise stimmt die Dateigröße des komprimierten .jar nicht überein, was jetzt aber nicht unbedingt was heißen muss. (evtl. verhält sich ja "zip" beim re-pack nicht deterministisch)
Ich hänge mal meine Version an. Probiere die mal aus.

Gruß,
Jörg
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU) + RfxTrx433XL
70+ Homematic/HMIP, Diverse 433Mhz Sensoren und Schalter
Module: 52_I2C_ADS1x1x (offiziell), 50_Signalbot, 50_SPI_MAX31865

Offline kaufi88

  • New Member
  • *
  • Beiträge: 14
Hi Kaufi,

Inhaltlich ist dein .jar mit meinem identisch. Seltsamerweise stimmt die Dateigröße des komprimierten .jar nicht überein, was jetzt aber nicht unbedingt was heißen muss. (evtl. verhält sich ja "zip" beim re-pack nicht deterministisch)
Ich hänge mal meine Version an. Probiere die mal aus.

Gruß,
Jörg

Hallo Jörg,
vielen Dank für Dein File.
Hat leider auch nicht zum Erfolg geführt.
Kann es evtl. an der Java-Version liegen?

Diese hier hab ich installiert:
pi@raspberrypi:/tmp $ java -version
openjdk version "11.0.3" 2019-04-16 LTS
OpenJDK Runtime Environment Zulu11.31+16-CA (build 11.0.3+7-LTS)
OpenJDK Client VM Zulu11.31+16-CA (build 11.0.3+7-LTS, mixed mode)


Grüße
Kaufi

Offline Adimarantis

  • Developer
  • Full Member
  • ****
  • Beiträge: 269
Hi Kaufi,

kann natürlich grundsätzlich an Java liegen. Bei mir ist folgendes installiert:
pi@raspberrypi4:~ $ java --version
openjdk 11.0.9.1 2020-11-04
OpenJDK Runtime Environment (build 11.0.9.1+1-post-Raspbian-1deb10u2)
OpenJDK Server VM (build 11.0.9.1+1-post-Raspbian-1deb10u2, mixed mode)

Jörg
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU) + RfxTrx433XL
70+ Homematic/HMIP, Diverse 433Mhz Sensoren und Schalter
Module: 52_I2C_ADS1x1x (offiziell), 50_Signalbot, 50_SPI_MAX31865

Offline Adimarantis

  • Developer
  • Full Member
  • ****
  • Beiträge: 269
Ich habe jetzt das Wiki entsprechend der V2 überarbeitet: https://wiki.fhem.de/wiki/Signalbot
Verbesserungsvorschläge willkommen (oder wer Schreibrechte hat, darf kleine Korrekturen gerne selbst vornehmen).

Jörg
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU) + RfxTrx433XL
70+ Homematic/HMIP, Diverse 433Mhz Sensoren und Schalter
Module: 52_I2C_ADS1x1x (offiziell), 50_Signalbot, 50_SPI_MAX31865

Offline Jamo

  • Hero Member
  • *****
  • Beiträge: 1107
Hi Jörg,
fhem stürzt reproduzierbar wegen Signal bei mir ab, mit folgendem Eintrag im Log (verbose 5):
Ich hatte mal Babble benutzt, habe aber babble bei mir vor 2 Tagen wieder gelöscht. Die attribute im Signal hatte ich aber stehen lassen, liegts daran?
Dann müsste evtl noch ein check rein, ob es das babble device wirklich gibt, falls die Attribute gesetzt sind.

PS: Nach Löschen der babble attribute stürzt fhem nicht mehr ab, also lag es daran.

2021.04.08 09:38:57 5: Starting notify loop for Signal, 1 event(s), first is msgText: L
2021.04.08 09:38:57 5: BatterieWechsel: not on any display, ignoring notify
2021.04.08 09:38:57 5: Batteriestatus: not on any display, ignoring notify
2021.04.08 09:38:57 5: Triggering Signal_n
2021.04.08 09:38:57 4: Signal_n exec {mySignal_n($NAME,$EVENT)}
2021.04.08 09:38:57 5: Cmd: >{mySignal_n($NAME,$EVENT)}<
2021.04.08 09:38:57 3: [mySignal_n] N=Signal, E=msgText: L, input=l, sender=+4915123456789, words=1
2021.04.08 09:38:57 5: Cmd: >set Signal send @+4915123456789 Usage: \"Cxx 2FAToken\"<
2021.04.08 09:38:57 5: End notify loop for Signal
Undefined subroutine &main::Babble_DoIt called at ./FHEM/50_Signalbot.pm line 565.
2021.04.08 09:38:57 0: SONOS0: Das Lauschen auf der Schnittstelle wurde beendet. Prozess endet nun auch...
2021.04.08 09:40:28 1: Including fhem.cfg

List:
Internals:
   FD         54
   NAME       Signal
   NOTIFYDEV  global
   NR         3290
   NTFY_ORDER 50-Signal
   STATE      Connected
   TYPE       Signalbot
   VERSION    Signalbot:2.1 signal-cli:0.8.1 Protocol::DBus:0.16
   READINGS:
     2021-03-04 18:13:01   joinedGroups   
     2021-04-08 09:40:40   lastError       Error in getContactName:Error Executing Method org.asamk.Signal.getContactName: null
     2021-03-23 12:55:52   msgAttachment   
     2021-03-23 12:55:52   msgAuth         0
     2021-03-23 12:55:52   msgGroupName   
     2021-03-23 12:55:52   msgSender       Hans Jamo
     2021-03-23 12:55:52   msgText         RR123456789DE
     2021-03-23 12:55:52   msgTimestamp    23-03-2021 12:55:50
     2021-03-23 12:55:52   prevMsgAttachment
     2021-03-23 12:55:52   prevMsgGroupName
     2021-03-23 12:55:52   prevMsgSender   Hans Jamo
     2021-03-23 12:55:52   prevMsgText     C02
     2021-03-23 12:55:52   prevMsgTimestamp 14-03-2021 21:58:20
     2021-04-02 11:43:52   sentMsg         wall_e: Docked
     2021-04-05 20:15:07   sentMsgRecipient Hans Jamo
     2021-04-05 20:15:07   sentMsgTimestamp 02-04-2021 11:43:52
   helper:
     init       :1.6445
     signalpath /org/asamk/Signal
     version    801
     contacts:
       +4915123456789  Hans Jamo
Attributes:
   allowedPeer +4915123456789
   babbleDev  Babble
   babbleExclude ^p$|^P$|^c|^C
   babblePeer +4915123456789
   defaultPeer +4915123456789
   doLog      1
   event-on-update-reading msgText
   room       Messages
   userattr   doLog:0,1
   verbose    0
   webCmd     reconnect
« Letzte Änderung: 08 April 2021, 09:54:50 von Jamo »
NUC 8i5BEK (Deb Buster), Homematic (UART/HM USB), Homematic-IP (Debmatic), HUEBridge, deCONZ/Conbee II, Sonos, FB, Alexa (fhem-lazy), ...

Offline Adimarantis

  • Developer
  • Full Member
  • ****
  • Beiträge: 269
Hi Jamo,

Dann müsste evtl noch ein check rein, ob es das babble device wirklich gibt, falls die Attribute gesetzt sind.

PS: Nach Löschen der babble attribute stürzt fhem nicht mehr ab, also lag es daran.

ja, das ist nachvollziehbar. Perl mag das gar nicht wenn man eine nicht-existierende Funktion aufruft.
Check habe ich eingefügt, aber da das eher ein "corner case" ist, werde ich erstmal weitere Änderungen aufsammeln bevor ich ein Update poste.

Jörg
« Letzte Änderung: 08 April 2021, 21:21:37 von Adimarantis »
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU) + RfxTrx433XL
70+ Homematic/HMIP, Diverse 433Mhz Sensoren und Schalter
Module: 52_I2C_ADS1x1x (offiziell), 50_Signalbot, 50_SPI_MAX31865