An sich ist die Einbindung einer FTZ123D12 ziemlich einfach. Ich habe vor ein paar Jahren eine Telnet Denis für 1€+Versand erstanden. Zuerst ein alter Adapter von Siedle 2+n auf FTZ123D12 (nur nötig, weil ich keine FTZ123d12 Sprechstelle habe und die erst mal herstellen musste - kostet 5-10€). Die Denis hat einen internen S0. Den habe ich an den ISDN-Eingang einer FBF 7170 angeschlossen. Ein Türanruf wird von der Denis auf dem internen S0 signalisiert , für die 7170 ist es ein eingehender Anruf. den lasse ich auf einem eingerichteten "IP-Telefon"-Account der 7170 klingeln, an den wiederum ein Asterisk auf meinem PI angemeldet ist, der seinerseits u.a. Parallelruf aufs Handy macht. An der Denis sind auch zwei analoge Wandtelephone (1.+2. OG) angeschlossen, die als Ersatz der alten interenen Sprechstellen dienen; sie klingeln zusätzlich zu den am Asterisk angemeldeten Telephonen (und rechtfertigen den zusätzlichen Stromverbrauch der Denis...). Das läuft seit Jahren an meinem Zweitwohnsitz.
Als echte Selbstbaulösung bietet sich der Umbau einer zum System gehörigen Innenstation an:
I.d.R. ist dort ein Summer verbaut. Reedkontakt zwischen Magneten und Summerplätchen (oder Hall-Sensor daneben) und schon hat man einen potentialfreien Kontakt, den man zum Schalten eines GPIO-Pins verwenden kann.
Die Innenstation hat normalerweise einen Abheben-Schalter (öffnet, wenn Hörer abgenommen). Austausch gegen Relais, das über Leistungstransistor vom PI gesteuert wird oder Betätigung per Hub-Magnet.
Die Innenstation hat auch einen Hörer mit Microphon und Lautsprecher. Mit zwei Übertragern (1:10) senkt man den Ausgangspegel von der Soundkarte so, dass man Line-Out an den 1. Übertrager (10:) und vom Übertrager (:1) anstelle des Micros im Hörer anschließt. Umgekehrt kommt statt des Lautsprechers im Hörer an die Kabel der 2. Übertrager (:10) und das andere Ende des Übertragers (1:) in den Mikrophoneingang der Soundkarte. Am Übertragerverhältnis muss man ggf. experimentieren, ggf. 1:5, wenn 1:10 zu leise ist.
Auf dem PI läuft ein Skript in Endlosschleife, das den GPIO für das Klingelsignal prüft und wenn der Kontakt geschlossen ist (und gerade noch kein Türruf läuft) ein Callscript startet, welches das gewünschte Ziel anruft und mit dem Tuerruf-Kontext verbindet. Sobald das Ziel abnimmt, wird im Tuerruf-Kontext zunähst das Relais/ der Hubmagnet aktiviert, das Gespräch mit chan_alsa verbunden, das Gespräch geführt und bei hangoff das Relais/ der Hubmagnet wieder deaktiviert.
Einen Türöffner kann man durch Überwachung des Gesprächs im Asterisk auf DTMF-Codes und entsprechendes aktivieren eines weiteren über GPIO angebundenen Relais betätigen (statt Türöffner-Taste an der Innenstation angeschlossen).
Die Lösung funktioniert grundsätzlich mit jedem System, nicht nur FTZ123D12.
Die diversen Einzelpunkte habe ich vor Jahren mal getestet, aber nicht als Gesamtlösung zusammengebaut, da ich mir zwischenzeitlich ein Haus kaufte, bei dem ich einfach eine günstige IP-Sprechstelle einbaute.
PS: Ich verstehe bis heute nicht, warum fast alle Doorberrys Linphone einsetzen. Asterisk hat mit chan_alsa doch selber Zugriff auf die Soundkarte. Noch eleganter ist chan_mobile, wenn man eine Freisprecheinrichtung fürs Auto per Bluetooth ankoppelt - die haben alle eine DSP-Rückkopplungssperre, selbst die Chinateile für 9€. Hier braucht man zwar ggf. einen weiteren GPIO-Pin zum automatischen Entgegennehmen des Anrufs, hat aber eine deutlich bessere, da rückkopplunsfreie Tonqualität.
PS2.: Nimmt man statt Übertragern Micro und Lautsprecher (also quasi Akkustikkoppler), nimmt einen entsprechend plazierten Hall-Sensor für die Klingelerkennung und zwei Hubmagneten fürs Abheben und Auflegen, dürfte das ganze sogar ohne Hardwareeingriff an der Innenstation funktionieren und damit sogar in Mietwohnungen einsetzbar sein...