| This document describes the HTTP interface of SecuritySpy's built-in web server. This is an advanced document and basic knowledge of HTTP is assumed. Parameters in square brackets [] are optional. |
|
| HTML page containing live video or still images |
| Request format |
| ++viewlive?cameraNum=<camera1>[&cameraNum=<camera2>][&imageSize=<size>][&viewMethod=<method>] |
Parameters
<camera1>, <camera2> etc are the numbers of the cameras to display
<size> is the size of the images, either in format "640x480" or "scale2" (double size) or "scale0.5" (half size)
<method> the viewing method of images on the page, one of the following numbers: |
0 |
Auto - SecuritySpy will try to detect the browser's capabilities and will choose a viewing method to suit |
1 |
Java applet with JPEG compression |
2 |
Java applet with MPEG-4 compression |
3 |
JavaScript |
4 |
Server-push JPEG stream |
5 |
Still JPEG images |
|
Example
++image?cameraNum=1&cameraNum=2&cameraNum=3&imageSize=640x480&method=0 |
Returned data
A HTML page containing live images from the cameras you specify. |
|
| Still JPEG image |
Request format
++image?cameraNum=<camera>[&width=<width>][&height=<height>][&quality=<quality>] |
Parameters
<camera> is the number of the camera, as displayed in the Device Map window
<width> is the width of the image in pixels
<height> is the height of the image in pixels
<quality> is the compression quality in the range 0 to 100 |
Example
++image?cameraNum=1&width=640&height=480&quality=50 |
Returned data
A single JPEG image for the specified camera. |
|
| Multipart JPEG "server push" video stream |
Request format
++video?cameraNum=<camera>[&width=<width>][&height=<height>][&quality=<quality>][&req_fps=<fps>] |
Parameters
<camera> is the number of the camera, as displayed in the Device Map window
<width> is the width of the image in pixels
<height> is the height of the image in pixels
<quality> is the compression quality in the range 0 to 100
<fps> is the FPS of video that SecuritySpy will attempt to send |
Example
++video?cameraNum=1&width=640&height=480&quality=50&req_fps=10 |
Returned data
A multipart-mixed-replace JPEG stream, as follows: |
HTTP/1.1 200 OK\r\n
Server: BBVS\r\n
Content-Type: multipart/x-mixed-replace;boundary=ssBoundary8345\r\n
\r\n
--ssBoundary8345\r\n
Content-Type: image/jpeg\r\n
Content-Length: 21325\r\n
\r\n
<JPEG image data>\r\n
--ssBoundary8345\r\n
Content-Type: image/jpeg\r\n
Content-Length: 22128\r\n
\r\n
<JPEG image data>\r\n
........ |
|
| Multipart MPEG-4 "server push" video stream |
Request format
++video?codec=mp4v&cameraNum=<camera>[&width=<width>][&height=<height>][&quality=<quality>][&req_fps=<fps>] |
Parameters
<camera> is the number of the camera, as displayed in the Device Map window
<width> is the width of the image in pixels
<height> is the height of the image in pixels
<quality> is the compression quality in the range 0 to 100
<fps> is the FPS of video that SecuritySpy will attempt to send |
Example
++video?codec=mp4v&cameraNum=1&width=640&height=480&quality=50&req_fps=10 |
Returned data
A multipart-mixed-replace MPEG-4 stream, as follows: |
HTTP/1.1 200 OK\r\n
Server: BBVS\r\n
SS-Codec: mp4v
SS-Width: 640
SS-Height: 480
SS-Depth: 24
Content-Type: multipart/x-mixed-replace;boundary=ssBoundary8345\r\n
\r\n
--ssBoundary8345\r\n
Content-Length: 21325\r\n
\r\n
<MPEG-4 image data>\r\n
--ssBoundary8345\r\n
Content-Length: 22128\r\n
\r\n
<MPEG-4 image data>\r\n
........ |
|
| PTZ controls HTML page |
Request format
++ptz/controls?cameraNum=<camera> |
Parameters
<camera> is the number of the camera, as displayed in the Device Map window |
Example
++ptz/controls?cameraNum=1 |
Returned data
An HTML page with buttons to control the PTZ of the specified camera. |
|
| PTZ command |
Request format
++ptz/command?cameraNum=<camera>&command=<command> |
Parameters
<camera> is the number of the camera, as displayed in the Device Map window
<command> is the command to excecute, which is a number as follows: |
1 |
Left |
|
12 |
Preset 1 |
|
112 |
Save preset 1 |
2 |
Right |
|
13 |
Preset 2 |
|
113 |
Save preset 2 |
3 |
Up |
|
14 |
Preset 3 |
|
114 |
Save preset 3 |
4 |
Down |
|
15 |
Preset 4 |
|
115 |
Save preset 4 |
5 |
Zoom in |
|
16 |
Preset 5 |
|
116 |
Save preset 5 |
6 |
Zoom out |
|
17 |
Preset 6 |
|
117 |
Save preset 6 |
7 |
Home |
|
18 |
Preset 7 |
|
118 |
Save preset 7 |
8 |
Up-left |
|
19 |
Preset 8 |
|
119 |
Save preset 8 |
9 |
Up-right |
|
|
|
|
|
|
10 |
Down-left |
|
|
|
|
|
|
11
|
Down-right |
|
|
|
|
|
|
|
Example
++ptz/command?cameraNum=1&command=7 |
Returned data
"OK" as text if the command was accepted by SecuritySpy. |
|
| Active/Passive mode control |
Request format
++ssControlActiveMode?cameraNum=<camera>
++ssControlPassiveMode?cameraNum=<camera> |
Parameters
<camera> is the number of the camera |
Example
++ssControlActiveMode?cameraNum=1
++ssControlPassiveMode?cameraNum=1 |
Returned data
HTTP 303 redirect to the referer page, or if no referer page, the text "The control message was received OK". |
|
| HTML page containing links to captured video footage |
Request format
++download?cameraNum=<camera1>[&cameraNum=<camera2>][&fileTypeMenu=<type>][&ageText=<age>][&date1Text=<date1>][&date2Text=<date2>] |
Parameters
<camera1>, <camera2> etc are the numbers of the cameras to be included in the list of footage
<type> a one-character indicator of what kinds of files to list: |
m |
Movie files only |
i |
Image files only |
b |
Both movie files and image files |
|
<age> The maximum age of files to list, in days
<date1>, <date2> A date range for files to list, in the format "DD/MM/YY" |
Example
++download?cameraNum=1&cameraNum=2&fileTypeMenu=b&ageText=5 |
Returned data
An HTML page containing a list of files that match the search criteria, with download links to the the files themselves. |
|
| Camera status |
Request format
++camerastatus?cameraNum=<camera> |
Parameters
<camera> is the number of the camera |
Example
++camerastatus?cameraNum=1 |
Returned data
One of the following results in plain text: |
| 2 PASSIVE |
The camera is in passive mode |
| 3 ACTIVE |
The camera is in active mode |
|
|
| HTML page containing list of sounds |
Request format
++sounds |
Returned data
An HTML page with a list of sounds installed in the SecuritySpy server with links. Clicking on a link will play the sound on the server computer. |
|
| HTML page containing list of scripts |
Request format
++scripts |
Returned data
An HTML page with a list of scripts installed in the SecuritySpy server with links. Clicking on a link will run the script on the server computer. |
|