Using IP Signaling to
integrate IP Cameras with Alarm Systems
Sophisticated CCTV cameras
and transmission equipment were in use long before many of us had even heard of
the Internet. Manufacturers were quick to update their products to take full
advantage of IP, however, the price tag of such systems remains well out of the
reach of the vast majority of both residential and small commercial Customers.
So how can the alarm industry provide video verification services to this group
of Customers at a more realistic cost?
The answer lies in the use
of IP cameras. For alarm installers, their arrival is akin to the introduction
of PIR detectors more than two decades ago and it won’t be long before it
becomes routine to fit one in each protected area as one might do now with a
PIR.
So what are our options
for integrating IP cameras so that they become an integral part of a
security alarm system?
Most cameras come with
some form of built-in motion detection, however, the unpredictability of this
technology prevents it from being used to trigger an alarm panel into calling a
Monitoring Center. Using motion detection would also require that there be some
way to arm and disarm the cameras so that they do not send images when people
are legitimately moving around the protected premises. Due to the familiarity
and simplicity of arming and disarming an alarm panel, one option is to have the
panel trigger cameras only when it is armed. This way, images are only sent to
the server in the event of an alarm activation.
This can be done by
connecting a cable from the panel to the trigger input of the camera if it has
one. The preferred method however, is to trigger and control the camera via
software commands from the Monitoring Center server. The more expensive
IP cameras provide a full range of software commands that allow control of pan, tilt,
zoom, pre and post alarm triggering and other common features. Whilst lower
cost cameras do not generally offer these features, the majority of them do
support jpeg snapshots at various resolutions which provides the industry with a
starting point for mainstream video verification.
Overview of Vendor
Neutral Video Verification
The snapshot feature allows
an installer to fit a camera from manufacturer X alongside one from
manufacturer Y and Z. This provides great flexibility for the installer as they
are not tied to a specific camera manufacturer. It is also ideal for the
Monitoring Center as they are not reliant on any proprietary hardware or specific
server software.
In preparation for viewing
and recording images from the protected premises, the Monitoring Platform
database stores various camera related parameters alongside well known alarm
parameters such as event definitions and zone lists.
Basic camera parameters
determine what type of alarm events and which zone numbers should trigger the
recording of individual cameras. They also specify the total number of images to
be recorded and the time interval between them.
Each IP camera requires a slightly
different software command to trigger it, so the Monitoring Platform must support
the manual entry of custom commands in order to support any
brand of camera used by subscribers.
Every second counts in the
triggering and recording of images from IP cameras. It
takes a long time to send an alarm signal using traditional protocols and starting a recording
10-15 seconds after an alarm event would almost certainly mean losing some of
the most important footage.
There are different ways
to overcome this depending on the available features of the alarm panel, the IP
alarm device and the camera. A high spec camera would use a “pre-alarm” feature
where it might send the server ten seconds of footage prior to the alarm and
twenty seconds after it. Lower spec cameras would provide a snapshot command
facility which can be triggered by the use of panel outputs and IP device
inputs as already described.
The Snapshot Command in
Action
As an example, we will say
that Mr. Smith has an alarm system, an IP alarm transmitter and an IP camera
installed at his home. The transmitter and camera are plugged into his router
and connected via the internet to the Video Monitoring Platform.
His account number is 1234 and he has requested that 9 snapshot images be
recorded at 2 second intervals in the event of an alarm. This information is checked every time an
alarm signal is received. Here is the data that might be stored for Mr. Smith:
Account Number: 1234
Number of Snapshots: 9
Snapshot Interval: 2
Zones That Trigger: 2,3,4
Camera IP and Port: http://mrsmith.dyndns.org:800
Snapshot Command: /CamImage.jpg?UserName=abc&PassWord=xyz
When an alarm signal from
account code 1234 is received, the Monitoring Platform checks the database to find
that Mr. Smith has cameras and that images should be recorded on the server if
the alarm was from zones 2,3 or 4 (zones 5,6,7 and 8 might be used to trigger a
second camera). The software concatenates the IP address of the camera and the
snapshot command together so that the following command is used to obtain images..
http://mrsmith.dyndns.org:800/CamImage.jpg?UserName=abc&PassWord=xyz
The end result is that
jpeg images are written onto the hard drive of the monitoring server ready for
further analysis by a Central Station operator.
Now let’s break down the
snapshot command and consider the prerequisites of Mr. Smith’s network and
camera setup in order for it to work correctly.
Firstly, you will notice
that http://mrsmith.dyndns.org is used instead of an IP address. This tells us
that Mr. Smith does not have a fixed IP address allocated to him by his
internet service provider and that he has registered something called a dynamic
domain name. Put simply, this is a method of keeping a domain name linked to a
changing IP address. Typically, when a user connects to the Internet, the
user's ISP assigns an unused IP address from a pool of IP addresses, and this
address is used only for the duration of that specific connection. A dynamic
DNS service provider uses a special program that runs on the user's computer
(some IP cameras also support this), contacting the DNS service each time the
IP address provided by the ISP changes and subsequently updating the DNS
database to reflect the change. In this way, even though a domain name's IP
address will change often, we do not have to know the changed IP address in
order to connect with Mr. Smith’s camera.
The :800 in the command lets
us know that Mr. Smith’s router has been setup with port forwarding and that
port 800 points to his camera. Generally
speaking there is no way to get to Mr. Smith’s camera without port forwarding.
Each camera manufacturer
has their own set of software commands for controlling cameras and the /CamImage.jpg?
part of our example snapshot command is just one such variation.
Most snapshot commands contain
a question mark and this tells the camera that a number of parameters will
follow. These are normally used to set the resolution and size of the
image and to provide security credentials.