Neues Modul für "(Si)gnal - (Si)cherer Messenger" [32_SiSi.pm]

Begonnen von Quantum, 26 Februar 2018, 14:32:42

Vorheriges Thema - Nächstes Thema

Gisbert

Zitat von: drhirn am 16 Januar 2021, 18:13:08
Der Nummer +49xxxx scheint korrekt registriert zu sein. Zumindest glaube ich das, weil's bei dir auch einen Ordner +49xxxxxxxxxx.d gibt.

Wenn du aber aus FHEM eh Nachrichten versenden kannst, frage ich mich gerade, wo das Problem ist?

Versuch mal:
sudo -u fhem signal-cli -u +49xxxxxxxxxx send -m "Greetings from FHEM!" +49empfänger

Eventuell musst du aber davor den D-BUS Dienst beenden
sudo systemctl stop dbus-org.asamk.Signal.service

Hallo drhirn,

prinzipiell hast du natürlich recht, bis auf diese beiden kleinen Stolpersteinchen:

1) ExecStart=/opt/fhem/signal-cli/bin/signal-cli -u +49Sender --config /opt/fhem/.local/share/signal-cli/data daemon --system
--> mit dem Ordner "data" startet signal.service nicht - es geht nur ohne "data".
2) Die besagte Fehlermeldung nach: sudo -u fhem signal-cli -u +49Sender send -m "Greetings from FHEM!" +49Empfänger

Ich hasse es, wenn etwas nicht nach Vorgabe verläuft, dann gibt es immer ein mulmiges Gefühl.

Zitatpi@HPT610:/usr/local/bin$ sudo systemctl stop dbus-org.asamk.Signal.service
pi@HPT610:/usr/local/bin$ signal-cli -u +49Sender send -m "Greetings from FHEM!" +49Empfänger
[main] WARN org.asamk.signal.manager.Manager - Failed to resolve uuids from server, ignoring: Authorization failed!
[main] WARN org.asamk.signal.manager.Manager - Failed to get sender certificate, ignoring: Authorization failed!
Failed to send message: Authorization failed!

Trotzdem vielen Dank für deine Bereitschaft zu helfen.
Gisbert
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY

drhirn

Zwischen meinem Befehl und dem mit der Fehlermeldung ist ein Unterschied! Das sudo -u fhem nämlich. Damit rufst du den Befehl als User fhem auf, mit dem du auch die Nummer registriert hast.

Gisbert

Hallo drhirn,

man sieht den Wald vor lauter Bäumen nicht mehr, und leider ist das Wiki an dieser Stelle nicht präzise.

Jetzt läuft es:
pi@HPT610:/usr/local/bin$udo systemctl stop dbus-org.asamk.Signal.service
pi@HPT610:/usr/local/bin$ sudo -u fhem signal-cli -u +49Sender send -m "Greetings from FHEM!" +49Empfänger
1610820988007
pi@HPT610:/usr/local/bin$


Dann ist dieser Punkt auch geklärt.
Vielen Dank
Gisbert
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY

drhirn

Ja, leider. Wundert mich, weiter unten ist's nämlich richtig. Ich hab's korrigiert.

xl:bk

#154
Hallo zusammen,

vielen Dank für das super Modul und auch die schöne Beschreibung im Wiki. Genau nach dieser Schritt- für Schritt Anleitung habe ich es bei mir auch zum Laufen gebracht, obwohl ich mit Linux nicht so fit bin (Windoof Mausschubser  ;) )
Eine Frage habe ich allerdings noch: ich versuche Nachrichten mit Zeilenumbruch zu versenden. Das will irgendwie nicht klappen. Etwas weiter vorne im Thread habe ich gelesen, dass hierfür im Text ein /n verwendet werden kann.
Leider funktioniert das bei mir irgendwie überhaupt nicht (signal-cli Version 0.6.2).

Sollte das nicht so funktionieren?


set Signal send Testnachricht/nmit Zeilenumbruch


es funktioniert bei mir weder mit send, msg oder message

Hat vielleicht jemand einen Tipp für mich?

Grüße
FHEM auf Raspberry PI 3+, Stribel Eltron THZ 403sol Wärmepumpe

drhirn

Ich hab das nie probiert. Aber wenn, dann musst du einen Backslash (\) nehmen. Probier das mal.

xl:bk

Ne, hilft leider nicht.
Sehr lustig: he nachdem ob man "message, msg oder send" benutzt, kommt beim Senden von Backslash ein Slash zurück...
FHEM auf Raspberry PI 3+, Stribel Eltron THZ 403sol Wärmepumpe

drhirn

signal-cli kann's offenbar: https://github.com/AsamK/signal-cli/issues/105
Aber durch die Verwendung von FHEM als "frontend" klappt das leider nicht.

xl:bk

OK, dann trotzdem vielen Dank für Info.
Das mit der signal-cli hatte ich auch schon gefunden. Daher dachte ich erst, der Fehler sitzt vor dem Bildschirm  :D
FHEM auf Raspberry PI 3+, Stribel Eltron THZ 403sol Wärmepumpe

Init

Zitat von: Quantum am 12 April 2019, 20:57:24
Hallo drhirn,

leider fehlt mir die Zeit, das Modul offiziell zu betreuen. Sollte sich jemand bereit erklären dies zu übernehmen, hab ich nichts dagegen. Ansonsten ist dies vorerst nicht geplant.

Hallo Axxl,

ich betreibe das Modul schon seit längerem in einem Dockercontainer. Ich nutze dazu den offiziellen Container und leite meinen daraus ab. Kannst dich aus den Dateien bedienen.
Das nachfolgende tut für meine zwecke seinen Dienst. Ist eigentlich nicht für andere bestimmt. Sollte etwas nicht funktionieren, leiste ich für die Dateien keinen support!

Dockerfile:

    ARG BASE_IMAGE="fhem/fhem"
    ARG BASE_IMAGE_TAG="latest"
    FROM ${BASE_IMAGE}:${BASE_IMAGE_TAG}

    ARG L_SIGNAL_CLI="0.6.2"

    # Install base environment
    RUN DEBIAN_FRONTEND=noninteractive apt-get update \
        && DEBIAN_FRONTEND=noninteractive apt-get install -qqy --no-install-recommends \
            cpanminus \
            build-essential \
            wget \
            shared-mime-info \
          dbus \
          default-jre-headless \
          libunixsocket-java \
            lirc \
            net-tools \
            hping3 \
            wakeonlan \
            \
        && cpanm \
          Net::DBus \
          Lirc::Client \
            Crypt::Cipher::AES \
        && rm -rf /root/.cpanm \
        && sed -i s,/dev/lircd,/var/run/lirc/lircd,g /usr/local/share/perl/5.24.1/Lirc/Client.pm \
        && wget https://github.com/AsamK/signal-cli/releases/download/v${L_SIGNAL_CLI}/signal-cli-${L_SIGNAL_CLI}.tar.gz \
        && tar xf signal-cli-${L_SIGNAL_CLI}.tar.gz -C /opt \
        && ln -sf /opt/signal-cli-${L_SIGNAL_CLI}/bin/signal-cli /usr/local/bin/ \
        && apt-get purge -qqy \
            build-essential \
            cpanminus \
            subversion \
        && apt-get autoremove -qqy && apt-get clean \
        && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*

    COPY ./src/pre-start.sh /pre-start.sh
    COPY ./src/000_fhem-nopasswd /etc/sudoers.d/
    COPY ./src/org.asamk.Signal.service /usr/share/dbus-1/system-services/
    COPY ./src/org.asamk.Signal.conf /etc/dbus-1/system.d/
    ADD https://raw.githubusercontent.com/Quantum1337/32_SiSi.pm/master/FHEM/32_SiSi.pm /fhem/FHEM/32_SiSi.pm
    RUN mkdir /run/dbus && mkdir /run/lirc
    RUN mkdir /opt/signal-cli && mkdir /opt/lirc
    RUN chmod +x /pre-start.sh

    VOLUME [ "/opt/signal-cli" ]
    VOLUME [ "/opt/lirc" ]


pre-start.sh:

#!/bin/bash
export NUMBER="${NUMBER:-"undef"}"
export SLEEPTIME="${SLEEPTIME:-"10s"}"
export LIRC="${LIRC:-"no"}"

if [ $NUMBER != "undef" ]; then

   if [ -s /var/run/dbus/pid ]; then
      rm /var/run/dbus/pid
   fi
     
   echo "Starting DBus System Daemon"
   dbus-daemon --system --address=unix:path=/run/dbus/system_bus_socket

   echo "Starting signal-cli"
   /usr/local/bin/signal-cli -u $NUMBER --config /opt/signal-cli daemon --system &

   echo "Wait $SLEEPTIME to give signal-cli time to come up"
   sleep $SLEEPTIME
fi

if [ "$LIRC" = "yes" ]; then

   if [ ! -d "/var/run/lirc" ]; then
      mkdir "/var/run/lirc"
   fi
   echo "Starting lircd"
   /usr/sbin/lircd -O /opt/lirc/lirc_options.conf /opt/lirc/lircd.conf
fi



docker-compose:


services:
  fhem:
    image: XXX/fhem:latest
    privileged: true
    restart: always
    network_mode: "host"
    ports:
      - "7072:7072"
      - "8083:8083"
    volumes:
      - "./fhem/data:/opt/fhem/"
      - "./fhem/lirc:/opt/lirc/"
      - "./fhem/signal-cli:/opt/signal-cli"
    devices:
      - "/dev/lirc0:/dev/lirc0"
    environment:
      NUMBER: "+49XXXX
      SLEEPTIME: "5"

Hallo zusammen,

ich versuche gerade anhand der Config von Quantum im Docker-Container "fhem/fhem" das Signal Modul zum Laufen zu bekommen.

Leider erhalte ich beim Start folgenden Fehler:
dbus-daemon --system --address=unix:path=/run/dbus/system_bus_socket
dbus[8679]: Unknown username "systemd-network" in message bus configuration file
dbus[8679]: Unknown username "systemd-resolve" in message bus configuration file
dbus[8679]: Unknown username "systemd-timesync" in message bus configuration file
dbus-daemon[8679]: Failed to start message bus: Failed to bind socket "/run/dbus/system_bus_socket": No such file or directory


Hat jemand eine Idee, woran dies liegen könnte?

Vorab vielen Dank
Grüße
Marc

memento_10

Hallo zusammen,

auch von meiner Seite ein großes Danke für das Modul!! Telegram ist mir schon länger ein Dorn im Auge und könnte hiermit abgelöst werde.

Die Einrichtung des Modules klappte dank dem tollen Wiki-Beitrag in Minuten. Das Senden von Nachrichten aus FHEM funktioniert einwandfrei.

Jetzt aber meine Frage (ich hoffe, ich habe nichts überlesen): Sollte der Empfang von Nachrichten (also vom Handy an fhem) mit der Standard-Konfig lt. Wiki bereits funktionieren?

Bei mir kommt nämlich gar nichts an.  ???

Liebe Grüße!
Simon
FHEM auf Rpi4, OpenWRT auf Netgear Nighthawk, CUL868, FHT80, Tradfri, CUL433, tbot, alexa-fhem, ESP8266, Shelly 1+2, homebridge, Klingelerkennung über ESP, Anwesenheit per OpenWRT

Jamo

Hi Simon, ja klar, das sollte andersrum (von Handy an FHEM) auch funktionieren. Anders machts ja auch keinen Sinn, sonst hätte man ja nur einen Push Dienst und keinen Messenger. Hast Du an die Nummer gesendet, die du für fhem registriert hast?
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/ConbeeII, FB, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack

Jamo

Hallo xl:bk,
ZitatSollte das nicht so funktionieren?

Code: [Auswählen]
set Signal send Testnachricht/nmit Zeilenumbruch

es funktioniert bei mir weder mit send, msg oder message
Bei mir gehts so mit Zeilenumbruch:

my $menu = "C00 = Schalter0\nC01 = Schalter1\nC02 = Schalter2\nC03 = Schalter3";
fhem('set '.$NAME.' msg @'.$sender.' '.$menu);

liefert im Signal messenger ($NAME durch den Signal device name und $sender durch deine Nummer ersetzten):
C00 = Schalter0
C01 = Schalter1
C02 = Schalter2
C03 = Schalter3
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/ConbeeII, FB, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack

phoenix-anasazi

#163
Zitat von: memento_10 am 19 Januar 2021, 21:03:04
Hallo zusammen,

auch von meiner Seite ein großes Danke für das Modul!! Telegram ist mir schon länger ein Dorn im Auge und könnte hiermit abgelöst werde.

Die Einrichtung des Modules klappte dank dem tollen Wiki-Beitrag in Minuten. Das Senden von Nachrichten aus FHEM funktioniert einwandfrei.

Jetzt aber meine Frage (ich hoffe, ich habe nichts überlesen): Sollte der Empfang von Nachrichten (also vom Handy an fhem) mit der Standard-Konfig lt. Wiki bereits funktionieren?

Bei mir kommt nämlich gar nichts an.  ???

Liebe Grüße!
Simon

Guten Morgen du musst die Version 0.7.4 installieren. Es gab wohl einen Bug, hab mich damit gestern auch rumgeschlagen  ;)
Ich hab aber auch noch eine Frage:
Wie kann ich eine Gruppe als defaultPeer angeben?
Ich habe iene GroupId mit 43 Stellen plus =
Ich habe jetzt versucht mir vorangestellter # oder einem zusätzlichen =. Funktioniert aber alles nicht. Ich bekomme die Fehlermeldung
Invalid argument abcd567890123456789212345678901234567890123= to defaultPeer. Must be one or more valid recipient(s) or groupId(s)

Senden an die Gruppe und empfangen funktioniert problemlos. Hat sich da mit den neuen Gruppen etwas geändert?
Vielen Dank für das Modul und Grüße
Sascha

memento_10

Zitat von: phoenix-anasazi am 20 Januar 2021, 07:41:34
Guten Morgen du musst die Version 0.7.4 installieren. Es gab wohl einen Bug, hab mich damit gestern auch rumgeschlagen  ;)

Guten Morgen Sascha,

vielen Dank, da bin ich ja erleichtert.
Gibt's da so etwas wie ein Update, oder einfach die neue Version laden und die Dateien ersetzen?

LG
Simon
FHEM auf Rpi4, OpenWRT auf Netgear Nighthawk, CUL868, FHT80, Tradfri, CUL433, tbot, alexa-fhem, ESP8266, Shelly 1+2, homebridge, Klingelerkennung über ESP, Anwesenheit per OpenWRT