FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Thema gestartet von: th0nix am 05 Februar 2022, 21:50:13

Titel: signal(bot) mit FHEM Containr
Beitrag von: th0nix am 05 Februar 2022, 21:50:13
Da ich mein FHEM in einem Container auf meinem PI laufen lasse funktioniert der signalbot (https://wiki.fhem.de/wiki/Signalbot (https://wiki.fhem.de/wiki/Signalbot)) leider nicht.
Als Signal interface sieht der Container https://github.com/bbernhard/signal-cli-rest-api (https://github.com/bbernhard/signal-cli-rest-api) von bbernhard gut aus und Funktioniert ohne was zu machen.

Hat jemand hierzu schon mal was gemacht oder muss ich hier von der Integration von Null anfangen? Bzw hat jemand noch einen anderen Ansatz ?

Wenn jemand Interesse am nachstellen hat  ;) - meine docker-compose.yml

# docker-compose.yml
version: '2.3'

services:

  signal-cli-rest-api:
    # doc for register: https://github.com/bbernhard/signal-cli-rest-api/blob/master/doc/EXAMPLES.md
    image: bbernhard/signal-cli-rest-api:latest
    restart: always
    container_name: signal-cli-rest-api
    environment:
      # supported modes: json-rpc, native, normal
      - MODE=json-rpc mode
      - TZ=Europe/Berlin
      #- AUTO_RECEIVE_SCHEDULE=0 22 * * * #enable this parameter on demand (see description below)
    ports:
      #map docker port 8080 to host port 8080
      - "8080:8080"
    volumes:
      #map "signal-cli-config" folder on host system into docker container. the folder contains the password and cryptographic keys when a new number is registered
      - "./signal-cli-config:/home/.local/share/signal-cli"

  fhem:
    image: fhem/fhem:latest
    restart: always
    container_name: fhem
    ports:
      - "8083:8083"
      - "8084:8084"
      # MQTT
      - "1883:1883"
      - "18883:18883"
      # UPNP
      - "4711:4711"
    volumes:
      - "./fhem/:/opt/fhem/"
    devices:
      - "/dev/ttyAMA0:/dev/ttyAMA0"
    environment:
      FHEM_UID: 6061
      FHEM_GID: 6061
      TIMEOUT: 10
      RESTART: 1
      TELNETPORT: 7072
      TZ: Europe/Berlin

Titel: Aw: signal(bot) mit FHEM Containr
Beitrag von: Iceman0073 am 22 Juli 2025, 13:45:57
Hallo, hast du hierzu selbst etwas umgesetzt oder wie hast du es implementiert?

Viele Grüße
Michael
Titel: Aw: signal(bot) mit FHEM Containr
Beitrag von: crazy_penguin am 26 Oktober 2026, 09:23:05
Hallo zusammen,

das Thema ist zwar etwas älter, aber falls sich jemand etwas bauen will habe ich da was passendes.
Ich spreche den Container per HTTPMOD an. Ich wollte es einfach ohne Perl-Programmierung halten.

Hier meine Definition:

defmod HTMO_Signal_TX_Message HTTPMOD none 0
attr HTMO_Signal_TX_Message userattr SignalRecipient SignalSender
attr HTMO_Signal_TX_Message SignalRecipient +491700000000
attr HTMO_Signal_TX_Message SignalSender +491700000000
attr HTMO_Signal_TX_Message replacement01Mode expression
attr HTMO_Signal_TX_Message replacement01Regex SENDERNR
attr HTMO_Signal_TX_Message replacement01Value AttrVal("HTMO_Signal_TX_Message","SignalSender","")
attr HTMO_Signal_TX_Message replacement02Mode expression
attr HTMO_Signal_TX_Message replacement02Regex EMPFAENGERNR
attr HTMO_Signal_TX_Message replacement02Value AttrVal("HTMO_Signal_TX_Message","SignalRecipient","")
attr HTMO_Signal_TX_Message room _Gewerk->Meldungen,_System->Integration,_System->Signal
attr HTMO_Signal_TX_Message set01Data {"message":"$val","number":"SENDERNR","recipients":["EMPFAENGERNR"]}
attr HTMO_Signal_TX_Message set01Header Content-Type: application/json
attr HTMO_Signal_TX_Message set01Name message
attr HTMO_Signal_TX_Message set01TextArg 1
attr HTMO_Signal_TX_Message set01URL http://172.27.0.6:8080/v2/send
attr HTMO_Signal_TX_Message showBody 1
attr HTMO_Signal_TX_Message showError 1
attr HTMO_Signal_TX_Message timeout 10


Der Empfang geht auch, aber aktuell habe ich dafür keinen Anwendungfall.
Und garantiert geht das eleganter:


defmod HTMO_Signal_RX_Message HTTPMOD http://172.27.0.6:8080/v1/receive/+49170000000030
attr HTMO_Signal_RX_Message reading01Name Text
attr HTMO_Signal_RX_Message reading01Regex "message":"([^"]*)"
attr HTMO_Signal_RX_Message reading02Name Absender
attr HTMO_Signal_RX_Message reading02Regex "sourceNumber":"([^"]+)"
attr HTMO_Signal_RX_Message reading03Name Zeitstempel
attr HTMO_Signal_RX_Message reading03Regex "timestamp":(\d+)
attr HTMO_Signal_RX_Message room _System->Integration,_System->Signal
attr HTMO_Signal_RX_Message timeout 10

Viele Grüße

Jo