The Open Video-Intercom System

An Internet-Of-Things / WebRTC challenge


When people get older or disabled domestic IT facilities (Domotics) can support their well-being and contribute to a longer stay at their homes. One of the more relevant functions in this area is the Video-Intercom system, allowing residents to check who is at the door and open the door remotely.

Such systems typically consist of a door-station and an interior station. The interior stations could very well be combined with other functionalities, like a smartphone, tablet, etc. To allow a broad range of hardware and operating systems to be used with little effort they should preferably be web based.

The door-stations are typically dedicated devices. Devices like this are already on the market, but they are either based on the SIP protocol or use proprietary protocols and Codex’s. SIP based devices cannot easily communicate with web based applications, implementing native SIP applications on interior devices is relative complex and SIP based door stations are often quite expensive. Systems with proprietary protocols typically come with their own proprietary interior systems or apps. They are hard to integrate with web-based interior systems.

A typical example of a SIP based door-station is the Mobotix T25i. Examples of systems with proprietary protocols are Panasonic’s VL-V554EXii and Rongtel’s PL960PMiii (notice that the latter device looks nice from a hardware and pricing perspective, but according to testers doesn’t operate properlyiv).

WebRTC could play a perfect role in providing this kind of functionality in an open, web-based, platform independent way. This document describes the functional requirements and the architecture of an open, WebRTC based video intercom door station.

Functional Requirements

The door-station should provide the following functionalities and characteristics:

  • Camera
  • Microphone
  • Speaker
  • Push button (to “ring the bell”)
  • 2 potential-free input contacts (supporting e.g. an external doorbell button and a card reader)
  • 2 relay output contacts (to ring a mechanical bell and unlock a door)
  • Waterproof housing (IP55)
  • More or less vandal-proof
  • Ethernet connection with Power over Ethernet
  • One-way video and two-way audio communications based on WebRTC
  • Reading and writing of IO channels using WebRTC data channels
  • Consumer price € 200-300
  • Reading and writing of IO channels using WebRTC data channels
  • Consumer price € 200-300


The core of the door-station consists of an embedded Linux system (something like a Raspberry PI or BeagleBone Black). The counterpart of the door-station is the interior system. With proper Internet connections the “interior” system could of course be located anywhere in the world. It could be any system with a web browser, using WebRTC and WSP (WebRTC Signaling Protocol v) to connect to the door station. The door-station therefore should implement a web server handling the signaling protocol as well as the WebRTC video/audio streams and data channels. Notice that the door-station does have a camera, microphone and speaker, but does not have a display-screen.

There are two modes of operation:

  • The door station “rings” the interior system. It does so by signaling the call using the WSP protocol to the server hosting the web application of the interior system when the push-button on the door-station is pressed. The WSP address (username@hostname) of the interior system needs to be configured in the door-station.
  • The interior system “rings” the door-station. It does so by signaling the call to the door-station using the WSP protocol. The door-station answers the call automatically. The door-station may optionally restrict access from certain WSP and/or IP addresses.

Once the WebRTC connection is established a command will be sent by the door-station on the WebRTC data channel when an input port is activated. Similarly a relay will be activated when a corresponding command is received by the door-station.

Mobotix T25

Panasonic VL-V554EX

Rongtel PL960PM

PL960PM review by Mark Molteron YouTube in German

WSP (WebRTC Signaling Protocol)