Javascript Menu by Deluxe-Menu.com

iCatcher Help

Learn how to set up and use iCatcher's features to their full potential.

read more... File download area

Download all the iCatcher software products, including legacy versions.

read more... Wildlife picture gallery

i-Catcher Wildlife captures fantastic scenes from nature. Have a look at some of the best.

read more... Capture equipment

Find out about suitable equipment for use with iCatcher, from cameras to lighting, and more.

read more... CCTV Shop

We have an online shop where you can buy video and capture hardware, as well as iCatcher bundles at discounted price.

read more...
Cameras - Systems - Accessories - The i-Catcher CCTV Shop offering greated prices and technical support
Try iCatcher Console free for 21 Days!
Buy iCatcher Console from £139.95

iCatcher is an open platform that allows sophisticated integration with other systems via the HTTP API SDK detailed below. To make use of these facilities the built-in web server must be enabled. The user permissions system will apply to each of these calls, and will need to be honoured in any application or web page that makes use of them.

Note that some calls are designed to be used in an embedded environment, e.g. URLs loaded from a JavaScript function and such have the option to return "No Content", a special HTTP response indicating that the request was successfully processed but no data is available by return.

The HTTP API SDK also provides calls for accessing certain data in XML format for use by applications. Most web browsers employ a security model that will prohibit reading and/or processing XML data asynchronously from another web server (i.e. the Console web server). These XML functions will only be usable by applications or processing environments with a less restrictive security model.

Contents

Live views

JPEG images

/image.jpg

Individual full JPEG images.

ParameterValueDescription
feedfeedid/nameThe ID or name of the requested feed. The ID takes priority.
width/height...Width and Height of the image. If not set, the original image size is used.
If just one is given, the other is adjusted to keep the aspect ratio.
quality1 to 100JPEG quality level. If not set or set to 0, a default of 75 is used.
factor-3 to 3Scaling factor of the image (current size x 2 ^ factor).
scale...Scaling factor of the image (current size x scale).
noupsample0 or 1If this is set to 1, then iCatcher will not increase the size of the frame beyond its native size.

If the quality, width and height are not specified, then the image will be sent using the native size and quality.

Streaming video

/video.mjpg

Multipart MIME Motion JPEG video stream.

ParameterValueDescription
feedfeedid/nameThe ID or name of the requested feed. The ID takes priority.
width/height...Width and Height of the image stream. If not set or set to 0, the original image size is used.
If just one is given, the other is adjusted to keep the aspect ratio.
quality1 to 100JPEG quality level. If not set or set to 0, a default of 75 is used.
noupsample0 or 1If this is set to 1, then iCatcher will not increase the size of the frame beyond its native size.

If the quality, width and height are not specified or set to 0, then the image will be sent using the native size and quality.

/video.ipeg

iPEG video stream.

ParameterValueDescription
feedfeedid/nameThe ID or name of the requested feed. The ID takes priority.
width/height...Width and Height of the image stream. If not set or set to 0, the original image size is used.
If just one is given, the other is adjusted to keep the aspect ratio.
quality1 (Lowest)
2 (Medium)
3 (Highest iPEG)
4 (Medium full frame)
5 (Highest full frame)
6 to 100 (Mapped equally to 1 to 5)
JPEG quality level. If not set or set to 0, the highest iPEG quality (3) is used.
noupsample0 or 1If this is set to 1, then iCatcher will not increase the size of the frame beyond its native size.

If the quality, width and height are not specified or set to 0, then the image will be sent using the native size and the highest iPEG quality (3).

/video.h264

H.264 video stream.

ParameterValueDescription
feedfeedid/nameThe ID or name of the requested feed. The ID takes priority.
fallbackmjpg
ipeg
Fallback stream type. If this parameter is specified and the stream does not support H.264 then it will redirect to the specified stream type. If it's not set then an error will be returned.

These streams can not be changed using /setstreamparams.cgi.

/setstreamparams.cgi

Change the parameters of an existing video stream.

ParameterValueDescription
idstreamidThe ID of the Motion JPEG stream to change.
width/height...New Width and Height of the image stream. If not set or set to 0, the original image size is used.
If just one is given, the other is adjusted to keep the aspect ratio.
quality0 to 100New JPEG quality level. If not set or set to 0, a default of 75 is used.
For iPEG streams, the quality values above apply.
noupsample0 or 1If this is set to 1, then iCatcher will not increase the size of the frame beyond its native size.
slot1 to slotNfeedidAllows iCatcher to send multiple feeds out on a single Motion JPEG stream. Any unspecified or empty slots will be deleted and you MUST specify slot1 otherwise it will ignore the rest.
doubleslot0 to 16Any image sent out on this slot will be doubled in size relative to to width/height and subject to the noupsample parameter. Set this to 0 for no slot to be increased.

If the quality, width and height are not specified or set to 0, then the image will be sent using the native size and quality.

H.264 video streams can not be changed using this API.

Live view page

/ and /index.htm

ParameterValueDescription
feedfeedname/idThe name or ID of the requested feed. The name takes priority.
mode0 (MJPEG Java applet)
1 (JavaScript)
Mode used to view the live stream from the Console.
If the web browser won't display Java applets, this is forced to JavaScript mode.
quality0 (Highest)
to
4 (Lowest)
The image quality to view. The lower the quality, the less bandwidth will be used.

/simple.htm

ParameterValueDescription
feedfeedname/idThe name or ID of the requested feed. The name takes priority.
quality1 to 100JPEG quality level. If not set or set to 0, a default of 75 is used.
sourcewidth/sourceheight...Force a fixed source width and height of the image to request from the server. If not set, the image display size is used.

This page is designed to be embedded in an IFrame with code similar to the following:
<iframe name="live" src="http://ip.ad.dre.ss/simple.htm?feed=local" width="320" height="240" frameborder="0"></iframe>
The view will resize to fit the entire iframe and the borders are included in the size if they are visible.

Playback

Playback page

/playback/ and /playback/index.htm

ParameterValueDescription
feedfeedname/idThe name or ID of the requested feed. The name takes priority.
datedateDate for the requested playback session.
year/month/day...The individual year, month, and day for the requested playback session.
timetimeTime for the requested playback session.
hour/minute...The individual hour, and minute for the requested playback session.
mode0 (MJPEG Java applet)
1 (JavaScript)
Mode used to view/control the playback stream from the Console.
If the web browser won't display Java applets, this is forced to JavaScript mode.

Information

Feed lists

/feedlist.xml, /feedlist.json

These URLs will return a list of feeds that the user has permission to access, and optionally include stopped feeds.
Both lists include the feed ID associated name and the PTZ capabilities.

ParameterValueDescription
showstoppedIf this parameter is included, all stopped feeds will be shown in the list.
groupgroupidIf this parameter is included, only feeds that are member of the group will be included.

Use of the old feedlist.txt and feedlist.js are deprecated and for backwards compatibility only.

The XML schema uses the namespace http://schemas.icode.co.uk/icatcher/feeds/2.

Groups

/groups.xml, /groups.json

These URLs will return a list of groups and optionally the contents that the user has permission to access.

ParameterValueDescription
includecontentsIf this parameter is included, the contents (feeds and I/O devices) will be included in the output.

The XML schema uses the namespace http://schemas.icode.co.uk/icatcher/groups/1.

Reference image

/reference.jpg

ParameterValueDescription
feedfeedid/nameThe ID or name of the requested feed. The ID takes priority.
width/height...Width and Height of the image. If not set, the original image size is used.
quality1 to 100JPEG quality level. If not set or set to 0, a default of 75 is used.
fallbackliveIf this parameter is included, and no reference image is available, the current live image will be returned.

If the quality, width and height are not specified, then the image will be sent using the original size and quality.

Live view URL

/liveurl.htm

Performs an HTTP redirect to the cameras live view URL if configured, or the built in web view for the given feed.
All access permissions still take effect.

ParameterValueDescription
feedfeedid/nameThe ID or name of the requested feed. The ID takes priority.

Motion map

/motionmap.jpg

Returns the motion map image in JPEG format
All access permissions still take effect.

ParameterValueDescription
feedfeedidThe ID of the requested feed.
lower/upper0 to 100The lower and upper bounds for the motion map data.
If these parameters are not specified, the full range of 0 to 100 are included.
includebackgroundIf this parameter is included, the current live image will be drawn behind the motion map data.

Information stream

/infostream.cgi

Returns a continuous stream of information/events occurring on the system.
Each entry is CrLf separated and consists of a category followed by a number of comma separated values specific to each category. Each value will be surrounded by double quotes if it contains commas, spaces or double quotes.
Permission to view feeds is required but information for all feeds and devices is included.

CategoryValuesDescription
motionfeedid,start/stop/triggerMotion has started or stopped on the specified feed or a motion trigger has occurred.
iodevicedeviceid,set/changed,value,displayvalueAn I/O device has changed state or been set by iCatcher Console.
keepaliveNo valuesSent every 5 seconds on an inactive stream to keep the connection alive.

This resource returns data of the form:

motion: {6C9040F2-1FFF-4E43-93D7-4DE81C11F711},start
motion: {6C9040F2-1FFF-4E43-93D7-4DE81C11F711},end
iodevice: {C60C69D7-3D98-4DF5-8D7C-26BAE2CCDC04},change,True,True
motion: {C1E7A1BC-3BF6-4411-9171-CA39E4AAD0F6},start
motion: {C1E7A1BC-3BF6-4411-9171-CA39E4AAD0F6},end
motion: {6C9040F2-1FFF-4E43-93D7-4DE81C11F711},start
motion: {6C9040F2-1FFF-4E43-93D7-4DE81C11F711},trigger
motion: {6C9040F2-1FFF-4E43-93D7-4DE81C11F711},end
motion: {6C9040F2-1FFF-4E43-93D7-4DE81C11F711},start
motion: {92917E16-8862-42EB-ACA3-450F776AD926},start
iodevice: {C60C69D7-3D98-4DF5-8D7C-26BAE2CCDC04},set,True,True
keepalive:
motion: {92917E16-8862-42EB-ACA3-450F776AD926},end
motion: {6C9040F2-1FFF-4E43-93D7-4DE81C11F711},end
iodevice: {C60C69D7-3D98-4DF5-8D7C-26BAE2CCDC04},set,False,False
keepalive:

PTZ

PTZ control

/ptz/control.htm

ParameterValueDescription
feedfeedidThe ID of the requested feed.
moveup
upleft
upright
down
downleft
downright
left
right
offset
inimage
home (Preset home position)
preset
joystick
to (Specified position)
Command to carry out.
If this is omitted, it defaults to the "to" operation with the pan and tilt parameters.
up, upleft, upright, down, downleft, downright, left, right
angle...Angle to move in degrees. The direction is specified in the move parameter.
If this is omitted, it defaults to 5 degrees.
to, offset
pan/tilt...The pan/tilt position in degrees from the centre. Negative values are down and left.
in image
x/y...The coordinates in the image to move to, in pixels from the top left for in image move requests.
These can be negative or larger than the width and height to move beyond the bounds of the visible area.
width/height...The width and height in pixels to use for in image move requests.
preset
preset...
presetid
The preset index or ID to move to. The index is 1 based and 0 and blank are the home position.
joystick
x/y...Values from the centre that determines speed and direction of movement from -20 to 20 (Up to approximately 20 degrees per second).
zoom
zoomin
out
to
offset
joystick
0 to 100
Zoom operation to carry out or the magnification level. See the level parameter for more information.
If this is omitted, it defaults to the "to" operation with the level parameter.
level...The magnification level to zoom to. A value of 0 is wide angle, 1 shows half the image, etc...
When doing a joystick zoom, this value is a speed from -10 to 10, with 0 being stationary.
returnstatus
nocontent
Specifies what data to return after the operation. "nocontent" allows you to link direct to it and the browser not go to a new page. Defaults to returning the status.

/ptz/info.txt

ParameterValueDescription
feedfeedidThe ID of the requested feed.

This resource returns a crlf delimited list of colon (":") separated values specifying the current capabilities, pan, tilt and zoom values. If that value is not supported, "n/a" will be returned.

capabilities:0x470297
pan:-64
tilt:-29
zoom:n/a

PTZ preset list

/ptz/presets.xml

ParameterValueDescription
feedfeedidThe ID of the requested feed.

This resource returns XML of the form:

<presets>
<preset id="{FE791B72-8606-488f-97AD-C4DC843DA709}" index="1" name="Entrance"/>
<preset id="{D09F6FC2-C547-4a98-939D-49714A393234}" index="2" name="Reception"/>
<preset id="{77E4CEF1-646F-45cb-BA5B-6E0B4C777568}" index="3" name="Window"/>
</presets>

The index is 1 based and the Home preset is implied and not listed but uses a blank ID and an index of 0.

PTZ preset images

/ptz/presetimage.jpg

Returns the reference image for the PTZ home or specified preset.

ParameterValueDescription
feedfeedidThe ID of the requested feed.
preset...
presetid
The preset index or ID to return. The index is 1 based and 0 and blank are the home position.

Input/Output

I/O device list

/io/sensors.xml

ParameterValueDescription
feedfeedidIf this parameter is included, the list is limited to devices associated with the given feed.
groupgroupidIf this parameter is included, only devices that are member of the group will be included.

This resource returns XML of the form:

<sensors>
<sensor>
<id>{04ED93C1-A41A-4E4E-A879-F2A13F25F711}</id>
<name>Switch</name>
<nativevalue>True</nativevalue>
<value>Connected</value>
</sensor>
<sensor>
<id>{B17047E8-2730-46EF-A928-468075C3C57A}</id>
<name>Fan</name>
<nativevalue>False</nativevalue>
<value>Off</value>
<valuetype>boolean</valuetype>
<values>
<value value="True">On</value>
<value value="False">Off</value>
</values>
</sensor>
</sensors>

The XML schema uses the namespace http://schemas.icode.co.uk/icatcher/iodevices/1 but this isn't specified in the XML for compatibility reasons.

I/O device control

/io/setsensor.htm

ParameterValueDescription
sensorsensoridThe ID of the requested device.
value...The value to set the device to.
If this is omitted, the default value or action will be performed.
interval...The interval the device is set for. After this period, it will reset to off.
If this is omitted, the configured interval for the device will be used. If it is set to 0. No reset will be performed..
returnstatus
nocontent
Specifies what data to return after the operation. "nocontent" allows you to link direct to it and the browser not go to a new page. Defaults to returning the status.

Device state images

/io/sensorimage.jpg

Gets an image for the device and its states.

ParameterValueDescription
sensorsensoridThe ID of the requested device.
value...The value to retreive the image for.
If this is omitted, the device's current state is used.

If there is no image for the specified value, then the default image will be returned.

Administration

Control

/admin/action.cgi

This URL allows you to control the Console's state.

ParameterValueDescription
actionstart
stop
arm
disarm
The action to perform in the Console, either start or stop monitoring or arm/disarm the alerting.
delay...When using the "arm" action, this specifies a delay in seconds before alerting is fully armed.
If this is omitted, the alerting is armed immediately.
returnstatus
nocontent
Specifies what data to return after the operation. "nocontent" allows you to link direct to it and the browser not go to a new page. Defaults to returning the status.

Adding feeds

/admin/addfeed.cgi

This URL allows you to add feeds remotely and configure the most basic settings needed to get it working.

ParameterValueDescription
id...The ID for the new feed.
If this is omitted, a GUID will be used for the ID.
name...The friendly name of the new feed.
If this is omitted, "New feed" will be used.
type0 (Manual configuration)
1 (Local device)
2 (Network device)
3 (Batch feed)
Type of feed to add.
If this is omitted, it will default to "Manual configuration".
Local device
device...The device ID for the local WDM device to be added.
parameters...The parameters for the local WDM device to be added.
Network device
url...The URL for the network device to be added.
Batch feed
path...The path to read the batch images from.
pattern...The pattern of the batch image file names.
clearpending0 (Leave pending images)
1 (Delete pending images)
Controls whether pending images are deleted before starting.
If this is omitted, it will default to "Delete pending images".

This resource returns a status code of "OK" or "Error: " followed by the error status text.

Viewing a screen shot

/admin/screenshot.jpg, /admin/screenshot.bmp

Returns an image of the system's screen.

Last updated 10/06/2014. © 2014 iCode Systems Ltd.