Als ich mich wegen Türsprechanlagen umgesehen hatte, war für mich eines der Kriterien, dass ich das Kamerabild auf den Fritz!Fon Geräten (C4/C5/C6) sehen können muss und ich darüber die Haustüre bedienen kann. Bei der Recherche bin ich dann über die Dahua VTO2000A gestoßen, welche die Möglichkeit bietet, via SIP die Gespräche zu führen und einen Video-Stream abzurufen. Das Problem war jedoch, dass die Dahua-Anlage bei Start eines Gesprächs ein INVITE signal zur Fritzbox sendet und diese dann mit “183 Session Progress” antwortet. Leider kommt die Dahua damit nicht klar, da diese “180 Ringing” erwartet. Somit beendet die VTO das Gespräch. Zudem versteht die Fritzbox den Stream nicht. Um das zu beheben, habe ich einen Raspberry zwischen rein gesetzt.
Was brauchst du?
- Fritz!Box mit Türsprechfunktionalität und DECT
- Fritz!Fon C4 / Fritz!Fon C5 /C6
- Raspberry (oder einen anderen Linux-Rechner, z.b. VM)
- Dahua VTO2000A
Vorbereitung des Raspberry
Los geht’s mit dem Setup eines Raspberry für meine Zwecke, der mit einem Debian in form von Rasbian bestückt wird. Nicht vergessen: Beim flashen direkt eine Datei namens “ssh.txt” in der boot Partition anlegen, damit der SSH-Dienst enabled wird. Dann das gute Stück starten und erst mal via SSH mit dem Nutzer “pi” einloggen und das Passwort ändern:
|
|
Weiter gehts mit Updates:
|
|
Nun gehts erstmal an die grundlegende Konfiguration - ich will beispielsweise einen anderen Hostname. Dazu geht man in “Advanced Options” und dort auf “Hostname”. Notiz lesen und bestätigen. Bei mir “sipserver”. Dann mittels der Tab-Taste auf ok wechseln. Dann ins Hauptmenü zurückkehren und dort “Expand Filesystem” wählen. Da dann bei der Nachfrage den Raspberry mal neu starten lassen.
Konfiguration der Fritz!Box
Zuerst Telefoniegerät anlegen:
- Logge dich in deine Fritzbox ein (meist via fritz.box) und wechsel auf die Expertenansicht (links unten) falls nicht schon geschehen.
- Dann wähle “Telefonie” -> “Telefoniegeräte” -> “Neues Gerät einrichten”.
- Wähle dann “Türsprechanlage” und im nächsten Bildschirm “LAN / WLAN (IP-Türsprechanlage)” zusammen mit einem sprechenden Namen.
- Dann vergib einen Nutzernamen & Passwort.
- Im nächsten Bildschirm werden “Klingeltasten” festgeleget. Diese dienen dem Anruf der Türsprechanlage. Beschreibe diese mit “Klingel” und der Nummer 23.
- Übernimm das ganze in deine Konfiguration
Dann Telefoniegerät editieren:
- Logge dich in deine Fritzbox ein (meist via fritz.box) und wechsel auf die Expertenansicht (links unten) falls nicht schon geschehen.
- Dann wähle “Telefonie” -> “Telefoniegeräte” und wähle die Türsprechanlage aus.
- Vergib dort für den Türöffner eine Zahl gefolgt von der Raute, also beispielsweise “9#”
- Trage im “Live-Bild” die Adresse des Raspberry PI mit port 5050 gefolgt von
/snapshot.jpg
ein, also z.B.:192.168.133.7:5050/snapshot.jpg
- Speichere das ganze
Installation von Asterisk
Logge dich wieder in den Raspberry ein und installiere asterisk - hier reicht die Version aus den Debian repositories:
|
|
Konfiguration von Asterisk
Nun muss das Asterisk konfiguriert werden:
|
|
Das öffnet einen editor für die sip.conf in die der folgende Inhalt muss. Dabei müssen folgende Felder ersetzt werden:
[SipServerIP]
= IP des Raspberry Pi, also beispielsweise192.168.133.7
[UsernameInFritzBox]
= Nutzername der Türsprechanlage in der Fritzbox wie eben vergeben[PasswordInFritzBox]
= Password der Türsprechanlage in der Fritzbox wie eben vergeben[IPofFritzBox]
= IP der Fritzbox[PasswordForVTO]
= Passwort für die Anmeldung der VTO2000A an Asterisk
|
|
Dann Speichern (STRG+O um zu speichern, dann Enter, dann STRG+X um zu verlassen)
Nächste Datei:
|
|
Ich habe ein “Answer” schon eingefügt, womit Asterisk eine Wartemelodie aussen abspielt. Wenn man das nicht will, dann die Zeile mit “Answer()” löschen.
|
|
Dann Speichern (STRG+O um zu speichern, dann Enter, dann STRG+X um zu verlassen)
Nun muss man die geänderten Dateien an Asterisk übergeben. Dazu öffnet man die Asterisk Konsole:
|
|
Und gibt Bescheid dass man mal alles frisch laden kann
|
|
Dort sollte dann nun sowas wie “1 SIP registrations.” am Ende stehen was sich auf die Zeile zuvor bezieht und eine erfolgreiche Registrierung der Fritz!Box bedeutet. Via “exit
” die Kommandozeile wieder verlassen
Installation des Kamera-Streamings
Für das Streaming der Kamera-Bilder brauchen wir einen Übersetzer, da die VTO sehr langsam snapshots macht, die Fritzbox aber jpg Bilder erwartet. Dazu brauchen wir einen Webserver und einen Video-encodierer:
|
|
Konfiguration des Kamera-Streamers
Für das Streamen der Kamera füge folgende Zeile in die /etc/fstab ein um ein Ramdisk zu erzeugen. Das wird genutzt um die Bilder der VTO-Kamera im Hauptspeicher statt auf der SD-Karte abzulegen:
|
|
Dann fügen wir einen Service hinzu:
|
|
Den wir mit folgenden Daten füllen, wobei wieder einige Felder ersetzt werden müssen:
[PasswordOfVtoAdmin]
= Passwort des Nutzers “admin” auf der VTO[IPofVTO]
= IP-Adresse der VTO
|
|
Nun noch systemd bescheid geben, dass es einen neuen Service gibt, der bei Systemstart geladen werden soll:
|
|
Konfiguration des Webservers
Ich habe mich für nginx als Webserver entschieden da ich diesen gut kenne und er relativ wenig Ressourcen braucht.
Editiere die /etc/nginx/sites-enabled/default
sodass diese wie folgt aussieht:
|
|
Einmal kurz checken ob die Syntax ok ist:
|
|
Was etwa so aussehen sollte:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Dann wollen wir nginx beim Neustart auch mitstarten lassen:
|
|
An dieser Stelle mal einmal neu starten:
|
|
Nach dem Neustart wieder via SSH einloggen und nachsehen ob ein tmpfs gemounted ist:
|
|
das sollte in etwa so aussehen:
tmpfs on /mnt/ramdisk type tmpfs (rw,nosuid,nodev,relatime,size=51200k)
Wenn man nun dort hinein sieht:
|
|
Sollte es etwa so aussehen:
|
|
Und wenn man nun die IP des raspberry mit port 5050
und suffix /snapshot.jpg
, also z.b. 192.168.133.7:5050/snapshot.jpg
, aufruft, so sollte das Kamerabild zu sehen sein.
Soweit so gut. Jetzt konfigurieren wir mal noch die VTO.
Konfiguration der Türsprechanlage
Logge dich in deine Türsprechanlage ein (am besten via Internet Explorer, dann klappt meistens alles was man sich so wünscht ;) ).
Wichtig: Ich verwende hier die Software Version (Firmware) “2018-06-06 V4.000.0000000.1.R
” und die MCU Version “2017-05-15 V3
”.
Local Setting
Basic
Los gehts mit “Local Setting”->“Basic”, wo ich bei den Device Properties folgende Einstellungen vorgenommen habe:
- Device Type: Small Apartment
- Building No.: 0
- Unit No.: 0
- VTO No.: 8001
- Call Centre No: 42
- Call Centre Time: 00:00:00 - 23:59:59
Bei den Events habe ich alles ausgeschalten und anschließend mein Facade Layout entsprechend der Module eingestellt.
Video&Audio
Hier habe ich folgende Settings: Main Stream:
- Video Format: WVGA
- Format Rate: 25
- Bitrate Rate: 2Mbps
Conditions:
- Scene Mode: Automatic
- Day/Night Mode: Automatic
- Backlight Mode: Disabled
- Sensor Sesitivity: 23
- Light Mode: Close
Sub Stream:
- Video Format: CIF
- Format Rate: 25
- Bitrate Rate: 256Kbps
Picture:
- Brightness: 52
- Contrast: 45
- Hue: 51
- Saturation: 48
- Gamma: 95
- Mirror: Off
- Flip: Off
Audio Control:
- Voice Prompt Sound: Disabled
- Ringback Sound: Disabled
- Unlock Sound: Disabled
- Tampered Alarm Sound: Enabled
- Leave Message Notification Sound: Disabled
Volume Control:
- Mic Volume: 90
- Beep Volume: 48
Access Control
Entsprechend der eigenen Wünsche, für diesen Artikel nicht relevant
System
Entsprechend der eigenen Wünsche, für diesen Artikel nicht relevant - ich rate aber die Zeit gegen einen NTP-Server zu syncen.
Household Setting
Zugangsberechtigungen etc - für diesen Artikel nicht relevant. Jedoch relevant: Unter Room No. Management muss es einen Raum mit der Nummer 101 geben. Hintergrund: Dieser ist weiter oben in der extensions.conf verdrahtet, was den Anruf auf der Fritzbox auslöst.
Wenn der Raum 101 angelegt ist, dann klicke nochmal auf “Local Setting” und Klicke im “Facade Layout” auf die Klingel. Dann wähle 101 als Raum aus, sodass es am Ende so aussieht:
Network Setting
Basic (Network Setting)
Ich rate hier dazu die IP fix zu vergeben und P2P auszuschalten (zumindest sende ich meine Daten nicht so gerne nach China - wer die iDMSS App nutzen will muss das hier an lassen).
FTP (Network Setting)
Für diesen Artikel nicht relevant
SIP Server (Network Setting)
Hier kommt endlich die Registrierung am VoIP Server Asterisk:
- SIP Server [ ] Enable (haken raus!)
- Server Type: Asterisk
- IP Addr.: IP des Asterisk, also 192.168.133.7 von meinem Beispiel oben
- Port: 5060
- Username: Sollte 8001 sein, da bei Local Setting->Basic so konfiguriert
- Password: Passwort für den Nutzer im Asterisk, vorhin als [PasswordForVTO] bezeichnet
- SIP Domain: asterisk
- SIP Server Username: Leer lassen
- SIP Server Password: Leer lassen
Dann “Save” um zu speichern, was evtl. einen reboot auslöst. Nun sollte sich die VTO2000A auf dem Asterisk anmelden. Probiere einfach mal aus, ob du schon durchklingeln kannst?