DoorPI / VoIP Door-Intercomstation with Raspberry Pi

S.Y.L.D. (support your local dealer)

Ich war im Conrad und bin mit dem Zeug sofort nach Hause gegangen, da alles da war :stuck_out_tongue:

Ich wohne auf dem Land :0D Hier gibts vielleicht noch gerade ne Glühbirne :0D :0D :0D
Sonst natürlich !

Ich wohne auf dem Land :0D Hier gibts vielleicht noch gerade ne Glühbirne

Dachte es gibt diese Glühbirnen nicht mehr … wurden doch verboten :wink:

Um DoorPi leichter zu installieren, hat uns ein pfiffiger Bash-scripter … Vielen Dank @meigrafd an dieser Stelle … ,ein DoorPi.sh Installskript geschrieben.

Den Beitrag findet ihr hier: DoorPi (VoIP Wechselsprechanlage / Türsprechanlage)

Am besten mit WinSCP dieses Script im Verzeichnis /home/pi anlegen und mit

$ sudo bash DoorPI.sh

starten.

Hinweis: die Default-Konfiguration ist auf GPIO und nicht für das PiFace ausgelegt.

Falls ihr das PiFace verwenden wollt, dann bitte in der doorpi.cfg die InputPins und OutputPins wie folgt anpassen.

Beispiel GPIO:

[InputPins]
11 = call:**613
13 = call:**613
15 = call:**613
;7 = mailto:motom001@gmail.com,DoorPi:OnOpenDoor,The door was opened

[OutputPins]
16 = open_door 0
7 = power supply
18 = is_alive_led

Beispiel PiFace:

[InputPins]
0 = call:**620
1 = call:**621
2 = call:**622
;7 = mailto:motom001@gmail.com,DoorPi:OnOpenDoor,The door was opened

[OutputPins]
0 = open_door 0
1 = power supply
2 = is_alive_led

Falls es dennoch Probleme beim Start von DoorPi geben sollte, dann könnt Ihr in den logfiles in /var/log/doorpi nachsehen woran es liegt.
Falls alles nichts hilft, dann hier oder im Forum Deutsches Raspberry Pi Forum | Die RPi Community unter Thread: DoorPi (VoIP Wechselsprechanlage / Türsprechanlage)
posten.

Super Hermann. Hab morgen schon alle Teile zu Hause. Hoffe das ich dann Abends gleich testen kann :0)

Gesendet von iPhone mit Tapatalk

^^ Hier hin, dann ist es zentral und für jeden erreichbar.

Was mir immer hilft bei der Fehlersuche: Problembeschreibung + cfg Datei + Log-Datei

Und bitte schön mitschreiben wo Du Probleme hattest, dann muss das ins Wiki mit rein…

@motom001
Mega, ich finde es total super, dass du dich damit beschaeftigst!
ich konnte mich bisher nicht mit den Loesungen hier im Forum anfreunden und auch die Startup-Projekte waren am Anfang alle vielversprechend aber gehalten haben sie fast nichts davon…

Ich habe auch mal deinen Beitrag im Raspberryforum inhaliert und muss sagen, dass ich das Gefuehl habe, dass es wirklich was werden koennte. Du reagierst immer sehr freundlich auf Fragen und entwickelst fleißig weiter, so muss das sein.

ich werde mal einen von den Raspis hier nehmen und mich an die Installation wagen.

Meine Anforderung sind gestaffelt

Stufe 1: klingeln und sprechen sollte funktionieren (das scheint ja schon zu funktionieren)
Stufe 2: Bild/Videouebertragung von der PiCam oder Netzwerkkamera
Stufe 3: hier muss ich weiter ausholen.

es muessten 4 PI´s untereinander kommunizieren koennen.
einer als Master, 3 als Client

Grund:

  • das Grundstueck ist mit einem Tor verschlossen, es gibt dann auf dem Grundstueck 3 Eingaenge zu den Wohneinheiten wo jeweils zwischen 1-4 Haushalte sind. Diese muessten alle mit dem Haupttor kommunizieren koennen (Audio/Tor oeffnen,Video nicht zwingend)
  • an den jeweiligen Haustueren sind dann nur 1-4 Klingeltaster
  • eine Unterscheidung ob am Tor oder an der Tuer geklingelt wurde, dass wenn ein Tueroeffner betaetigt wurde, auch der Richtige oeffnet (also am Tor klingelt jemand, ich druecke auf den Oeffner, dann geht auch vorn das Tor auf. Wenn jemand an der Haustuer klingelt, sollte bei dem gleichen Tastendruck zum öffnen, dann die Haustuer oeffnen)
  • evtl. wird ein Tablet in jede Wohnung installiert, welche per WLAN angebunden werden um Bild/Ton und Tueroffner zu uebertragen (vllt. ueber Tasker oder sogar mal ueber eine eigene App)

Das soll kein Anforderungskatalog an dich sein, ich weiß dass es alles freiwillg und in deiner Freizeit umgesetzt wird.
Mich interessiert nur, ob du meinst das umsetzen zu koennen und ob es evlt. dieses Jahr was werden koennte, dann wuerde ich mich an dieses Projekt mit ranhaengen, da ich wie gesagt keine passende Loesung fuer mich gefunden habe, bzw. diese einfach nicht ins Budget passen.

Ich hoffe du verlierst nicht die Lust an diesem Projekt und es passen zum Schluss Hard- und Software zusammen, damit waerst du dann auch glaub ich der Erste…

Danke schon mal fuer die schon fertig gestellten Sachen.

Hallo BeLo,

hat es Dich also auch infiziert … dieses DoorPi ?

Stufe 3: es muessten 4 PI´s untereinander kommunizieren koennen.
einer als Master, 3 als Client

steht für diesen Punkt evtl. IP-Symcon zur Verfügung? Falls ja dann sollte es gehen. Die Pi´s kommunizieren zwar nicht untereinander aber mit IP-Symcon als „übergeordnete Logik“.
Aktuell können schon Variablen in IPS durch DoorPi gesetzt/verändert werden und lesen einer Variable mit anschliessendem Rufaufbau wird momentan umgesetzt (Telefonnummern richten sich nach Anwesenheit · Issue #32 · motom001/DoorPi · GitHub).

Hier ein kleiner Auszug aus der doorpi.cfg (in dieser stehen alle wichtigen Parameter)

[InputPins]
0 = call:**620
1 = call:**621
2 = call:**622
3 = ipsrpc_call_value:26795

Die Sektion [InputPins] beschreibt, was zu tun ist wenn Pin0…3 (PiFace) gedrückt wird. Bei Pin0 ist es die Nummer „**620“, bei PIN1 …, und bei PIN3 wird die IPS-Variable 26795 gelesen und anschliessend die dort hinterlegte Nummer gewählt. Dieses Gimmick ist z.B. interessant, wenn ich nicht zuhause bin und DoorPi automatisch durch IP-Symcon die Klingel auf das Handy umstellen kann.
Im übrigen lassen sich mit dem PiFace schon mal 8 Klingeltaster anschliessen.

Vielleicht könntest Du mal einen kleinen Übersichtsplan Deines Vorhabens einstellen mit Entfernungen etc, … ein Bild sagt mehr als tausend Worte !

dann wuerde ich mich an dieses Projekt mit ranhaengen

Über weitere Unterstützung bei diesem Projekt wird sich motom001 sicherlich freuen :slight_smile:

So … jetzt hab ich schonmal den Raspberry vorbereitet … nur die Türsprechanlage fehlt noch :smiley:

Kann ich das ganze jetzt schon irgendwie testen ???

Die Config habe ich wie folgt angepasst:

[SIP-Phone]
sipphonetyp = pjsua
server = 192.168.1.1
username = 620
password = geheim :0P
realm = fritz.box

[SMTP]
server = securesmtp.t-online.de
port = 587
use_tls = true
need_login = true
username = ips@t-online.de
password = geheim :0P
from = ips@t-online.de

[DTMF]
"#" = out:16,1,0,3
"**633*" = out:7,0
"**66*" = out:7,1
;"**7378278*" = restart
;"**732668*" = reboot

[InputPins]
0 = call:**620
1 = call:**620
2 = call:**620
;7 = mailto:ips@t-online.de,DoorPi:OnOpenDoor,The door was opened

[OutputPins]
0 = open_door 0
1 = power supply
2 = is_alive_led

[DoorPi]
keyboard = autodetect
is_alive_led = 18
dialtone = /home/pi/doorpi/doorpi/media/ShortDialTone.wav
records = /home/pi/doorpi/records/Key-!LastKey!_%Y-%m-%d_%H-%M-%S.wav
record_while_dialing = true

[EVENT_OnStartup]
10 = sleep:1
20 = out:7,1
;30 = mailto:ips@t-online.de,DoorPi:OnStartup,DoorPi up

[EVENT_OnShutdown]
;10 = mailto:ips@t-online.de,DoorPi:OnShutdown,DoorPi down

[AdminNumbers]
**620 = active

Die Installation habe ich auch nochmal beschrieben. Wäre cool wenn ihr mir sagt, falls ich was vergessen habe … dann kann ich es noch nachtragen. Ich habe den Raspberry Pi B und das PiFace !

http://www.ip-symcon.de/forum/threads/26739-DoorPI-VoIP-Door-Intercomstation-with-Raspberry-Pi?p=245613#post245613

Hallo wuppi83,

auf dem ersten Blick fällt mir in Deiner config auf, daß Du Dich selbst anrufen willst … das geht natürlich nicht.
Laut Deiner config ist die TFE DoorPi über die interne Nummer **620 konfiguriert.

[SIP-Phone]
sipphonetyp = pjsua
server = 192.168.1.1
username = 620
password = geheim :0P
realm = fritz.box

Hier bitte mal in der Fritzbox nachsehen, ob das auch so ist!
Siehe Link hierzu: (IP-Telefon an FRITZ!Box anmelden und einrichten | FRITZ!Box 7490 | AVM Deutschland)

In folgender Sektion DTMF bitte

"#" = out:16,1,0,3

ändern in

"#" = out:0,1,0,3

Da Du ein PiFace hast werden die Inputs und Outputs von 0 beginnend bis 7 gezählt.

in der Sektion:

[InputPins]
0 = call:**620
1 = call:**620
2 = call:**620

Hier darf nicht die gleiche Telefonnummer wie bei [SIP-Phone] stehen. Hier z.B: eine interne ISDN-Nr (**50) oder ein weiteres SIP-Phone (**621) eintragen.

Nach Änderung den Service DoorPi mit:

sudo service doorpi restart

neu starten

Unter /var/log/doorpi findest Du die Logfiles. Diese bitte mal auf Fehlermeldungen überprüfen. Meistens kommt man dann selbst darauf, woran es liegt das DoorPi nicht startet.

Falls alles nichts hilft dann bitte die logs und die cfg unter folgendem Link posten:

Issues · motom001/DoorPi · GitHub
^^ Hier hin, dann ist es zentral und für jeden erreichbar.

Achja bevor ich´s vergesse. Für den Testaufbau ohne verbundene Türsprechstelle mit Klingeltasten und Lautsprecher/Micro nehme ich bis jetzt ein USB-Headset als Ersatz :smiley:

BG,
Hermann

Danke erst mal für die Hilfe … hab gleich alles geändert. Wie kann ich jetzt aber den Taster simulieren … das mich die Türsprechanlage anruft.

In der Logfile waren keine Fehler zu finden

2015-01-25 17:35:32,916 [TRACE]         [conf.config_object] get_int for key bo$
2015-01-25 17:35:32,922 [TRACE]         [conf.config_object] get_string for key$
2015-01-25 17:35:32,926 [TRACE]         [conf.config_object] section 'keyboard'$
2015-01-25 17:35:32,929 [TRACE]         [conf.config_object] return default '
2015-01-25 17:35:32,932 [TRACE]         [conf.config_object] get_keys for secti$
2015-01-25 17:35:32,935 [TRACE]         [conf.config_object] get_keys for secti$
2015-01-25 17:35:32,939 [TRACE]         [keyboard.KeyboardInterface] autodetect
2015-01-25 17:35:32,942 [TRACE]         [keyboard.KeyboardInterface] load_piface
2015-01-25 17:35:32,948 [DEBUG]         [keyboard.from_piface] keyboard.from_pi$
2015-01-25 17:35:33,065 [DEBUG]         [keyboard.AbstractBaseClass] keyboard.A$
2015-01-25 17:35:33,071 [DEBUG]         [keyboard.from_piface] __init__(input_p$
2015-01-25 17:35:33,074 [TRACE]         [action.handler] register Event OnKeyPr$
2015-01-25 17:35:33,078 [DEBUG]         [action.handler] event_source keyboard.$
2015-01-25 17:35:33,081 [TRACE]         [action.handler] added event_name OnKey$
2015-01-25 17:35:33,086 [DEBUG]         [keyboard.from_piface] destroy

Am Piface sind 4 Taster:

Taster 0 (InputPin0) ist der nächstgelegene neben den USB-ports am Raspberry B+, dann kommt Taster 1 (InputPin1) usw.
Drück doch mal drauf !

Hatte ich schon probiert :0( nix.
Hab ich vielleicht was vergessen ?! Kannst mal schauen ob ich was vergessen hab … Hatte oben nen Link gehabt was ich gemacht habe.

Gesendet von iPhone mit Tapatalk

Schick mir bitte eine PM mit Deinen kompletten logfiles aus /var/log/doorpi. Keine Angst die Passwörter sind ge********.
sonst wird der Thread zu aufgeblasen hier
Falls nicht sowieso schon verwendet nimm das Programm WinSCP, um auf den Raspi zuzugreifen. Damit lassen sich die Logfiles leichter runterladen.:wink:

BG,
Hermann

Hallo zusammen,

hänge nochmal das DoorPi.sh Installatiosnskript hier rein … Siehe Zip-file im Anhang!

Bitte bei der Installation den Menüpunkt [F]imware update nicht durchführen !
(sonst gibt es bzgl. des neu geladenen Kernels Probleme beim Laden des SPI Treibers !)

Dieses Problem hatten wir eben bei wuppi83. Alte Firmware lässt sich mit:
rpi-update f74b92120e0d469fc5c2dc85b2b5718d877e1cbb
einspielen.

DoorPI.zip (2.56 KB)

Da Hermann hier so fleißig Support-Arbeit leistet, bleibt mir Zeit für die Entwicklung. Perfekt…

Jetzt werde ich aber langsam rot :slight_smile:

Ich denke, dass ist die Hauptaufgabe von DoorPi, die sollte zu 100% funktionieren. Probleme gibt es mit der Theard-Verwaltung von pjsua, die ich aktuell in Arbeit habe. Der passende Commit wird ca. Ende der Woche erscheinen.
Das behindert jedoch mehr das Beenden vom DoorPi und nicht den Betrieb.

Ist in Arbeit und als Ziel für Mitte des Jahres angepeilt. Hermann ist im Kontakt mit dem Hersteller von liblinphone.
Mehr dazu unter: sipphone liblinphone einbinden · Issue #18 · motom001/DoorPi · GitHub

Na sowas mag ich ja - Leute die sich Gedanken machen und voraus planen. :stuck_out_tongue:
Kurz zu meiner Umgebung. Wir haben eine Zufahrt zum Haus aktuell ohne Tor. Zusätzlich haben wir unsere Haustür.
Aktuell gibt es nur einen DoorPi, der an der Haustür befestigt ist. Zukünftig wird es ein Hoftor geben, dass auch eine Klingelanlage mit Tür- und Toröffner bekommt.
Ich habe bei der Entwicklung von DoorPi bewusst auf eine Kommunikation mehrerer DoorPi Stationen untereinander verzichtet, da ich darin keinen Vorteil sehe. Beide Systeme (Haustür und Hoftor) arbeiten vollkommen autark und haben als erste gemeinsame Schnittstelle den SIP-Server.
Schon jetzt ist in meinem SIP-Server (Fritzbox) eine Nummer pro DoorPi eingerichtet (Haustür + Teststellung). Darüber kann ich:

  • am Telefon sehen wo es klingelt
  • den entsprechenden DoorPi gezielt anrufen
  • während eines Gespräches wird das DTMF-Signal NUR zu dem DoorPi übertragen, mit dem die Gesprächsverbindung aufgebaut ist.

Wenn ich also mit meiner Teststellung experimentiere und auf „#“ drücke will ich natürlich nicht, dass meine Haustür aufspringt.

Übertragen auf Deine Anforderung:
Warum nicht 3 autarke DoorPi’s aufbauen, die sich alle einen SIP-Server teilen, jedoch unterschiedliche (interne) Nummern zugewiesen bekommen haben?
Du hättest ein DoorPi am Hoftor der Klingelknöpfe für alle Haushalte beinhaltet (sagen wir einfach mal 10). Dort ist für alle 10 Haushalte hinterlegt, wo es klingeln soll, wenn eine der Klingeln gedrückt wird.
Zusätzlich würde es an jedem Haus einen DoorPi geben der zwischen 1-4 Klingeltaster hat. Der DoorPi kennt nur die dortigen Haushalte.
Somit könnte Hof-DoorPi mit jedem Haushalt kommunizieren und wenn während des Gespräches der Türöffner gedrückt wird, würde auch nur das Hoftor aufgehen.
Jeder Haus-DoorPi kann wiederrum mit den Haushalten des Hauses kommunizieren und nur die Haustür des entsprechenden Hauses öffnen.
Ich sehe da aber keine Notwendigkeit und keine Vorteile eine SPOF einzubauen in dem man einem DoorPi zur Zentrale erklärt und die anderen direkt abhängig macht.

Habe ich Deine Anforderung richtig verstanden und verständlich meinen Lösungsvorschlag erklärt?

Richtig verstanden, Perfekt erklaert und ueberzeugt…
Ich war wohl noch etwas verblendet, von normalen Tuersprechanlagen (ohne SIP) dort ist die Sache leider nicht ganz so „einfach“…

Trotzdem hab ich noch meine Bedenken, ich bin dann wieder abhaengig von der Fritzbox (austausch,defekt,… generell wieder ein Glied mehr in der Kette).
Waere es nicht gut dass einer der RPis die SIP-Aufgabe uebernimmt? Von mir aus auch extra einer, weil ich diesen mehr vertraue und dieser auch leichter und guenestiger auszutauschen wäre als eine Fritzbox.
Dann koennte ich auch ein extra Netzwerk allein fuer die Sprechanlage aufbauen. Habe da noch meine Sorgen, dass ja alle Benutzer an meinem Netzwerk oder Dect haengen muessen, oder sehe ich das falsch.

Edit: mir ist grad eingefallen, dass ich natuerlich auch eine extra FritzBox nur fuer die Sprechanlage nehmen koennte, dann kann ich erstmal auch direkt mit Dect Handys arbeiten und SIP-Clients (Soft- & Hardware) waere ja eh mit drin

Edit2: nochmal zu der App Sache (evtl. Tablett an die Wand), die App Oberflaeche von Elcom sieht sehr ansprechend aus. Ich denke das sollten auch die Senioren hier auf dem Hof verstehen koennen. (kannst ja mal reinschauen, falls du es nicht sowieso schon gemacht hast).
Theoretisch ist das doch mit einer HTML Seite loesbar oder? Befehle von so einer HTML-Seite zum RPi sind moeglich?

Die finde ich auch gut !!

Ich finde die Videofon App von Elcom auch gut und wollte sie mal mit DoorPi testen. Ich kann mich zwar bei der Fritzbox als SIP Teilnehmer registrieren und der Button wird grün in der App.
Klingel ich nun an der DoorPi dann geht Videofon zwar ran, beendet aber im gleichen Augenblick das Gespräch.

Geht es euch auch so oder habe ich nur einen Konfigurationsfehler.
Könnte mir aber auch eine „Verriegelung“ der App zu fremden Komponenten vorstellen …

Können wir heute abend auch testen ;0)