Autor Thema: Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]  (Gelesen 3902 mal)

Offline Quantum

  • New Member
  • *
  • Beiträge: 36
Hallo FHEM-Gemeinde

da es noch kein Modul für den quelloffenen Messenger "Signal" gibt,

Android: https://play.google.com/store/apps/details?id=org.thoughtcrime.securesms&hl=de
iOS: https://itunes.apple.com/de/app/signal-private-messenger/id874139669?mt=8

habe ich versucht, etwas dafür zu schreiben.
Das Modul setzt auf die Kommandozeilenschnittstelle signal-cli: https://github.com/AsamK/signal-cli
und ist nur für Linux verfügbar !

Der Vorteil gegenüber WhatsApp/Telegram ist die Quellofenheit sowohl der Clienten, als auch des !!Servers!!.
Auch das zugrundeliegende Verschlüsselungsprotokoll zur E2E-Verschlüsselung ist durchgehnd einsehbar.
Es können auch ohne Probleme Festnetznummern registriert werden, ohne Gefahr zu laufen, dass diese wieder gelöscht werden.

Den Code und eine zusätzliche Beschreibung zur Einrichtung und Bedienung findet ihr unter:
https://github.com/Quantum1337/32_SiSi.pm
!! Das Modul Net::DBus >= 1.1.0 muss für die Funktion installiert sein !!

Die Entwicklung befindet sich in einem frühen Stadium. Fehlverhalten ist deshalb nicht ausgeschlossen.

Was sollte es können ;):
Empfangen von Nachrichten jeglicher Art
Senden von Nachrichten an einen oder mehrerer Empfänger, wahlweise mit Anhang
Senden von Gruppennachrichten

Was kann es noch nicht:
Vieles :)
.
.

Probleme bitte direkt auf GitHub melden !

Anregungen und konstruktive Kritik gern gesehen !

Grüße
Quantum
« Letzte Änderung: 08 März 2018, 22:06:53 von Quantum »
Gefällt mir Gefällt mir x 2 Liste anzeigen

Offline Ma_Bo

  • Hero Member
  • *****
  • Beiträge: 1089
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #1 am: 26 Februar 2018, 17:28:06 »
Hallo Quantum,
werde es die Tage mal testen, klingt aber recht interessant...

Arbeitet das Modul komplett nonBlocking...?

Grüße Marcel
NUC mit FHEM, HM Heizungsthermostate, HM Wandthermostate, Intertechno Funksteckdosen, 10" Tablet als Wanddisplay, KeyMatic, Fensterkontakte, Fensterkontakte umgebaut als Wassermelder und Briefkastenmelder, Aussenthermostat, Anwesenheitssteuerung über Fritz Box, Google Home usw. usw.

Offline Quantum

  • New Member
  • *
  • Beiträge: 36
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #2 am: 26 Februar 2018, 17:52:19 »
Hallo Marcel,

ja das war mein Hauptanliegen.
Um dies zu erreichen wird der FHEM-Prozess geforkt. Der Kindsprozess hört dann auf entsprechende D-Bus-Signale.
Der Kindsprozess wartet des Weiteren auf Events des Vaterprozesses und gibt dies an eine DBus-Methode weiter. Zum Beispiel das senden einer Nachricht durch den Benutzer.
Um keine DBus Signale zu verpassen bleibt der Kindsprozess nach dem enable dauerhaft am Leben.

Wäre dankbar wenn es der eine oder andere Testen könnte. Bis jetzt lief es nur bei mir und man selber bedient sein "Kind" immer anders als andere :)

Grüße
Quantum

Offline Ma_Bo

  • Hero Member
  • *****
  • Beiträge: 1089
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #3 am: 26 Februar 2018, 17:54:52 »
Klingt gut...
Gibt es eine Übersicht, was mit dem Messanger möglich ist, z.B. Nachrichten mit einem bestimmten Klingelton versehen oder komplett ohne Ton, Kursivschrift usw...?
NUC mit FHEM, HM Heizungsthermostate, HM Wandthermostate, Intertechno Funksteckdosen, 10" Tablet als Wanddisplay, KeyMatic, Fensterkontakte, Fensterkontakte umgebaut als Wassermelder und Briefkastenmelder, Aussenthermostat, Anwesenheitssteuerung über Fritz Box, Google Home usw. usw.
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline klausw

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1764
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #4 am: 27 Februar 2018, 00:12:44 »
im Moment scheitere ich noch an dbus selbst  :-\
signal-cli in Version 0.5.6 läuft, einen Nummer ist registriert und ich kann Nachrichten senden und empfangen.
libunixsocket-java habe ich auf dem Raspian Jessie installiert.
signal-cli -u USERNAME daemon bringt den Fehler:
org.freedesktop.dbus.exceptions.DBusException: Cannot Resolve Session Bus Address
        at org.freedesktop.dbus.DBusConnection.getConnection(DBusConnection.java:244)
        at org.asamk.signal.Main.handleCommands(Main.java:625)
        at org.asamk.signal.Main.main(Main.java:80)
was habe ich übersehen?
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Offline Quantum

  • New Member
  • *
  • Beiträge: 36
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #5 am: 27 Februar 2018, 10:31:34 »
@Marcel: Ich kann dich bzgl des Funktionsumfanges nur auf die offizielle Seite weiterleiten: https://signal.org/ Oder auf die AppStore links verweisen, die ich gepostet habe.
Signal ist aber noch nicht so umfangreich wie vergleichbare Dienste. Was nicht ist, kann aber noch werden :)

@klausw:
Hast du diese Schritte unter dem Kapitel "System Bus" erledigt ?
https://github.com/AsamK/signal-cli/wiki/DBus-service

Wenn hier alles korrekt eingerichtet wurde kann mit
dbus-send --system --type=method_call --print-reply --dest="org.asamk.Signal" /org/asamk/Signal org.asamk.Signal.sendMessage string:MessageText array:string: string:RECIPIENTdas senden einer Nachricht getriggert werden. Dabei startet DBus automatisch den entsprechenden systemd Service, wenn er noch nicht gestartet wurde, und springt die Methode "sendMessage" an. RECIPIENT entsprechend mit +49XXXXX ersetzen

Wichtig zu erwähnen sind vielleicht noch folgende Dinge, die in diesem Text etwas untergehen:

Die Dateien die du dafür benötigst findest du unter: https://github.com/AsamK/signal-cli/tree/master/data

Durch den Schritt
sed -i -e "s|%dir%|<INSERT_INSTALL_PATH>|" -e "s|%number%|<INSERT_YOUR_NUMBER>|" /etc/systemd/system/signal.servicewerden Installationspfad des signal-cli und USERNAME/NUMBER in der systemd service datei gesetzt. Dies ist notwendig, damit systemd den daemon richtig starten kann.

Es muss der user signal-cli existieren. Wenn nicht entsprechend anlegen.

und ganz wichtig!!
wenn du schon eine nummer registriert hast findest du bei dem entsprechenden Nutzer im Homeverzeichnis unter ~/.config/signal einen Ordner "data". Dierser Ordner enthält die Schlüssel des Benutzers. Der Ordner "data" muss dann rekursiv nach /var/lib/signal-cli/ kopiert werden. Danach mit root die Rechten den Ordner rekursiv auf den Nutzer "signal-cli" anpassen.
sudo chown -R signal-cli:signal-cli /var/lib/signal-cli/data
Danach sollte es klappen :)

Freundliche Grüße
Quantum


Offline Quantum

  • New Member
  • *
  • Beiträge: 36
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #6 am: 27 Februar 2018, 12:18:28 »
mir ist noch was aufgefallen:

Du benutzst mit

signal-cli -u USERNAME daemon
den "Session Bus"  von DBus. Dieser ist auf headless systemen meistens nicht gestartet (wird normalerweise vom Grafischen Loginmanger gestartet). Um dennoch zu Testzwecken den signal-cli in diesem Modus zu starten muss also der "Session Bus" für den angemeldeten Benutzer erst gestartet werden. Hierfür einfach zuerst
dbus-launch
eintippen und es sollte funktionieren. Dann kann mit
dbus-send --session --type=method_call --print-reply --dest="org.asamk.Signal" /org/asamk/Signal org.asamk.Signal.sendMessage string:MessageText array:string: string:RECIPIENTüberprüft werden ob das senden einer Nachricht funktioniert. Man beachte den Unterschied session/system !

Der "System Bus" muss trotzdem eingerichtet werden, da das Modul bis jetzt nur "System Bus" adressen anspringt.

Offline klausw

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1764
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #7 am: 27 Februar 2018, 23:07:27 »
Danke Quantum,

/var/lib/signal-cli hatte ich nicht angelegt. Das ganze ist meiner Meinung nach etwas irreführend beschrieben.
Das Programm dbus-launch ist bei dem Paket fürs Raspbian gar nicht mit dabei. Aber es geht ja auch ohne.

Senden und empfangen klappt mit Deinem Modul super. signal-cli hatte ich bisher nicht in der näheren Auswahl, weil alles so ewig dauert. Aber als Daemon passt die Geschwindigkeit.

Ein paar Anregungen hätte ich  ;)

Wenn Du im sub SiSi_Initialize($) die benötigten Module über eval lädst kannst du fehlende Module direkt abfangen. Andernfalls kann es passieren das FHEM abschmiert wenn ein Modul fehlt. So z.B.:
eval "use Net::DBus;";
return "please install Net::DBus" if($@);

Eventuell würde es Sinn machen, soweit es geht, die Readings und sets wie im Modul TelegramBot zu benennen.
Das würde Parallelnutzung/Umstieg vereinfachen. Z.B. beim benutzen von eigenen Scripten zur Steureung von FHEM über die Messenger.

Attribut für Standard Empänger in welchem Nummern abgelegt werden können, an die gesendet wird wenn r= nicht angegeben wird.

Attribut für Nummern die man Empfangen möchte. (wenn gesetzt werden alle anderen ignoriert)

Grüße
Klaus
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Offline klausw

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1764
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #8 am: 28 Februar 2018, 17:18:34 »
Hallo Quantum,

gibt es für das senden von Dateien spezielle Vorgaben?

set signal sendMessage r=+49171234567 m="test" a="/opt/fhem/www/images/default/weather/partly_cloudy.png"
geht bei mir nicht raus, es gibt auch nix im Log (verbose 5)

wenn ich Parameter a weglasse geht es:
set signal sendMessage r=+49171234567 m="test"2018.02.28 17:15:37 3: SiSi signal - Trying to send message to DBus method 'sendMessage' on service org.asamk.Signal
2018.02.28 17:15:38 3: SiSi signal - The message: 'test' with attachment(s): 'NONE' was sended to recipient(s): '+49171234567'
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Offline Quantum

  • New Member
  • *
  • Beiträge: 36
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #9 am: 28 Februar 2018, 17:43:30 »
Hallo klausw,

schön das es zunächst mal mit der Einrichtung geklappt hat. Und danke für die Anregungen hab Sie aufgenommen.

Zitat
gibt es für das senden von Dateien spezielle Vorgaben?

Was ich mir vorstellen könnte sind Berechtigungsprobleme. Kann der Nutzer "signal-cli" auf die Datei zugreifen ?

EDIT:
ok hab es jetzt mal selbst ausprobiert. Sowohl mit keinen Berechtigungen als auch wenn die Datei nicht vorhanden ist.
Die Fehler sollten im Log erscheinen. Das Modul initiiert dann einen reconnect. Das sollte so nicht sein, werde das gleich beheben.

Wird beim senden mit Anhang im Log garnichts angezeigt ? Nicht mal

Zitat
Trying to send message to DBus method 'sendMessage' on service org.asamk.Signal
?

Hast du die neueste Modulversion ? Hab gestern noch ein bisschen war dran gemacht, da mir selber noch sachen aufgefallen sind.

Freundliche Grüße
Quantum
« Letzte Änderung: 28 Februar 2018, 18:03:26 von Quantum »

Offline klausw

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1764
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #10 am: 01 März 2018, 00:23:45 »
Hallo Quantum,

Die Datei kann von allen geleden werden.
Es erscheint gar nix im Log wenn a=".." mit übergeben wird
Stimmt, ich hatte es mit der alten Version versucht.
Habe gerade die neue aufgespielt. Leider funktioniert es jetzt gar nicht mehr  :-\
2018.03.01 00:11:25 4: SiSi signal - Connected to DBus' System Bus.
2018.03.01 00:11:25 5: SiSi signal - Setting DBus Timeout to 60s.
2018.03.01 00:11:25 3: SiSi signal - An unexpected error occured. Closing connection to DBus service org.asamk.Signal Can't locate object method "timeout" via package "Net::DBus" at ./FHEM/32_SiSi.pm line 386.
2018.03.01 00:11:25 3: SiSi signal - Reconnect to DBus service org.asamk.Signal.
2018.03.01 00:11:25 4: SiSi signal - Closing connection to DBus service org.asamk.Signal.
2018.03.01 00:11:25 4: SiSi signal - Trying to kill PID '30515'.
2018.03.01 00:11:25 4: SiSi signal - Killing PID '30515' failed. Maybe the process crashed due to an error?.
2018.03.01 00:11:25 3: SiSi signal - Connection to DBus service org.asamk.Signal closed.
2018.03.01 00:11:25 3: SiSi signal - Trying to connect to DBus' System Bus.
2018.03.01 00:11:25 4: SiSi signal - Connected to DBus' System Bus.
2018.03.01 00:11:25 5: SiSi signal - Setting DBus Timeout to 60s.
2018.03.01 00:11:25 3: SiSi signal - An unexpected error occured. Closing connection to DBus service org.asamk.Signal Can't locate object method "timeout" via package "Net::DBus" at ./FHEM/32_SiSi.pm line 386.
2018.03.01 00:11:25 3: SiSi signal - Reconnect to DBus service org.asamk.Signal.
2018.03.01 00:11:25 4: SiSi signal - Closing connection to DBus service org.asamk.Signal.
2018.03.01 00:11:25 4: SiSi signal - Trying to kill PID '30516'.
2018.03.01 00:11:25 4: SiSi signal - PID '30516' killed.
2018.03.01 00:11:25 3: SiSi signal - Connection to DBus service org.asamk.Signal closed.
2018.03.01 00:11:25 3: SiSi signal - Trying to connect to DBus' System Bus.

Grüße
Klaus
« Letzte Änderung: 01 März 2018, 00:43:01 von klausw »
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Offline Quantum

  • New Member
  • *
  • Beiträge: 36
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #11 am: 01 März 2018, 00:54:38 »
mhm ok. Welche Modul Version von Net::DBus hast du ?
Einfach mal:
Zitat
perl -MNet::DBus -le 'print $Net::DBus::VERSION'
eintippen.

Habe gerade die Änderungen von heute (gestern) gepushed. Bitte nochmal aktualisieren.

EDIT: Hab gerade nochmal auf cpan.org geschaut.
Du hast bestimmt eine Modulversion < 1.1.0. Die Timeoutfunktion kam nämlich erst mit 1.1.0 hinzu.
Ich mach das ganze auf ArchLinuxARM die liefern die neuste Version aus. Debian liefert hier ne ältere Version aus.
Besteht die Möglichkeit diese auf die neuste Version zu aktualisieren, evtl direkt mittels cpan ?

Danke&
Viele Grüße
Quantum
« Letzte Änderung: 01 März 2018, 01:11:41 von Quantum »

Offline klausw

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1764
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #12 am: 01 März 2018, 12:26:37 »
du hast recht, es ist die 1.0.0 drauf
Über cpan schlug fehl, da die installierter DBus Version zu alt.

nach
sudo aptitude install -y libapparmor1
export VERSION="1.13.0-1"
wget http://ftp.fr.debian.org/debian/pool/main/d/dbus/libdbus-1-3_$VERSION_armhf.deb
sudo dpkg --auto-deconfigure -i libdbus-1-3_$VERSION_armhf.deb
wget http://ftp.fr.debian.org/debian/pool/main/d/dbus/dbus_$VERSION_armhf.deb
sudo dpkg -i dbus_$VERSION_armhf.deb
wget http://ftp.fr.debian.org/debian/pool/main/d/dbus/libdbus-1-dev_$VERSION_armhf.deb
sudo dpkg --auto-deconfigure -i libdbus-1-dev_$VERSION_armhf.deb
sudo perl -MCPAN -e 'install Net::DBus'
sudo reboot
sollte es passen:
pi@drham:~ $ dpkg -l dbus
Gewünscht=Unbekannt/Installieren/R=Entfernen/P=Vollständig Löschen/Halten
| Status=Nicht/Installiert/Config/U=Entpackt/halb konFiguriert/
         Halb installiert/Trigger erWartet/Trigger anhängig
|/ Fehler?=(kein)/R=Neuinstallation notwendig (Status, Fehler: GROSS=schlecht)
||/ Name                                 Version                 Architektur             Beschreibung
+++-====================================-=======================-=======================-==============================================================================
ii  dbus                                 1.13.0-1                armhf                   simple interprocess messaging system (daemon and utilities)
pi@drham:~ $ perl -MNet::DBus -le 'print $Net::DBus::VERSION'
1.1.0

Neuste Version deines Moduls funktioniert jetzt, incl. senden von Anhängen
« Letzte Änderung: 01 März 2018, 12:51:46 von klausw »
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Offline Quantum

  • New Member
  • *
  • Beiträge: 36
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #13 am: 01 März 2018, 12:36:14 »
sehr gut :) Freut mich zu hören
Hab nun einen Modul und Versionscheck implementiert. Werd ich heute abend dann pushen.

Ersetz mal --session durch --system. Dann sollte es gehen :)

Freundliche Grüße
Quantum

Offline klausw

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1764
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #14 am: 01 März 2018, 12:58:15 »
Hab nun einen Modul und Versionscheck implementiert. Werd ich heute abend dann pushen.
sehr schön, ich werde zeitnah testen

Ersetz mal --session durch --system. Dann sollte es gehen :)
auch gerade gemerkt  ::)
ich meine es funktionierte vorher mit session
Kannst du mir sagen wann was verwendet wird?
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Offline Quantum

  • New Member
  • *
  • Beiträge: 36
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #15 am: 01 März 2018, 13:16:55 »
Zitat
Kannst du mir sagen wann was verwendet wird?

Session
Ist auf den Benutzer begrenzt. Auf grafischen Oberflächen dient der Session Bus beispielsweise dazu Nutzerprogramme untereinander zu verbinden.
Bsp: Pidgin->newMessage => Session-Bus => Notify-Dienst->show

System
Nutzübergreifender Bus. Wird vorallem von Systemkomponenten verwendet. Nicht Nutzerspezifisch. Und genau das machen wir hier.
signal-cli (user:signal-cli)->newMessage => System-Bus => FHEM-Modul (user:fhem)->show

Zitat
ich meine es funktionierte vorher mit session

Ich denke durch dein sudo reboot hast du vorigere expermiente am Session Bus wieder zurückgesetzt.
Der session Bus wird auf headless Systemen normalerweise nicht automatisch gestartet.

Freundliche Grüße
Quantum
« Letzte Änderung: 01 März 2018, 13:19:10 von Quantum »

Offline Quantum

  • New Member
  • *
  • Beiträge: 36
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #16 am: 02 März 2018, 00:53:52 »
war nun ein bisschen fleißig:

Neue Features:
-> Anzeige der letzten und der vorigen Nachricht (Die Namen der readings wurden an TelegramBot angelehnt)
-> Neues Attribut. defaultRecipient
-> neue Set-Kommandos für das senden von Nachrichten (angelehnt an TelegramBot)
-> Modul und Versionscheck

für weitere Änderungen und nähere Beschreibung siehe GitHub Repo https://github.com/Quantum1337/32_SiSi.pm

Es wurde viel internes verändert. Wenn aktualisiert wird und ein bestehendes Modul vorhanden ist. Am besten löschen und neu einbinden.

Freundliche Grüße
Quantum

Offline malted

  • Jr. Member
  • **
  • Beiträge: 51
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #17 am: 04 März 2018, 14:55:10 »
da es noch kein Modul für den quelloffenen Messenger "Signal" gibt,

Ich sag nicht, dass die Lösung besser ist. Aber sicherheitshalber... das kennst? https://forum.fhem.de/index.php?topic=30745.0

Bei mir funktioniert das seit über drei Jahren ohne Probleme.

Ich habe unlängst mal auf den Fork geupdatet, damit die Attachments wieder gehen.
https://github.com/aebruno/textsecure

Braucht zumindest kein DBUS etc..

Offline Quantum

  • New Member
  • *
  • Beiträge: 36
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #18 am: 04 März 2018, 21:10:58 »
Hallo malted,

klar hab auch ein Beitag in deinem Thread hinterlassen.
Viele wege führen nach Rom. Und DBus ist bei meisten Distributionen im Standard
installiert. Wenn der signal-cli hierfür auch noch eine Schnittstelle bietet... Wieso nicht nutzen ?
Wenn es bei dir so funktioniert ist doch alles ok :)

Freundliche Grüße
Quantum

Offline Quantum

  • New Member
  • *
  • Beiträge: 36
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #19 am: 08 März 2018, 22:04:47 »
hab gerade die Änderungen der letzten Tage gepushed

Neue Features:
-> Senden von Gruppennachrichten
-> Es werden Internals über den Status und den Inhalt der letzten Nachricht gesetzt.

Änderungen:
-> die Bedienung der set Kommandos send|msg|_msg|message wurde verändert. Verhält sich nun ähnlich wie TelegramBot

Bugfixes:
-> GruppenIds werden nun richtig angezeigt

Für nähere Informationen siehe: https://github.com/Quantum1337/32_SiSi.pm

Weitere Wünsche und konstruktive Kritik gerne gesehen !

Freundliche Grüße
Quantum

Offline klausw

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1764
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #20 am: 09 März 2018, 16:32:42 »
Hallo Quantum,

getestet und für gut befunden  8)

Gruppennachrichten funktionieren (wusste bis dahin gar nicht, das sowas existiert)
defaultRecipient auch

Für mich kann dein Modul derzeit alles was ich benötige und läuft stabil.
Hast du vor das Modul dem FHEM Repository hinzuzufügen?

Grüße
Klaus

PS: Das telegram Modul hat noch einige nette Funktionen, die ich selbst nicht nutze bzw. anderweitig umgesetzt habe. Aber vielleicht ist da was dabei das du auch sinnvoll findest
- FHEM Befehle direkt über ein Hotword absetzen (auch limitierbar nach Client und Befehl).
- Standard Antworten an nicht autorisierte User oder die Möglichkeit die NAchrichten von diesen an einen Definierten Client weiterzuleiten.
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Offline Quantum

  • New Member
  • *
  • Beiträge: 36
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #21 am: 10 März 2018, 12:06:42 »
Hallo klausw,

super, dass es bei dir funktioniert :)

Ja, es gibt allerdings noch ein paar interne Baustellen die ich hier notiert habe. Danach könnte man es sich überlegen, das Modul dem Repo hinzuzufügen.
Was ich auf jedenfall noch machen werde, ist, dass nur noch definierte Nummern durchgelassen werden. Und Standardantworten bzw. Weiterleiten an einen definieten Nutzer.

Beim Thema FHEM Befehle direkt über das Modul abzusetzen, hab ich den Vorteil, der sich dadurch ergibt noch nicht wirklich erkannt.
Ich bin ein Freund des KISS (Keep it simple, stupid) Prinzips und des Leitsatzes "Do one thing, but do it well". Und so wie ich das erkenne, kann das ganze über Notifys etc. erledigt werden.
So mach ich das... Oder erkenne ich da etwas nicht ?

Freundliche Grüße
Quantum

Offline klausw

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1764
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #22 am: 10 März 2018, 17:22:20 »
Hallo Quantum,

Beim Thema FHEM Befehle direkt über das Modul abzusetzen, hab ich den Vorteil, der sich dadurch ergibt noch nicht wirklich erkannt.
...
So mach ich das... Oder erkenne ich da etwas nicht ?

Letztendlich lassen sich auch Standardantworten mit notifys lösen.
Der Vorteil einer direkten Implementierung ist ein geringerer Konfigurationsaufwand.
Aber dein Modul deine Entscheidung  8)
Mit der aktuellen Funktionalität bin ich mehr als zufrieden.
Ich hatte nur ein paar Funktionen aufgezählt die mir beim Telegram Modul aufgefallen waren.
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

Offline subseven

  • New Member
  • *
  • Beiträge: 12
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #23 am: 19 April 2018, 16:16:47 »
Hallo,

gerade habe Signal auf meinem FHEM-System(Arch-Linux) in Betrieb genommen.
Es funktioniert soweit echt Super. Um das bestehende Telegram abzulösen zu können benötige ich allerdings Gruppenchats (also eine Gruppe als DefaultRecipient). Wie ist das möglich?
Bei der Ausgabe meiner notfiys habe ich nämlich zZ das Problem, dass es nicht mehr komplett ankommt.
Beispiel:
.*:[Hh]umidity:.* { if($EVTPART1 > 70 ) {if($TYPE =~ m/LaCrosse/) {{ fhem ("set fhemsignal send @#SHxxxxxxxxKmuJ+w== Feuchtigkeitswarnung:\n$NAME $EVENT:\nLuftfeuchte zu hoch!"); Log 3, "$NAME: Feuchtigkeitswarnung $EVENT";}}}}
Hier kommt nur noch "Feuchtigkeitswarnung:" an der Zeilenumbruch und die Variable wird nicht mit ausgegeben.
Nutze ich das selbe mit Telegram funktioniert es. Das ist dann so:
.*:[Hh]umidity:.* { if($EVTPART1 > 70 ) {if($TYPE =~ m/LaCrosse/) {{ fhem ("set fhemcallebot message Feuchtigkeitswarnung:\n$NAME $EVENT:\nLuftfeuchte zu hoch!"); Log 3, "$NAME: Feuchtigkeitswarnung $EVENT";}}}}
Edit: Scheint an dem Zeilenumbruch zu liegen. Ohne geht es. Eine Gruppe als DefaultRecipient wäre aber trotzdem ganz praktisch.

Grüße und vielen Dank für die Arbeit bisher! ;)
« Letzte Änderung: 19 April 2018, 17:47:23 von subseven »

Offline Quantum

  • New Member
  • *
  • Beiträge: 36
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #24 am: 19 April 2018, 22:33:32 »
Hallo subseven,

den newline Fehler hab ich behoben. Da hat sich ein "\" zuviel eingenistet :).
DefaultGroup gibt es zZ noch nicht. Werde es angehen sobald ich wieder etwas Zeit finde.

Freundliche Grüße
Quantum

Offline subseven

  • New Member
  • *
  • Beiträge: 12
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #25 am: 20 April 2018, 13:23:55 »
Zeilenumbrüche funktionieren nun.  8)
Für den DefaultRecipient wäre es am einfachsten, wenn wie bei Telegramm anstelle einer Nummer auch eine Gruppe angegeben werden kann. Dein Modul müsste es verarbeiten, dass entweder eine Nummer oder eben die GruppenID angegeben wird. Dann entsprechend den Parameter von signal-cli setzen.
Denn so ist ohne Einschränkungen das
set <NAME> message verwendebar und man muss nicht auf
set <NAME> send @#SHxxxxxxxxKmuJ+w==zurückgreifen.

Danke für die schnelle Umsetzung der Zeilenumbrüche!

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #26 am: 25 Mai 2018, 11:03:22 »
Hallo, ich bin gerade dabei bei meinem FHEM dem MEssanger Dienst Signal mit einzubauen, habe aber Probleme dieses hinzubekommen.
Ich habe folgendes System
Raspberry PI3 auf dem FHEM läuft seit einigen Jahren Problemlos, mit Tablet UI als Oberfläche.
Ich habe signal-cli installiert mit Java und ich kann über

/signal-cli -u +49xxxxxxxxx send -m "Hallo Handy" +49xxxxxxxxx

Machrichten schicken.
Ich habe dbbus installiert

 perl -MNet::DBus -le 'print $Net::DBus::VERSION'
1.1.0

Schicken einer Nachricht über dbus-send geht nicht

sudo dbus-send --system --type=method_call --print-reply --dest="org.asamk.Signal" /org/asamk/Signal org.asamk.Signal.sendMessage string:MessageText array:string: string:+49xxxxxxxx

es kommt die Fehlermeldung:

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.

Den Benutzer habe ich hinzugefügt:

sudo adduser signal-cli

Als passwort habe ich auch signal-cli genutzt. Muß ich mit dem Benutzer noch irgend was machen ?

Vielen Dank für die Hilfe
Gruß Ralf


Offline reibuehl

  • Sr. Member
  • ****
  • Beiträge: 542
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #27 am: 25 Mai 2018, 11:41:07 »
Hast Du die in https://github.com/AsamK/signal-cli/wiki/DBus-service beschriebenen Schritte (als User root) gemacht?

Schau mal, ob die Dateien
  /etc/dbus-1/system.d/org.asamk.Signal.conf
  /usr/share/dbus-1/system-services/org.asamk.Signal.service
  /etc/systemd/system/signal.service
existieren und das der Pfad zu signal-cli in /etc/systemd/system/signal.service stimmt. Dann mal mit
  systemctl status signal.service
  systemctl status dbus.service
checken, ob beide Services laufen.
Reiner.

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #28 am: 25 Mai 2018, 12:05:57 »
Hallo,

der signal.service läuft nicht.

* signal.service - Send secure messages to Signal clients
   Loaded: loaded (/etc/systemd/system/signal.service; enabled)
   Active: failed (Result: exit-code) since Fr 2018-05-25 11:00:59 CEST; 1h 2min ago
 Main PID: 6468 (code=exited, status=203/EXEC)

Mai 25 11:00:59 xxxxx.xx systemd[1]: signal.service: main process exited, code=exited, status=203/EXEC
Mai 25 11:00:59 xxxxx.xx systemd[1]: Failed to start Send secure messages to Signal clients.
Mai 25 11:00:59 xxxxx.xx systemd[1]: Unit signal.service entered failed state.

In der Datei signal.service ist unter User der signal-cli eingetragen.

Muss ich den noch auf dateien oder Verzeichnisse berechtigen ? könte das das Problem sein ?

Gruß Ralf

Offline reibuehl

  • Sr. Member
  • ****
  • Beiträge: 542
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #29 am: 25 Mai 2018, 12:15:27 »
Also bei mir hat der user signal-cli das Homeverzeichnis /var/lib/signal-cli in dem das data Verzeichnis mit der Konfiguration liegt. /var/lib/signal-cli und alles darunter gehört bei mir dem User signal-cli.
Reiner.

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #30 am: 25 Mai 2018, 12:35:53 »
Hi, bei mir gehören die Ganzen Datein und Verzeichnisse dem root.
Wenn ich in der Datei signal.servie den User auf root setze und neu starte (den ganz Pi neu boote) bekomme ich folgende Meldung:

sudo systemctl status signal.service -l
* signal.service - Send secure messages to Signal clients
   Loaded: loaded (/etc/systemd/system/signal.service; enabled)
   Active: inactive (dead)

Seinbar wird dieses nicht automatisch gestartet ?

Wie bekomme ich das denn jetzt ncoh hin bzw. was stimmt da denn jetzt nicht ?

Gruß Ralf


Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #31 am: 25 Mai 2018, 13:17:00 »
Hallo, bei starten von signal.service bekomme ich folgenden fehler

Failed password for root from 218.65.30.107 port 42586 ssh2

Verstehe ich das richtig das es zwingend der User signal-cli sein muss der das ganze macht ?

Gruß Ralf

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #32 am: 25 Mai 2018, 13:29:38 »
Hi, nein es ist egal welchen USER ich bei signal.service eintrage der Fehler bleibt der gleiche.

Offline reibuehl

  • Sr. Member
  • ****
  • Beiträge: 542
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #33 am: 25 Mai 2018, 14:11:26 »
Bist Du dir sicher, dass der ssh Password Fehler was mit dem Signal Service zu tun hat?

Ich würde mal erst die Zugriffsrechte richten. Woliegt den bei Dir das data Verzeichnis mit der Signal Konfiguration und was ist das Home Verzeichnis des Users signal-cli?

Reiner.

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #34 am: 25 Mai 2018, 14:20:46 »
Hallo ,
100% kann ich das nicht sagen, aber wenn ich sudo service signal start machen bekomme ich folgendes:

Job for signal.service failed. See 'systemctl status signal.service' and 'journalctl -xn' for details.

mit sudo jornalctl -xn bekomme ich folegndes:
 Failed password for root from 21
Mai 25 14:09:39 xxxx sshd[8337]: Failed password for root from 21
Mai 25 14:09:41 xxxx sshd[8337]: Failed password for root from 21
Mai 25 14:09:41 xxxx sshd[8337]: Received disconnect from 218.65.
Mai 25 14:09:41 xxxx sshd[8337]: PAM 2 more authentication failur
Mai 25 14:10:01 xxxx CRON[8374]: pam_unix(cron:session): session
Mai 25 14:10:01 xxxx CRON[8378]: (root) CMD (/home/pi/online_chec
Mai 25 14:10:02 xxxx CRON[8249]: pam_unix(cron:session): session
Mai 25 14:10:13 xxxx sudo[8409]: pi : TTY=pts/0 ; PWD=/home/pi ;
Mai 25 14:10:13 xxxx sudo[8409]: pam_unix(sudo:session): session


Das Home Verzeichnis /home/signal-cli
Das data Verzeichnis liegt  /var/lib/signal-cli/data

Hatte die Rechte wie folgt gesetzt
sudo chown -R signal-cli:signal-cli /var/lib/signal-cli/data

Gruß
Ralf

Offline reibuehl

  • Sr. Member
  • ****
  • Beiträge: 542
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #35 am: 25 Mai 2018, 15:13:53 »
Das sudo chown -R signal-cli:signal-cli /var/lib/signal-cli/data passt. Damit sind die Rechte in Ordnung.

Dann sollte Deine /etc/systemd/system/signal.service so aussehen:

[Unit]
Description=Send secure messages to Signal clients
Requires=dbus.socket
After=dbus.socket
Wants=network-online.target
After=network-online.target

[Service]
Type=dbus
Environment="SIGNAL_CLI_OPTS=-Xms2m"
ExecStart=/usr/bin/signal-cli -u <Signal ID> --config /var/lib/signal-cli daemon --system
User=signal-cli
BusName=org.asamk.Signal

[Install]
Alias=dbus-org.asamk.Signal.service

mit <Signal ID> gleich Deiner Signal ID, also etwa +491231234567. Stimmt das soweit auch noch und hast Du unter /var/lib/signal-cli/data eine Datei <Signal ID> und ein Unterverzeichnis <Signal ID>.d ?

Wenn ja, dann nochmal den Service starten. Ich nehme dazu nicht "sudo service signal start" sondern "sudo systemctl start signal.service".
Reiner.

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #36 am: 25 Mai 2018, 15:25:29 »
Hallo meine Datei siht fast so aus der UNterschied ist der Pfad zu signal-cli

ExecStart=/opt/signal-cli-0.6.0/bin/signal-cli -u +49xxxxxxxxx --config /var/lib/signal-cli daemon --system

Unter /usr/bin habe ich keine signal-cli !


Wenn ich mit sudo systemctl start signal.service starte kommt folgende Meldung:
Job for signal.service failed. See 'systemctl status signal.service' and 'journalctl -xn' for details.

* signal.service - Send secure messages to Signal clients
   Loaded: loaded (/etc/systemd/system/signal.service; enabled)
   Active: failed (Result: exit-code) since Fr 2018-05-25 15:22:40 CEST; 2min 5s ago
  Process: 13534 ExecStart=/opt/signal-cli-0.6.0/bin/signal-cli -u +49x1x3x33xx1 --config /var/lib/signal-cli daemon --system (code=exited, status=1/FAILURE)
 Main PID: 13534 (code=exited, status=1/FAILURE)

Mai 25 15:22:40 xxxx signal-cli[13534]: User is not registered.
Mai 25 15:22:40 xxxx systemd[1]: signal.service: main process exited, code=exited, status=1/FAILURE
Mai 25 15:22:40 xxxx systemd[1]: Failed to start Send secure messages to Signal clients.
Mai 25 15:22:40 xxxx systemd[1]: Unit signal.service entered failed state.




Gruß Ralf

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #37 am: 25 Mai 2018, 15:34:02 »
Hallo , das ist komisch. In der Felhermeldung steht ja User

Mai 25 15:22:40 xxxx signal-cli[13534]: User is not registered.

Wenn ich aber direkt dieses mache mit

./signal-cli -u +49xxxxxxx send -m "Hallo Handy" +49yyyyyyyy

Funtioniert es ?!?!?

Gruß Ralf

Offline reibuehl

  • Sr. Member
  • ****
  • Beiträge: 542
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #38 am: 25 Mai 2018, 15:42:03 »
Dann hast Du die Konfig nicht (vollständig) nach /var/lib/signal-cli/data kopiert.
Reiner.

Offline reibuehl

  • Sr. Member
  • ****
  • Beiträge: 542
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #39 am: 25 Mai 2018, 15:48:51 »
Führe mal

cp -R ~/.config/signal/data/* /var/lib/signal-cli/data
als der User aus, mit dem ./signal funktioniert.
Reiner.

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #40 am: 25 Mai 2018, 15:52:54 »
Hallo,
cp -R ~/.config/signal/data/* /var/lib/signal-cli/data

da habe ich nicht die Berechtigung. Kann dieses nur mit SUDO machen.

 ./signal-cli -u +49.... geht ohne SUDO !


In dem Verzeichnis ist nur die Datei +49xxxxxx drin.

Gruß Ralf

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #41 am: 25 Mai 2018, 15:57:17 »
Hallo,

das Verzeichnis hat folgende Berechtigung:

$ sudo ls -lsa /var/lib/signal-cli/
insgesamt 12
4 drwx------  3 root       root       4096 Mai 25 15:45 .
4 drwxr-xr-x 40 root       root       4096 Mai 24 11:57 ..
4 drwx------  2 signal-cli signal-cli 4096 Mai 25 15:49 data


den Benutzer signal-cli habe ich nachträglich angelegt.
Da wurde ja auch nach einem Passort gefragt.
Als Passwort habe ich dann das gleiche genommen wie auch der Benutzer heißt !

Gruß Ralf

Offline reibuehl

  • Sr. Member
  • ****
  • Beiträge: 542
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #42 am: 25 Mai 2018, 16:25:30 »
cp -R ~/.config/signal/data/* /var/lib/signal-cli/data

da habe ich nicht die Berechtigung. Kann dieses nur mit SUDO machen.

Dann mach mal mit sudo. Meine Vermutung ist, dass die /var/lib/signal-cli/data/+49xxxxxx nicht korrekt ist und Du unter ~/.config/signal/data/+49xxxxxx eine Version der Datei hast, die die korrekten Zugangsdaten für Signal hat.

Bei ./signal -u +49xxxxxx wird ~/.config/signal/data/+49xxxxxx verwendet. Wenn der signal Service gestartet wird, wird /var/lib/signal-cli/data/+49xxxxxx verwendet, weil --config /var/lib/signal-cli angegeben ist.

Reiner.

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #43 am: 25 Mai 2018, 17:47:53 »
Hallo, habe das Verzeichnis nochmal gelöscht und neu kopiert und dann die Berechtigung mit chmod 777 gesetzt um zu sehen ob es an der Berechtigung liegt.

Nach dem neustart bekomme ich jetzt einen andere Feherl meldung

sudo systemctl status signal.service -l
* signal.service - Send secure messages to Signal clients
   Loaded: loaded (/etc/systemd/system/signal.service; enabled)
   Active: failed (Result: exit-code) since Fr 2018-05-25 17:38:09 CEST; 1min 4s ago
  Process: 24149 ExecStart=/opt/signal-cli-0.6.0/bin/signal-cli -u +49xxxxxx --config /var/lib/signal-cli daemon --system (code=exited, status=1/FAILURE)
 Main PID: 24149 (code=exited, status=1/FAILURE)

Mai 25 17:38:09 xxxx signal-cli[24149]: Missing native library dependency for dbus service: no unix-java in java.library.path
Mai 25 17:38:09 xxxx systemd[1]: signal.service: main process exited, code=exited, status=1/FAILURE
Mai 25 17:38:09xxxx systemd[1]: Failed to start Send secure messages to Signal clients.
Mai 25 17:38:09 xxxx systemd[1]: Unit signal.service entered failed state.


Jetzt sieht es so aus als irgend was von Java fehlt...

Gruß Ralf

Offline reibuehl

  • Sr. Member
  • ****
  • Beiträge: 542
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #44 am: 25 Mai 2018, 17:51:56 »
sudo apt-get install libunixsocket-java
Reiner.

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #45 am: 25 Mai 2018, 18:42:57 »
Hallo,

jetzt habe ich es ganz geschossen.
Jetzt läuft nicht mal dbus-send mehr .. das kennt er nicht mehr.

Na ja werde nächste WOche weiter sehen ob ich es zum laufen bekommen.

Bishierher erstmal danke für die tolle Unterstützung.

Gruß Ralf  :-*

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #46 am: 26 Mai 2018, 12:17:56 »
Hallo, habe es jetzt hinbekommen das ich mit

sudo systemctl status signal.service -l

* signal.service - Send secure messages to Signal clients
   Loaded: loaded (/etc/systemd/system/signal.service; enabled)
   Active: active (running) since Sa 2018-05-26 11:52:20 CEST; 17min ago
 Main PID: 16249 (java)
   CGroup: /system.slice/signal.service

Also das läuft jetzt und der dbus.service auch :

dbus.service - D-Bus System Message Bus
   Loaded: loaded (/lib/systemd/system/dbus.service; static)
   Active: active (running) since Sa 2018-05-26 11:46:04 CEST; 25min ago
     Docs: man:dbus-daemon(1)
  Process: 16019 ExecReload=/usr/bin/dbus-send --print-reply --system --type=method_call --dest=org.freedesktop.DBus / org.freedesktop.DBus.ReloadConfig (code=exited, status=0/SUCCESS)
 Main PID: 15857 (dbus-daemon)
   CGroup: /system.slice/dbus.service


sudo dbus-send --system --type=method_call --print-reply --dest="org.asamk.Signal" /org/asamk/Signal org.asamk.Signal.sendMessage string:MessageText array:string: string:+4915758261296

geht jetzt auch ;-)

Nun geht es weiter bei FHEM.
Ich habe die Datei 32_SiSi.pm im FHEM Ordner abgelet.

Wenn ich nun

reload 32_SiSi.pm

ausführe bekomme ich folgende Fehlermeldung:#
Too many arguments for main::RemoveInternalTimer at ./FHEM/32_SiSi.pm line 63, near ""SiSi_MessageDaemonWatchdog")"
Not enough arguments for main::InternalTimer at ./FHEM/32_SiSi.pm line 69, near "$hash)"
Too many arguments for main::RemoveInternalTimer at ./FHEM/32_SiSi.pm line 84, near ""SiSi_MessageDaemonWatchdog")"
Too many arguments for main::RemoveInternalTimer at ./FHEM/32_SiSi.pm line 96, near ""SiSi_MessageDaemonWatchdog")"
Too many arguments for main::RemoveInternalTimer at ./FHEM/32_SiSi.pm line 108, near ""SiSi_MessageDaemonWatchdog")"
Not enough arguments for main::InternalTimer at ./FHEM/32_SiSi.pm line 110, near "$hash)"
Too many arguments for main::RemoveInternalTimer at ./FHEM/32_SiSi.pm line 178, near ""SiSi_MessageDaemonWatchdog")"
Not enough arguments for main::InternalTimer at ./FHEM/32_SiSi.pm line 180, near "$hash)"
Too many arguments for main::RemoveInternalTimer at ./FHEM/32_SiSi.pm line 268, near ""SiSi_MessageDaemonWatchdog")"
Not enough arguments for main::InternalTimer at ./FHEM/32_SiSi.pm line 270, near "$hash)"
./FHEM/32_SiSi.pm has too many errors.

Muss hier noch was anderes Installiert werden?

Gruß Ralf

Offline reibuehl

  • Sr. Member
  • ****
  • Beiträge: 542
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #47 am: 26 Mai 2018, 17:26:15 »
Normalerweise nicht. Ist dein FHEM aktuell? Evtl. mal ein update all und dann ein shutdown reload in FHEM machen...?
Reiner.

Offline reibuehl

  • Sr. Member
  • ****
  • Beiträge: 542
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #48 am: 26 Mai 2018, 17:27:26 »
Net::DBus hast Du installiert?
Reiner.

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #49 am: 26 Mai 2018, 21:00:43 »
Hallo, mein FHEM ist nicht ganz aktuell ca. 1 Jahr alt.
Wie installiert man NET::DBUS dazu habe ich nichts weiter gefunden,  du meinst doch in FHEM.

Gruss Ralf

Offline reibuehl

  • Sr. Member
  • ****
  • Beiträge: 542
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #50 am: 26 Mai 2018, 21:51:04 »
Nein, Net::DBus ist ein Perl Modul. Das wird mit

sudo apt-get install libnet-dbus-perl
installiert.
Reiner.

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #51 am: 26 Mai 2018, 22:25:39 »
Hallo, das Perl Module ist installiert.   Auch nach der Aktualiesoeeunh vom FHEM hat sich nichts geändert.

Gruss Ralf

Offline reibuehl

  • Sr. Member
  • ****
  • Beiträge: 542
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #52 am: 26 Mai 2018, 23:02:52 »
Ich glaube, dann weiß ich auch nicht mehr weiter.
Reiner.

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #53 am: 27 Mai 2018, 13:34:29 »
Hallo,

ich habe das Problem gefunden, es lag an den Berechtigungen für den User signal-cli. Ich habe folgendes Gemacht:

sudo chown -R signal-cli: /var/lib/signal-cli
 su signal-cli
cd /opt/signal-cli-0.6.0/bin/
./signal-cli --config /var/lib/signal-cli -u +49xxxxxxxx register -v
./signal-cli --config /var/lib/signal-cli -u +49xxxxxxxx verify code

So und jetzt bekomme ich bei reload 32_SiSi.pm im FHEM auch keine fehler mehr.

Wie definiere ich ich jetzt Signal in FHEM ?
Um mit

set signal sendMessage r=+49xxxxxxx m="test"
einen nachricht zu schicken ?

Gruß Ralf

Offline reibuehl

  • Sr. Member
  • ****
  • Beiträge: 542
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #54 am: 27 Mai 2018, 15:02:38 »
Anlegen in FHEM mit:

define signal SiSi
attr signal enable yes

Eventuell noch:

attr signal defaultRecipient +49xxxxxxx
damit Du nicht immer mit r=+49xxxxxxx den Empfänger angeben musst.
Reiner.

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #55 am: 28 Mai 2018, 07:00:54 »
Hallo, im FHEM konnte ich alles einrichten aber leider ist immer disconnected.

Im Lag steht folgendes:

2018.05.28 06:53:32 3: SiSi signal - Failed to connect to DBus service org.asamk.Signal: Timed out (service_start_timeout=50000ms).
2018.05.28 06:53:32 1: PERL WARNING: Use of uninitialized value $sysreadReturn in numeric lt (<) at ./FHEM/32_SiSi.pm line 175.
2018.05.28 06:53:32 3: SiSi signal - Error while reading data from child.
2018.05.28 06:53:32 3: SiSi signal - Connection to DBus service org.asamk.Signal closed.
2018.05.28 06:53:37 3: SiSi signal - Reconnect to DBus service org.asamk.Signal.
2018.05.28 06:53:37 3: SiSi signal - Trying to connect to DBus' System Bus.
2018.05.28 06:54:28 3: SiSi signal - Failed to connect to DBus service org.asamk.Signal: Timed out (service_start_timeout=50000ms).

Wenn ich mit sudo systemctl status dbus.service -l teste ob dbus läuft bekomme ich die Meldung active (running) aber auch

[system] Faild to activate service 'org.asamk.Signal': timed out (service_start_timeout=50000ms)

Gruß Ralf
« Letzte Änderung: 28 Mai 2018, 07:20:51 von Ralf Kruppa »

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #56 am: 28 Mai 2018, 07:56:00 »
Hallo,

so jetzt kann ich aus FHEM raus Meldungen schicken allerdings nur wie folgt :

set signal @+49xxxxxx "Message Text"

Empfangen geht leider nicht ...

Gruß Ralf

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #57 am: 28 Mai 2018, 08:09:32 »
Hallo, so jetzt geht auch der Empfang.

vielen danke für die Unterstützung.

Gruß Ralf

Offline takaze

  • New Member
  • *
  • Beiträge: 45
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #58 am: 30 Mai 2018, 11:22:44 »
Hallo zusammen,

zunächst danke für das Modul, funktioniert nach ein paar Versuchen problemlos :)

Gibt es den mittlerweile die Möglichkeit Nachrichten nur von bekannten oder explizit erlaubten Nummern zu empfangen. Bin da beim querlesen des Threads darübergestolpert, konnte aber dazu keine weiteren Infos finden.

Grüße,
Florian
RPi 3B, Add-On Board mit 1.8" TFT LCD, FHEM V5.8, CULFW v1.65 RPIAddOn_CSM, div. HM Komponenten, Jeelink v3, Selbstbau CUL433 MHz, 8'' WIN10 Wand-Infoboard mit FTUI

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #59 am: 30 Mai 2018, 12:02:35 »
HI,

ich habe das wie folgt gelöst:
define signal_not notify signal:msgText.* {
  my $msgSender = ReadingsVal("signal","msgSender",0);
  my $msgText = ReadingsVal("signal","msgText",0);
  if ($msgSender eq "+49xxxxxx") {
    Log3 "signal","+49xxxxxx", "$msgText";
  }
}

Nur wenn die Rufnummer stimmt wird ein Log Eintrag geschrieben. Bei allen anderen Rufnummern passiert nichts.

Gruß´Ralf

Offline Quantum

  • New Member
  • *
  • Beiträge: 36
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #60 am: 30 Mai 2018, 21:28:43 »
Hallo FHEM-Gemeinde,

schön dass das Modul mittlererweile zuspruch findet.
Ich war die letzten zwei Wochen im Urlaub. Urlaub bedeutet bei mir auch digitale Abstinenz ;)
Aber wie es aussieht helft ihr euch gegenseitig :).
Da es wohl immer mehr anklang findet und ich dazu auch immer mehr Nachrichten bekomme,
werde ich demnächst daran wieder weiterentwickeln.
Features wie defaultGroup und restrictedNumbers sind auf der Liste.
Im Frühjahr und Sommer verschieben sich, naturbedingt, die Prioritäten. Deshalb ist es gerde etwas still :)

Freundliche Grüße
Quantum

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #61 am: 31 Mai 2018, 07:03:05 »
Hallo Quantum, klasse Modul übrigens. Weißt du zufällig ob es bei Signal die Möglichkeit gibt Nachrichten zu schicken die Links enthalten die man dann nur anklicken muss und automatisch wieder zurück geschickt werden? Bei Telegramm ist so was möglich.

Gruss Ralf

Offline Quantum

  • New Member
  • *
  • Beiträge: 36
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #62 am: 31 Mai 2018, 11:45:48 »
Hallo Ralf,

nein, das gibt es meines Wissens nicht.

Freundliche Grüße
Quantum


Offline reibuehl

  • Sr. Member
  • ****
  • Beiträge: 542
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #63 am: 31 Mai 2018, 12:05:49 »
Ein Commandref Eintrag für das Modul wäre schön. Vielleicht könntest Du das bei der kommenden Überarbeitung/Erweiterung ja mit rein nehmen?

Wie weit ist das Modul eigentlich mit dem Telegramm Modul kompatibel was die Kommando-Syntax angeht? Evtl. könnte man da ja von dort das Gerüst der commandref übernehmen? Ich denke mal das eine gemeinsame Syntax was Kommandos, Readings, etc angeht eh sehr gut wäre.
Reiner.

Offline Quantum

  • New Member
  • *
  • Beiträge: 36
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #64 am: 31 Mai 2018, 12:29:12 »
Hallo reibuehl

ja, Commandref Eintrag werde ich machen. Die Syntax wurde, soweit es geht/sinnvoll ist mit Telegramm harmonisiert.
Werde auch bei neuen Funktionen darauf achten, dass die unterschiede nicht all zu groß werden.

Freundliche Grüße
Quantum

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #65 am: 14 Juni 2018, 10:20:39 »
Hallo,

Textnachrichten zu verschicken klappt wunderbar.
Nun wolte ich auch Bilder verschicken aber das klappt leider nicht .
ich habe es folgendemaßen versucht:

set signal msg @+49xxxxxxxx a='/home/pi/test.jpg'

dann bekomme ich die Text Nachricht : a='/home/pi/test.jpg'

Gruß Ralf

Offline Quantum

  • New Member
  • *
  • Beiträge: 36
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #66 am: 14 Juni 2018, 10:39:06 »
Hallo Ralf,

ich weis nicht wie du auf die Syntax a=Path kommst. Die Syntax hat es vor Monaten gegeben. Wurde aber schon längst ersetzt.
Um ein Bild zu versenden vor dem Pfad ein & voranstellen, also:

set signal msg @+49xxxxxxxx &PATH Sometext

Siehe auch Commandref :)

Freundliche Grüße
Quantum

Offline Ralf Kruppa

  • New Member
  • *
  • Beiträge: 37
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #67 am: 14 Juni 2018, 10:43:22 »
Hallo,

danke für die schnelle Antwort.

Jetzt funktioniert auch das.

Super

Offline Morgennebel

  • Sr. Member
  • ****
  • Beiträge: 973
  • Proud systemd-free zone
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #68 am: 05 Juli 2018, 19:03:37 »
Moin,


die gesamten Anleitungen für signal-cli und den DBus beziehen sich auf systemd.

Den habe ich (zum Glück) nicht auf meinem Systemen laufen und kenne mich auch nicht genügend aus.
Was müsste ich bei einem SysV-System machen, um den signal-cli korrekt zu starten (welche Parameter)?

Danke, -MN
Einziger Spender an FHEM e.V. mit Dauerauftrag seit >= 18 Monaten

FHEM: LattePanda x86 4/64GB
In-Use: STELLMOTOR, VALVES, PWM-PWMR, Xiaomi, Allergy, Proplanta, UWZ, MQTT, vThings, Homematic, Luftsensor.info, ESP8266, ESERA

Offline Quantum

  • New Member
  • *
  • Beiträge: 36
Antw:Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]
« Antwort #69 am: 06 Juli 2018, 18:35:16 »
Hallo Morgennebel,

zu SysVInit hab ich keinerlei Bezug. Und kann dir demach leider nicht weiterhelfen.

Freundliche Grüße
Quantum

 

decade-submarginal