UGSo CallMeBot Signal
Experimentelle HA-App 0.1.0 im gemeinsamen Repository mit Blocks for HA. Vollständig DE/EN/FR, Systemsprache und Hell/Dunkel/System. Eigenständige UGSo-Implementierung, inspiriert von ioBroker.signal-cmb.

Einrichtung
- Repository
https://github.com/rockbaer2007/ugso-ha-mqtt-addonsim HA-App-Store hinzufügen und UGSo CallMeBot Signal installieren. - MQTT in HA einrichten, App starten und Oberfläche über Ingress öffnen. Der interne MQTT-Dienst liefert bevorzugt die Zugangsdaten; App-Optionen dienen als Fallback.
- Den aktuellen Bot-Kontakt aus der offiziellen Signal-Aktivierungsanleitung verwenden. In Signal die dort angegebene Freischaltnachricht senden und den Signal-API-Schlüssel abwarten.
- Profil-ID, Anzeigename, eigene internationale Telefonnummer mit + oder Signal-UUID sowie den passenden Schlüssel speichern. Bei verborgener Telefonnummer kann der Bot eine UUID liefern. Den Wert aus dem Aktivierungslink unverändert übernehmen.
- Standardprofil wählen. „Nachricht senden“ sendet wirklich an das ausgewählte gespeicherte Profil.
WhatsApp-Schlüssel gelten nicht für Signal. Beide Apps können gleichzeitig laufen: getrennte Profile, MQTT-Themen, Client-IDs und Diagnose-Entitäten. Die WhatsApp-App behält ihre bisherigen technischen IDs.
Blockly und Profilauswahl
Seit Blocks for HA 0.1.50: Nachrichten → Signal · CallMeBot.

Profilfeld anklicken, nach Name/ID suchen und auswählen. Leer bedeutet Standardempfänger. Sichtbar ist der Name; gespeichert wird die Profil-ID. Text, Variable oder Jinja als Nachricht anschließen. Protokoll: nur Fehler, keins oder Info. Der Block erzeugt natives mqtt.publish; JSON wird nach der Template-Auswertung serialisiert.
Die App veröffentlicht einen Katalog auf ugso/callmebot_signal/profiles und per MQTT-Discovery die Diagnose-Entität sensor.ugso_callmebot_signal_profiles. Zustand: Profilanzahl. Attribute: IDs, Namen, Standardprofil und Quellenmarker, keine Telefonnummer, Nachricht oder Schlüssel. Blocks erkennt den Quellenmarker auch nach Umbenennung der Entität. Standard-Discovery-Präfix: homeassistant.
Bei fehlender Verbindung Profil-ID manuell eingeben oder leer lassen. Ungültige/gelöschte IDs werden nicht automatisch ersetzt. JSON-Projekte erhalten den Komfortblock; YAML-Import stellt den Versand als allgemeine HA-/MQTT-Aktion dar.
Protokoll und Grenzen
- Versand:
ugso/callmebot_signal/send, QoS 0, retain false. - Beispiel:
{"profile":"default","message":"Hallo aus HA","loglevel":"errors"}. Leeres Profil verwendet den Standardempfänger. - Ergebnis:
ugso/callmebot_signal/result, nicht retained, nur Profil, Anfrage-ID, Status und Zeit. - Katalog und Verfügbarkeit:
ugso/callmebot_signal/profilesundugso/callmebot_signal/availability, retained. Verfügbarkeit zeigt die Broker-Verbindung. - Maximal 16 Profile, 4000 Zeichen, Warteschlange 20, mindestens 10 Sekunden zwischen Versandversuchen je Profil. Schnellere Befehle werden abgelehnt.
- Optionale
request_id: eine Stunde Dublettenprüfung, maximal 1000 IDs. Keine automatischen Wiederholungen oder Wiedergabe nach Neustart; retained Befehle werden abgelehnt. - Eine Signal-App-Instanz pro Broker. Schreibrechte auf Versandthemen beschränken. Externe MQTT-TLS-Konfiguration ist nicht enthalten.
Diese App sendet Textnachrichten an eigene aktivierte Empfänger. Bilder, Gruppen und Antworten sind nicht implementiert. accepted bestätigt nur die API-Annahme. Empfänger, Schlüssel und Nachricht gehen per HTTPS an https://signal.callmebot.com/signal/send.php.
Schlüssel bleiben in der privaten Backend-Datei /data/profiles.json, werden nicht an Browser/MQTT/Blockly ausgegeben und nicht protokolliert. Die Datei ist nicht verschlüsselt und in HA-Backups enthalten; Backups entsprechend schützen.
Prüfstand
Backend, UUID-/Nummernvalidierung, MQTT-Protokoll, Blockly/Jinja-Export, DE/EN/FR und mobile Ansicht sind mit Testdaten geprüft. Echte Signal-Zustellung und Installation unter HA-Supervisor sind mit der eigenen Einrichtung zu prüfen. Automatisierte Tests senden keine echten Nachrichten.
Quellcode · Apache-2.0 · Unabhängiges Community-Projekt.
