====== Signalleuchte für Telefonanrufe ====== Klingelt das Telefon, so sollen Signalleuchten in beiden Räumen den Anruf visuell (evtl. auch audiotechnisch) bemerkbar machen. Dies soll über die MQTT Infrastruktur laufen. ===== Benötigtes Material ===== * Fritzbox * Signalleuchten (2x Werma TwinFlash/EVS mit Warntonzusatz in Orange vorhanden) * 2x ESP8266 * 2x MQTT Empfänger an den Signalleuchten, eventuell auch ESP-01 mit wenigen pins * LED Matrix (Zukünftig könnte eventuell CLIP (Anruferkennung) ausgelesen werden und angegeben werden können) ===== Ressourcen ===== * A/B Schnittstellendokumentation: {{ :projekte:1tr110-1_ausgabe_08-2007_v110.pdf |Technische Beschreibung der Analogen Wählanschlüsse }} * [[https://www.mikrocontroller.net/articles/Analoger_Telefonanschluss|Analoger Telefonanschluss]] * Über eine FritzBox Funktion wie Callmonitor ließe sich diese funktion ohne zusätzliches sendergerät verwenden [[https://www.home-assistant.io/components/sensor.fritzbox_callmonitor/|Callmonitor]] * Verkabelung der ESP8266 Pins für unterschiedliche Boot Modi: [[http://arduino.esp8266.com/Arduino/versions/2.0.0/doc/boards.html#generic-esp8266-modules|hier]] ===== Umsetzung ===== Es wurde entschieden das Projekt auf Basis der Fritzbox API durchzuführen, welche es ermöglicht Anrufevents von dieser zu erhalten. ==== Datenquelle ==== Als Infoquelle über die Anrufe wird eine Fritzbox API verwendet. Diese lässt sich über #96*5* Ein- und über #96*4* Ausschalten. Bei aktivierter Option, bietet die Fritzbox am TCP-Port 1012 eine Benachrichtigungsfunktion, welche sich auch mit entsprechenden Libs abfragen lässt (z.B. [[https://www.npmjs.com/package/fritz-callmonitor|fritz-callmonitor]]). Beispiel für Ausgabe an Port 1012: 15.11.18 20:36:52;RING;0;017612345678;87654321;SIP2; 15.11.18 20:36:57;DISCONNECT;0;0; Offensichtliches Schema der Ausgabe ist: Datum Uhrzeit;Eventtyp;?;Anrufernummer;Empfangsnummer;Eingehende-Schnittstelle; ==== Software ==== Es wurde ein kleiner Connector in NodeJS entwickelt, der mithilfe des [[https://www.npmjs.com/package/fritz-callmonitor|fritz-callmonitor]] Pakets entsprechende telefonbezogene Events an die MQTT-Infrastruktur weiterleitet. Genauere Beschreibung dieser Software ist auf Github zu finden: [[https://github.com/vspaceone/Callmonitor-Connector-MQTT|Callmonitor-Connector-MQTT]] Als Empfänger wurde eine Anwendung für den ESP8266 geschrieben, welche als Reaktion auf bestimmte MQTT-Nachrichten GPIO-Pins schaltet. Genauere Beschreibung dieser Software ist auf Github zu finden: [[https://github.com/vspaceone/MQTT-callblink|MQTT-callblink]] ==== Hardware ==== Die Hardware ist in Arbeit...