Brickcom Camera API Parameter Definition V3 0511 2010
User Manual:
Open the PDF directly: View PDF .
Page Count: 78
Download | |
Open PDF In Browser | View PDF |
BRICKCOM IPCAM HTTP API 1 1. Preface This document details the Brickcom IPCAM HTTP API (Application Programming Interface) which enables applications to access and/or configure the IP Cameras manufactured by Brickcom over a TCP/IP capable network. Programmers who wish to write their own utility should follow the API specifications in this document. 2 2. TOC BRICKCOM IPCAM ..................................................................................................................................... 1 HTTP API ....................................................................................................................................................... 1 1. Preface ............................................................................................................................................ 2 2. TOC ................................................................................................................................................ 3 Overview ....................................................................................................................................................... 7 3. HTTP API Transaction ................................................................................................................... 8 4. API Categories.............................................................................................................................. 10 5. 5.1 5.2 5.3 Streaming ...................................................................................................................................... 11 GetChannels ................................................................................................................................. 11 UpdateChannels ............................................................................................................................ 12 GetStream ..................................................................................................................................... 16 5.4 5.5 5.6 5.7 5.8 5.9 SetRtsp.......................................................................................................................................... 17 GetRtsp ......................................................................................................................................... 17 GetinboundChannel ...................................................................................................................... 18 SetVideoRecord ............................................................................................................................ 18 GetVideoRecord ........................................................................................................................... 19 InboundAudio ............................................................................................................................... 19 5.10 6. 6.1 6.2 7. 7.1 7.2 7.3 7.4 7.5 GetSnapshot .................................................................................................................................. 20 Camera .......................................................................................................................................... 21 SetCameraSetting ......................................................................................................................... 21 GetCameraSetting......................................................................................................................... 23 Audio ............................................................................................................................................ 25 SetAudioDevice ............................................................................................................................ 25 GetAudioDevice ........................................................................................................................... 25 Playaudio ...................................................................................................................................... 26 Stopaudio ...................................................................................................................................... 26 Recordaudio .................................................................................................................................. 26 7.6 7.7 7.8 8. 8.1 8.2 8.3 8.4 Stoprecordaudio ............................................................................................................................ 27 GetFilestatus ................................................................................................................................. 27 RemoveAudioFile......................................................................................................................... 27 Network ........................................................................................................................................ 28 SetBasicNetwork .......................................................................................................................... 28 GetBasicNetwork ......................................................................................................................... 28 SetUPnP........................................................................................................................................ 29 GetUPnP ....................................................................................................................................... 29 3 8.5 SetDDNS ...................................................................................................................................... 29 8.6 8.7 8.8 8.9 8.10 8.11 8.12 9. 9.1 9.2 GetDDNS ..................................................................................................................................... 30 SetEthernet ................................................................................................................................... 30 GetEthernet ................................................................................................................................... 31 SetWIFI ........................................................................................................................................ 31 GetWIFI........................................................................................................................................ 33 SetIPFilter ..................................................................................................................................... 33 GetIPFilter .................................................................................................................................... 34 Storage .......................................................................................................................................... 36 GetSDstatus .................................................................................................................................. 36 Mount ........................................................................................................................................... 36 9.3 9.4 10. Umount ......................................................................................................................................... 36 RemoveFile................................................................................................................................... 37 System .......................................................................................................................................... 38 10.1 10.2 10.3 10.4 10.5 10.6 10.7 GetDeviceInfo .............................................................................................................................. 38 SetTimeSetting ............................................................................................................................. 38 GetTimeSetting ............................................................................................................................. 39 SetSyslogSetting ........................................................................................................................... 40 GetSyslogSetting .......................................................................................................................... 41 GetSyslogFile ............................................................................................................................... 41 SyslogClear................................................................................................................................... 41 10.8 10.9 11. 11.1 11.2 11.3 11.4 11.5 11.6 SetOperationSetting ...................................................................................................................... 41 GetOperationSetting ..................................................................................................................... 42 Admin ........................................................................................................................................... 43 AddUser ........................................................................................................................................ 43 DeleteUser .................................................................................................................................... 43 GetUsers ....................................................................................................................................... 43 UpdateUser ................................................................................................................................... 44 SetHTTP/HTTPS.......................................................................................................................... 44 GetHTTP ...................................................................................................................................... 45 11.7 11.8 11.9 11.10 11.11 11.12 12. 12.1 GetHTTPS .................................................................................................................................... 45 ResetToDefault ............................................................................................................................. 45 UpgradeFirmware ......................................................................................................................... 46 Reboot........................................................................................................................................... 46 ImportConfigFile .......................................................................................................................... 46 ExportConfigFile .......................................................................................................................... 46 Capability ..................................................................................................................................... 47 GetCapability................................................................................................................................ 47 4 12.2 GetVideoCodecs ........................................................................................................................... 47 12.3 12.4 13. 13.1 13.2 14. 14.1 14.2 14.3 14.4 GetResolutions ............................................................................................................................. 47 GetAudioCodecs........................................................................................................................... 48 Motion detection ........................................................................................................................... 49 SetMotionDetection ...................................................................................................................... 49 GetMotionDetections ................................................................................................................... 50 Event ............................................................................................................................................. 51 AddEventSetting........................................................................................................................... 51 UpdateEventSetting ...................................................................................................................... 55 RemoveEventSetting .................................................................................................................... 57 GetEventPolicy ............................................................................................................................. 57 14.5 14.6 14.7 SetEmailSetting ............................................................................................................................ 58 GetEmailSetting ........................................................................................................................... 59 SetFTPSetting ............................................................................................................................... 59 14.8 14.9 14.10 14.11 14.12 14.13 14.14 GetFTPSetting .............................................................................................................................. 60 SetAlarmMediaInfo ...................................................................................................................... 61 GetAlarmMediaInfo ..................................................................................................................... 61 SetSamba ...................................................................................................................................... 61 GetSamba ..................................................................................................................................... 62 SetHttp .......................................................................................................................................... 62 GetHttp ......................................................................................................................................... 63 15. 15.1 15.2 15.3 15.4 15.5 16. 16.1 16.2 I/O Control.................................................................................................................................... 64 SetGPIOSetting ............................................................................................................................ 64 GetGPIOStatus ............................................................................................................................. 66 TriggerDO .................................................................................................................................... 67 TurnAllLedOff .............................................................................................................................. 67 Getledstatus .................................................................................................................................. 67 PIR sensor and White LED .......................................................................................................... 68 SetPIRsensor................................................................................................................................. 68 GetPIRsenor ................................................................................................................................. 68 16.3 16.4 16.5 16.6 17. 17.1 17.2 17.3 Getwledall (Depends on hardware) .............................................................................................. 68 UpdateWled .................................................................................................................................. 69 SetLightCTL ................................................................................................................................. 70 GetLightCTL ................................................................................................................................ 70 Intelligence ................................................................................................................................... 71 GetViMDSetting ........................................................................................................................... 71 SetViMDSetting ........................................................................................................................... 72 GetViFZSetting............................................................................................................................. 73 5 17.4 SetViFZSetting ............................................................................................................................. 74 17.5 17.6 18. 19. GetViPCSetting ............................................................................................................................ 75 SetViPCSetting ............................................................................................................................. 76 Modification History .................................................................................................................... 77 AppendixA RTSP ......................................................................................................................... 78 6 Overview The IPCAM HTTP API is the proprietary network control protocol designed by Brickcom Technology to enable applications to access IP Cameras manufactured by Brickcom. The API allows for configuration of the settings and inquiry of current status on these IP Cameras. The API is structured and transmitted over HTTP protocols and hence it is given the name HTTP API. The complete API is divided into several categories for ease of management. This manual contains one chapter for each API category to provide users with a full understanding of that API subset. Figure 1, Illustration of API generic transactions 7 3. HTTP API Transaction An HTTP API transaction begins with a request from a client application, usually a web browser. The request is received by the web server on the IP Camera device and processed by the IP Camera. Finally, it ends with a response which is sent back to the requesting client. Note: In URL syntax and in descriptions of CGI arguments, text in italics within angle brackets denotes content that should be replaced with either a value or a string. When replacing the text string, the angle brackets must also be replaced. Text within square brackets denotes content that can be omitted. The client HTTP request is taken in two forms: HTTP GET: Normally used to retrieve the settings or status of the IP Camera HTTP POST: Normally used to configure the settings of the IP Camera If the request is successfully received by the IP Camera, the response will contain a HTTP header with a 200 OK response code and the HTTP body with the actual response data or other value when error occurs. An example is provided for each request type below: Illustration 1: Getting the network setting from the IP Camera Client request GET http:///network.cgi HTTP/1.0 … Server response HTTP/1.0 200 OK Content-Type: text/plain IPAddress=192.168.1.1 SubnetMask=255.255.255.0 … 8 Illustration 2, Set the network setting from the IP Camera Client request POST http:// /network.cgi HTTP/1.0 IPAddress=192.168.1.1 SubnetMask=255.255.255.0 Server response HTTP/1.0 200 OK … Error Response The IP Camera may be unable to handle the client HTTP API request due to certain conditions such as system busy, incorrect parameters, or any other reasons. An appropriate HTTP status code 400 Bad Request will be returned, accompanied with an error code and an error string to explain the failure. Client request GET/POST … Server response HTTP/1.0 200 OK … ErrorCode=XXX ErrorString=Invalid IP Address 9 4. API Categories The API categories are listed in the table below. Table 1, API Categories API Category Streaming Camera Audio Network Event Storage System Admin Capability Motion detection Event I/O control Description Enables users to view/configure the setting of multimedia streaming Enables users to view/configure the camera/lens settings Enables user to view/configure the audio devices settings Enables users to view/configure the network settings Enables users to register to receive notifications from IPCAM Enables users to configure storage device for storing media content Enables users to view/configure miscellaneous system settings Enables users to perform administrative tasks over the IP Camera. Provides users with the list of available features supported by the IP Camera Enables users to view/configure the motion detection settings and add/delete/update detection region Enables users to view/configure the event setting and the notification setting Enables users to control I/O status Note: Fields marked in gray are reserved. 10 5. Streaming Streaming API allows applications to 1) View/configure the IP Camera streaming settings 2) Help users view video streaming 5.1 GetChannels ActionEvent: getChannels http:// /cgi-bin/channels.cgi?action=get URL Syntax Response size = CH1.enabled= CH1.name= CH1.transportType= CH1.video.enabled= CH1.video.format.sourceDevice= CH1.video.format.codecType= CH1.video.format.codecSubType= CH1.video.format.constantBitrate= CH1.video.format.bitrateInKbps= CH1.video.format.resolutionWidth= CH1.video.format.resolutionHeight= CH1.video.format.frameRate= CH1.video.format.gop= CH1.video.format.quality= CH1.video.transport.multicastEnabled= CH1.video.transport.multicastAddress= CH1.video.transport.multicastPort= CH1.video.transport.ttl= CH1.audio.enabled= CH1.audio.format.codecType= CH1.audio.format.codecSubType= CH1.audio.transport.multicastEnabled= CH1.audio.transport.multicastAddress= CH1.audio.transport.multicastPort= CH1.audio.transport.ttl= CH1.meta.enabled= CH1.meta.format.mdAlarmEnabled= CH1.meta.transport.multicastEnabled= CH1.meta.transport.multicastAddress= CH1.meta.transport.multicastPort= CH1.meta.transport.ttl= …. Comment 11 HTTP Method GET 5.2 UpdateChannels ActionEvent: updateChannels http:// /cgi-bin/channels.cgi URL Syntax HTML Body Response Comment HTTP Method action=updateAll [& = & = ...] POST Argument c1Enable c1Name c1TransportType Valid values [0,1] [0-4] c1VideoEnabled c1VideoFormatCodecType [0,1] H264, MPEG4, MJPEG, Analytics [0,1] c1VideoFormatConstantBitrate c1VideoFormatBitrateInKbps Description 0:disabled 1:enabled [64,128,256,384,512, 768,1000,1500,2000, 4000,6000,8000,10000, 12000] c1VideoFormatResolutionWidth [1-30] c1VideoFormatGop [0-N] c1VideoFormatQuality c1VideoTransportMulticast Enabled c1VideoTransportMulticast [1-100] [0,1] When constantBitrate =0, only quality can be set; constantBitrate = 1, bitrateInKbps can be set. VBR=0 CBR=1 Kbps 1280x800,640x400,320x192 Based on Capability. 1280x800,640x400,320x192 Based on Capability. HZ depends on the limit of hardware 0(default) : 1 I-frame/second, N : 1 I-frame in N frames c1VideoFormatResolutionHeight c1VideoFormatFrameRate 0:RTSP_RTP 1:RTP_ONLY 2:HTTP 3:MSN 4:ANALYTICS 0:disabled 1:enabled Depends on Capability. 232.0.1.0-232.255.255.255 12 RFC4607 Address c1VideoTransportMulticastPort c1VideoTransportTtl c1AudioEnabled c1AudioFormatCodecType c1AudioFormatCodecSubType [1025-65534] [1-255] [0,1] G711,AMR-NB PCMU,AMR-MR122 c1AudioTransportMulticast Enabled c1AudioTransportMulticast Address c1AudioTransportMulticastPort c1AudioTransportTtl c1MetaEnabled c1MetaFormatMdAlarm Enabled c1MetaTransportMulticast Enabled c1MetaTransportMulticast Address c1MetaTransportMulticastPort c1MetaTransportTtl c2Enable c2Name c2TransportType [0,1] c2VideoEnabled c2VideoFormatCodecType [0,1] H264, MPEG4, MJPEG,MIMIC, Analytics [0,1] c2VideoFormatConstantBitrate c2VideoFormatBitrateInKbps 232.0.1.0-232.255.255.255 RFC4607 [1025-65534] [1-255] [0,1] [0,1] [0,1] 232.0.1.0-232.255.255.255 [1025-65534] [1-255] [0,1] [0-4] RFC4607 0:RTSP_RTP 1:RTP_ONLY 2:HTTP 3:MSN 4:ANALYTICS [64,128,256,384,512, 768,1000,1500,2000, 4000,6000,8000,10000, 12000] c2VideoFormatResolutionWidth c2VideoFormatResolution Height c2VideoFormatFrameRate G711=>PCMU AMR-NB =>AMR-MR122 Depends on Capability. When constantBitrate =0, only quality can be set; constantBitrate = 1, bitrateInKbps can be set. VBR=0 CBR=1 Kbps 1280x800,640x400,320x192 Based on Capability. 1280x800,640x400,320x192 Based on Capability. HZ depends on the limit of hardware [1-30] 13 c2VideoFormatGop [0-N] c2VideoFormatQuality c2VideoTransportMulticast Enabled c2VideoTransportMulticast Address c2VideoTransportMulticastPort c2VideoTransportTtl c2AudioEnabled c2AudioFormatCodecType c2AudioFormatCodecSubType [1-100] [0, 1] c2AudioTransportMulticast Enabled c2AudioTransportMulticast Address c2AudioTransportMulticastPort c2AudioTransportTtl c2MetaEnabled c2MetaFormatMdAlarmEnabled c2MetaTransportMulticast Enabled c2MetaTransportMulticast Address c2MetaTransportMulticastPort c2MetaTransportTtl [0,1] 0(default) : 1 I-frame/second, N : 1 I-frame in N frames int 232.0.1.0-232.255.255.255 [1025-65534] [1-255] [0,1] G711,AMR-NB PCMU,AMR-MR122 232.0.1.0-232.255.255.255 RFC4607 G711=>PCMU AMR-NB =>AMR-MR122 RFC4607 [1025-65534] [1-255] [0,1] [0,1] [0,1] 232.0.1.0-232.255.255.255 [1025-65534] [1-255] Example: Two profiles: 1. If you set stram1 and stream2 audio, you can to do: A. GetChannels: URL: http://192.168.1.1/cgi-bin/channels.cgi?action=get HTTP/1.1 200 Ok Server: mini_httpd Cache-Control: no-cache Pragma: no-cache Expires: 0 Content-Type: text/html Connection: close size = 2 CH1.enabled=1 14 RFC4607 CH1.name=MJPEG CH1.transportType=0 CH1.video.enabled=1 CH1.video.format.sourceDevice=0 CH1.video.format.codecType=H264 CH1.video.format.constantBitrate=0 CH1.video.format.bitrateInKbps=1500 CH1.video.format.resolutionWidth=1280 CH1.video.format.resolutionHeight=800 CH1.video.format.frameRate=25 CH1.video.format.frameRate2=20 CH1.video.format.gop=3 CH1.video.format.quality=30 CH1.video.transport.multicastEnabled=0 CH1.video.transport.multicastAddress=234.1.2.3 CH1.video.transport.multicastPort=10004 CH1.video.transport.ttl=10 CH1.audio.enabled=1 CH1.audio.format.codecType=AMR CH1.audio.format.codecSubType=AMR-MR122 CH1.audio.transport.multicastEnabled=0 CH1.audio.transport.multicastAddress= CH1.audio.transport.multicastPort=10002 CH1.audio.transport.ttl=10 CH1.meta.enabled=1 CH1.meta.format.mdAlarmEnabled=0 CH1.meta.transport.multicastEnabled=0 CH1.meta.transport.multicastAddress=234.1.2.3 CH1.meta.transport.multicastPort=10004 CH1.meta.transport.ttl=10 CH2.enabled=1 CH2.name=MJPEG CH2.transportType=2 CH2.video.enabled=1 CH2.video.format.sourceDevice=0 CH2.video.format.codecType=MJPEG 15 CH2.video.format.constantBitrate=0 CH2.video.format.bitrateInKbps=64 CH2.video.format.resolutionWidth=1280 CH2.video.format.resolutionHeight=800 CH2.video.format.frameRate=25 CH2.video.format.frameRate2=20 CH2.video.format.gop=0 CH2.video.format.quality=30 CH2.video.transport.multicastEnabled=0 CH2.video.transport.multicastAddress=234.1.2.3 CH2.video.transport.multicastPort=20000 CH2.video.transport.ttl=10 CH2.audio.enabled=1 CH2.audio.format.codecType=G711 CH2.audio.format.codecSubType=PCMU CH2.audio.transport.multicastEnabled=0 CH2.audio.transport.multicastAddress= CH2.audio.transport.multicastPort=20002 CH2.audio.transport.ttl=10 CH2.meta.enabled=1 CH2.meta.format.mdAlarmEnabled=0 CH2.meta.transport.multicastEnabled=0 CH2.meta.transport.multicastAddress=234.1.2.3 CH2.meta.transport.multicastPort=20004 CH2.meta.transport.ttl=10 B.You can set: URL: http://192.168.1.1/cgi-bin/channels.cgi HTML body: action=updateAll& c1AudioFormatCodecType=AMR&c1AudioFormatCodecSubType=AMR-MR122& c2AudioFormatCodecType=G711&c2AudioFormatCodecSubType=PCMU 5.3 GetStream ActionEvent: getStream 16 URL Syntax Response Comment rtsp:// /channel is the index number of the SChannelSetting. If user enables MJPG over http setting, user can set request http:// /channel For example:rtsp://192.168.1.100/channel1 HTTP Method 5.4 SetRtsp ActionEvent: setRtsp http:// /cgi-bin/rtsp.cgi URL Syntax HTML Body Response Comment HTTP Method Argument port authentication action=set [& = & = ...] POST Valid values 554, [1025-65534] [0,1,2] 5.5 GetRtsp ActionEvent: getRtsp http:// /cgi-bin/rtsp.cgi?action=get URL Syntax Response rtsp.port=554 rtsp.authentication= Comment HTTP Method GET 17 Description 0:disabled 1:enabled 0: NONE 1: BASIC 2: DIGEST 5.6 GetinboundChannel ActionEvent: getinboundChannel http:// /cgi-bin/inboundChannel.cgi?action=get URL Syntax Response ch1.transportType=1 ch1.port=12345 ch1.codec=PCMA Comment HTTP Method GET 5.7 SetVideoRecord ActionEvent: setVideoRecord http:// /cgi-bin/videoRecord.cgi URL Syntax HEML Body Response Comment HTTP Method Argument circulateEnabled offlineRecordEnabled physicalTime networkTime action=set [& = & = ...] Users can enable or disable the offline recording and configure the related parameters. Offline recording records the video feed to an SD or Micro SD card when the camera detects the disconnected physical or network layer for more than a specific duration of physicalTime or networkTime. If circulateEnabled is enabled, the camera will automatically overwrite the recorded files when a specific amount of free space is left on the SD or Micro SD card. POST Valid values [0,1] [0,1] Description 0:disabled 1:enabled 0:disabled 1:enabled Default: 10 seconds. Default: 30 seconds. 18 5.8 GetVideoRecord ActionEvent: getVideoRecord http:// /cgi-bin/videoRecord.cgi?action=get URL Syntax Response circulateEnabled= offlineRecordEnabled= physicalTime= networkTime= Comment HTTP GET Method 5.9 InboundAudio ActionEvent: inboundAudio http:// : /cgi-bin/instream.cgi URL Syntax //// ---------- HTTP headers ------Content-Type: audio/basic (indicate uLaw is used for audio compression) Cache-Control: no-cache (prevent caching at HTTP proxy server) Content-Length: 10000000 (indicate the length of the audio session) [Other headers...] Response Comment HTTP Method //// ------------ HTTP body --------------[uLaw audio frame] [uLaw audio frame] [uLaw audio frame] [uLaw audio frame] [uLaw audio frame] [uLaw audio frame] … N/A Allow users to talk through an IP camera POST 19 5.10 GetSnapshot ActionEvent: getSnapshot http:// /cgi-bin/media.cgi?action=getSnapshot URL Syntax Response HTTP/1.1 200 OK .Content-Type: image/jpeg .Content-Length: 65542 .Content-Disposition: attachment; filename="snapshot20090101_003801.jpg" .Connection: close ......JFIF.............C. . . . . …………….. Comment HTTP Method GET 20 6. Camera Camera API allows applications to view/configure the Camera/lens setting. 6.1 SetCameraSetting ActionEvent: setCameraSetting http:// /cgi-bin/camera.cgi URL Syntax HTML Body Response Comment HTTP Method action=setCameraSetting [& = & = ...] POST Argument brightness.level Valid values [-5 - 5] colorSaturation.level [-5 - 5] sharpness.level [-5 - 5] contrast.level [-5 - 5] flipEnabled [0,1] mirrorEnabled [0,1] freq [0,1] effectMode [0,1] colorMode [0,1] envMode [0,1] IRCutFilter.mode [0,1,2] IRLED.mode [0,1,2] Exp.mode [0,1,2,4] Description Depends on the limit of hardware Depends on the limit of hardware Depends on the limit of hardware Depends on the limit of hardware 0:disabled 1:enabled 0:disabled 1:enabled 0, FREQ_60HZ 1, FREQ_50HZ 0: Auto 1: Manual 0: Color 1: Black&White 0: OUTDOOR 1: INDOOR 0: OFF 1: ON 2: AUTO 0: OFF 1: ON 2: AUTO 0:Sport 21 Exp.AGC.enabled [0,1] Exp.AGC.level [0-4] Exp.shutterSpeed.enabled [0,1] Exp.shutterSpeed.level [-2 - 4] Exp.AELockEnabled [0,1] 1: Normal 2: Night Vision 3: AE_LOCK, // Reserve 4: User Defined Exp.mode is User Defined: When Exp.AELockEnabled =0, AGC 、shutterSpeed can be set; Exp.AELockEnabled =1, disabled AGC 、shutterSpeed function. 0:disabled 1:enabled Exp.mode is User Defined: When Exp.AELockEnabled =0, AGC 、shutterSpeed can be set; Exp.AELockEnabled =1, disabled AGC 、shutterSpeed function. depends on the limit of hardware Exp.mode is User Defined: When Exp.AELockEnabled =0, AGC 、shutterSpeed can be set; Exp.AELockEnabled =1, disabled AGC 、shutterSpeed function. 0:disabled 1:enabled Exp.mode is User Defined: When Exp.AELockEnabled =0, AGC 、shutterSpeed can be set; Exp.AELockEnabled =1, disabled AGC 、shutterSpeed function. depends on the limit of hardware Exp.mode is User Defined: When Exp.AELockEnabled =0, AGC 、shutterSpeed can be set; Exp.AELockEnabled =1, disabled AGC 、shutterSpeed function. 0:disabled 1:enabled 22 autoIris.enabled [0,1] videoOverlay.useTimestamp [0,1] videoOverlay.useText [0,1] 0:disabled 1:enabled 0:disabled 1:enabled 0:disabled 1:enabled Allows [A-Z][0-9][=,-.:] and space Text 0:Left Text 0: Top 1: Bottom 0:0% 1:50% 2:75% 3:100% Timestamp 0:Left Timestamp 0: Top 1: Bottom 0:0% 1:50% 2:75% 3:100% (25) videoOverlay.displayString videoOverlay.osdWindow1.XPos 0 videoOverlay.osdWindow1.YPos [0,1] videoOverlay.osdWindow1.trans parent [0,1,2,3] videoOverlay.osdWindow2.XPos 0 videoOverlay.osdWindow2.YPos [0,1] videoOverlay.osdWindow2.trans parent [0,3] videoOverlay.osdPalette1.y videoOverlay.osdPalette1.Cb videoOverlay.osdPalette1.Cr videoOverlay.osdPalette2.y videoOverlay.osdPalette2.Cb videoOverlay.osdPalette2.Cr privacy.enabled privacy.privacyButtonEnabled lightSensor.thresholdLevel deNoise.level [0-255] [0-255] [0-255] [0-255] [0-255] [0-255] [0,1] [0,1] [0-255] 0,1,2,3,4 Depends on mode name Depends on mode name Depends on model name 0: auto de-noise level: 1: (default) 2: 3: 4: best 6.2 GetCameraSetting ActionEvent: getCameraSetting http:// /cgi-bin/camera.cgi?action=getCameraSetting URL Syntax Response brightness.level=0 23 colorSaturation.level=0 flipEnabled=0 mirrorEnabled=0 sharpness.level=0 contrast.level=0 freq=0 envMode=1 effectMode=1 colorMode=0 lightSensor.thresholdLevel=11 IRCutFilter.mode=2 Exp.mode=1 Exp.AGC.enabled=0 Exp.AGC.level=0 Exp.shutterSpeed.enabled=0 Exp.shutterSpeed.level=0 Exp.AELockEnabled=0 autoIris.enabled=0 videoOverlay.useTimestamp=0 videoOverlay.displayString= videoOverlay.useText=0 videoOverlay.osdPalette1.y=255 videoOverlay.osdPalette1.Cb=128 videoOverlay.osdPalette1.Cr=128 videoOverlay.osdPalette2.y=16 videoOverlay.osdPalette2.Cb=128 videoOverlay.osdPalette2.Cr=128 videoOverlay.osdWindow1.XPos=0 videoOverlay.osdWindow1.YPos=0 videoOverlay.osdWindow1.transparent=0 videoOverlay.osdWindow2.XPos=0 videoOverlay.osdWindow2.YPos=0 videoOverlay.osdWindow2.transparent=0 privacy.enabled= privacy.PrivacyButtonEnabled= Comment HTTP Method GET 24 7. Audio Audio API allows applications to 1) View/adjust the audio device settings 2) Adjust the volume of the audio device 7.1 SetAudioDevice ActionEvent: setAudioDevice http:// /cgi-bin/audio.cgi URL Syntax HTML Body Response Comment HTTP Method action=setAudioDevice [& = & = ...] POST Argument muted Valid values [0,1] level mediaType [1-100] 0 voiceSource [0,1] echo [0,1] Description 0: (un-muted) 1: (muted) Speaker volume 0,Full 1, Half duplex (Reserve) 0, MIC 1, Line in 0:disabled 1:enabled 7.2 GetAudioDevice ActionEvent: getAudioDevice http:// /cgi-bin/ audio.cgi?action=getAudioDevice URL Syntax Response muted = level = mediaType= voiceSource = echo= Comment HTTP Method GET 25 7.3 Playaudio ActionEvent: play URL Syntax HTML BODY Response Comment HTTP Method Argument name http:// /cgi-bin/audio.cgi action=play [& = ] The device will play the audio recording POST Valid values Description 7.4 Stopaudio ActionEvent: stopaudio http:// /cgi-bin/audio.cgi URL Syntax HTML Body action=stopaudio [& = ] Response Comment The device will stop playing the audio recording HTTP Method POST Argument name Valid values Description 7.5 Recordaudio ActionEvent: record http:// /cgi-bin/audio.cgi URL Syntax HTML Body action=record [ = ] Response Comment The device will start recording audio HTTP Method POST Argument name Valid values (10) Description 26 7.6 Stoprecordaudio ActionEvent: stoprecord http:// /cgi-bin/audio.cgi URL Syntax HTML Body action=stoprecord [& = ] Response Comment The device will stop recording audio HTTP Method POST 7.7 GetFilestatus ActionEvent: getFilestatus http:// /cgi-bin/audio.cgi?action=getFilestatus URL Syntax Response size= audiofile1.name= audiofile1.size= audiofile1.time= audiofile1.codecType= audiofile2.name= audiofile2.size= audiofile2.time= audiofile2.codecType= ………………. Comment HTTP Method GET 7.8 RemoveAudioFile ActionEvent: remove http:// /cgi-bin/audio.cgi URL Syntax HTML Body action=remove [& = ] Response Comment The device will remove file HTTP Method POST Argument name Valid values Description 27 8. Network Network API allows applications to view/adjust the network-related settings, including IP address, WIFI network, etc. 8.1 SetBasicNetwork ActionEvent: setBasicNetwork http:// /cgi-bin/basicNetwork.cgi URL Syntax HTML Body action= set [& = & = ...] Response Comment HTTP Method POST Argument addressType Valid values [0,1,2] Description 0: STATIC 1: DHCP 2: PPPOE addressType=0 1~223 . 0~255 . 0~255 . 1~254 reject: 127.0.0.1 addressType=0 1~255 . 0~255 . 0~255 . 0~254 addressType=0 1~223 . 0~255 . 0~255 . 1~254 reject: 127.0.0.1 addressType=0 1~223 . 0~255 . 0~255 . 1~254 reject: 127.0.0.1 addressType=0 1~223 . 0~255 . 0~255 . 1~254 reject: 127.0.0.1 addressType=2 addressType=2 ipv4Address subnetMask gatewayAddress dnsAddress1 dnsAddress2 pppoe.username pppoe.password (128) (128) 8.2 GetBasicNetwork ActionEvent: getBasicNetwork 28 URL Syntax Response Comment HTTP Method http:// /cgi-bin/basicNetwork.cgi?action=get addressType= (0=Static,1=DHCP, 2=PPPoE) ipv4Address= subnetMask= gatewayAddress= dnsAddress1= dnsAddress2= pppoe.username= pppoe.password= GET 8.3 SetUPnP ActionEvent: setUPnP http:// /cgi-bin/upnp.cgi URL Syntax HTML Body action=set [& = & = ...] Response Comment HTTP Method POST Argument enabled Valid values [0,1] name (128) Description 0:disabled 1:enabled 8.4 GetUPnP ActionEvent: getUPnP http:// /cgi-bin/upnp.cgi?action=get URL Syntax Response enabled= name= Comment HTTP Method GET 8.5 SetDDNS ActionEvent: setDDNS http:// /cgi-bin/ddns.cgi URL Syntax HTML Body action=set [& = & = ...] 29 Response Comment HTTP Method POST Argument dyndnsEnabled Valid values [0,1] dyndns.wildcardEnabled [0,1] dyndns.username dyndns.password dyndns.hostname tzodnsEnabled (128) (128) (128) [0,1] tzodns.wildcardEnabled [0,1] tzodns.username tzodns.password tzodns.hostname (128) (128) (128) Description 0:disabled 1:enabled 0:disabled 1:enabled 0:disabled 1:enabled 0:disabled 1:enabled 8.6 GetDDNS ActionEvent: getDDNS http:// /cgi-bin/ddns.cgi? action=get URL Syntax Response dyndnsEnabled=0 dyndns.wildcardEnabled= dyndns.username= dyndns.password= dyndns.hostname= tzodnsEnabled= tzodns.wildcardEnabled= tzodns.username= tzodns.password= tzodns.hostname= Comment HTTP Method GET 8.7 SetEthernet ActionEvent: setEthernet http:// /cgi-bin/ethernet.cgi Syntax HTML Body action=set [& = & = ...] Response Comment 30 HTTP Method Argument mediaType POST Valid values [0,1,2,3,4] Description 0:AUTO 1: 10_HALF_DUPLEX 2: 10_FULL_DUPLEX 3: 100_HALF_DUPLEX 4: 100_FULL_DUPLEX 8.8 GetEthernet ActionEvent: getEthernet URL Syntax http:// /cgi-bin/ethernet.cgi?action=get Response mediaType= Comment HTTP Method GET 8.9 SetWIFI ActionEvent: setWIFI http:// /cgi-bin/wifi.cgi URL Syntax HTML Body action= set [& = & = ...] Response Comment HTTP Method POST Argument enabled Valid values [0,1] securityMode [0,1,2,3] WPA.algorithmType [0,1,2] WPA.sharedKey Channel (64) 0 mode [0,1] Description 0:disabled 1:enabled (Reserve) 0:None 1:WEP 2: WPAPSK 3: WPA2PSK securityMode=2(WPAPSK) 0: TKIP 1: AES 2: TKIP_AES securityMode=3(WPA2PSK) 1: AES securityMode=2,3 (0) Auto 1-13 for ADHOC(Reserve) 0: INFRASTRUCTURE 31 1: ADHOC (Reserve) SSID WEP.defaultTransmitKeyIndex (33) [1-4] Available when securityMode=1 (WEP) WEP.wepKeyLength Available when securityMode=1 (WEP) 1: 40/64 bits (10 hex digits) 2: 104/128 bits (26 hex digits) WEP.encryptionKeyList.keyEntr y1.encryptionKey (64) Available when securityMode=1 (WEP) WEP.encryptionKeyList.keyEntr y2.encryptionKey (64) Available when securityMode=1 (WEP) WEP.encryptionKeyList.keyEntr y3.encryptionKey (64) Available when securityMode=1 (WEP) WEP.encryptionKeyList.keyEntr y4.encryptionKey (64) Available when securityMode=1 (WEP) WEP.authenticationType [0,1,2] wmm [0,1] operationMode [0-10] Available when securityMode=1 (WEP) 0:Open System 1:Shared Key 2:Auto 0:disabled 1:enabled 802.1e QoS 0: AUTO 1: 11G 2: 11B 3: 11N 4: 11BG 5: 11GN 6: 11BGN 7: 11A 8: 11AN 9: 11N_5G 10: 11ABGN channelBandWidth [0,1] depends on the limit of hardware 0:Auto (20/40MHZ) 1: 20 MHZ 32 8.10 GetWIFI ActionEvent: getWIFI http:// /cgi-bin/wifi.cgi?action=get URL Syntax Response enabled= channel= mode= SSID= wmm= operationMode= channelBandWidth= securityMode= countryregion= WPA.algorithmType= WPA.sharedKey= WEP. authenticationType= WEP. defaultTransmitKeyIndex = WEP. wepKeyLength= WEP. encryptionKeyList.Keyentry1.encryptionKey= WEP. encryptionKeyList.Keyentry2.encryptionKey= WEP. encryptionKeyList.Keyentry3.encryptionKey= WEP. encryptionKeyList.Keyentry4.encryptionKey= WPS.wpsbtn_enabled= WPS.PINCode= Comment HTTP Method GET 8.11 SetIPFilter ActionEvent: setIPFilter URL Syntax HTML Body Response Comment HTTP Method http:// /cgi-bin/IPFilter.cgi action= set [& = & = …] POST Argument enabled Valid values [0,1] permissionType [0,1] allow.enabled1 [0,1] allow.startIP1 allow.endIP1 (16) (16) Description 0:disabled 1:enabled 0: Deny 1: Allow 0:disabled 1:enabled 33 allow.enabled2 [0,1] allow.startIP2 allow.endIP2 allow.enabledN (16) (16) [0,1] allow.startIPN (16) allow.endIPN (16) deny.enabled1 [0,1] deny.startIP1 deny.endIP1 deny.enabled2 (16) (16) [0,1] deny.startIP2 deny.endIP2 deny.enabledN (16) (16) [0,1] deny.startIPN (16) deny.endIPN (16) 8.12 0:disabled 1:enabled 0:disabled 1:enabled N=[1-10] N=[1-10] N=[1-10] 0:disabled 1:enabled 0:disabled 1:enabled 0:disabled 1:enabled N=[1-10] N=[1-10] N=[1-10] GetIPFilter ActionEvent: getIPFilter http:// /cgi-bin/ IPFilter.cgi?action=get URL Syntax Response enabled= permissionType= allow.size= allow.enabled1= allow.startIP1= allow.endIP1= allow.enabled2= allow.startIP2= allow.endIP2= ……. deny.size= deny.enabled1= deny.startIP1= deny.endIP1= deny.enabled2= deny.startIP2= deny.endIP2= 34 Comment HTTP Method GET 35 9. Storage Storage API allows applications to configure the storage devices which could be reached by the IPCAM unit. 9.1 GetSDstatus ActionEvent: getSDstatus http:// /cgi-bin/sdcard.cgi?action=getSDstatus URL Syntax Response size= file1.name= file1.size= file1.time= file2.name= file2.size= file2.time= ………………. Comment HTTP Method GET 9.2 Mount ActionEvent: mount http:// /cgi-bin/sdcard.cgi?action=mount URL Syntax Response Comment HTTP Method GET 9.3 Umount ActionEvent: umount http:// /cgi-bin/sdcard.cgi?action=umount URL Syntax Response Comment HTTP Method GET 36 9.4 RemoveFile ActionEvent: rm URL Syntax Response Comment HTTP Method http:// /cgi-bin/sdcard.cgi?action=rm&filename= GET 37 10. System System API allows applications to configure miscellaneous system settings which are not covered by other categories. These settings include Time, Syslog, Storage, and Device Information. NOTE: In the future, the API may switch to rsyslog instead of syslogd. 10.1 GetDeviceInfo ActionEvent: getDeviceInfo http:// /cgi-bin/system.cgi?action=get URL Syntax Response chipVersion= sensorID= macAddress= firmwareVersion= firmwareReleasedDate= InternalName= ProductName= ModelNumber= CompanyName= Comments= Comment HTTP Method GET 10.2 SetTimeSetting ActionEvent: setTimeSetting http:// /cgi-bin/ time.cgi URL Syntax HTML Body action=set [& = & = ...] Response Comment HTTP Method POST Argument type Valid values [0,1,2] enableDST [0,1] timezoneID manual.year [0-24] [2009-2038] Description 0:None 1:Manual 2:NTP 0:disabled 1:enabled Table 38 manual.month manual.day manual.hour manual.minute manual.second ntp.ntpServerLoc1 ntp.ntpServerLoc2 [1-12] [1-31] [0-23] [0-59] [0-59] (128) (128) Table: Available timezoneID timezoneID TIME_ZONE_MIN TIME_ZONE_KWAJALEIN TIME_ZONE_SAMOA TIME_ZONE_HAWAII TIME_ZONE_ALASKA TIME_ZONE_LOS_ANGELES TIME_ZONE_PHOENIX TIME_ZONE_MEXICO_CITY TIME_ZONE_NEW_YORK TIME_ZONE_SANTIAGO TIME_ZONE_SAO_PAULO, TIME_ZONE_NORONHA_ISLAND, TIME_ZONE_PRAIA, TIME_ZONE_LONDON, TIME_ZONE_PARIS, TIME_ZONE_CAIRO, TIME_ZONE_MOSCOW, TIME_ZONE_DUBAI, TIME_ZONE_KARACHI, TIME_ZONE_DHAKA, TIME_ZONE_JAKARTA, TIME_ZONE_HONG_KONG, TIME_ZONE_TOKYO, TIME_ZONE_SYDNEY, TIME_ZONE_NOUMEA, TIME_ZONE_NewZealand, TIME_ZONE_MAX 10.3 Value 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 GetTimeSetting ActionEvent: getTimeSetting http:// /cgi-bin/time.cgi?action=get URL Syntax Response type= enableDST= timezoneID= 39 manual.year= manual.month= manual.day= manual.hour= manual.minute= manual.second= enableDST= timezoneID= ntp.ntpServerLoc1= ntp.ntpServerLoc2= Comment HTTP Method 10.4 GET SetSyslogSetting ActionEvent: setSyslogSetting http:// /cgi-bin/ syslog.cgi URL Syntax HTML Body action=set [& = & = ...] Response Comment HTTP Method POST Argument localLogLevel useRemoteLog Valid values [0-7] [0,1] Description table 0:disabled 1:enabled 0:IP 1:Hostname addressingFormatType [0,1] remoteServerAddress remoteServerPort (128) [514, 1025-65534] Table: Available localLogLevel timezoneID SLOG_EMERG SLOG_ALERT SLOG_CRIT SLOG_ERR SLOG_WARNING SLOG_NOTICE SLOG_INFO SLOG_DEBUG Value 0 1 2 3 4 5 6 7 40 10.5 GetSyslogSetting ActionEvent: getSyslogSetting http:// /cgi-bin/syslog.cgi ?action=get URL Syntax Response localLogLevel= useRemoteLog= addressingFormatType= remoteServerAddress= remoteServerPort= Comment HTTP Method GET 10.6 GetSyslogFile ActionEvent: getSyslogFile http:// /syslog.dump URL Syntax Response Content of syslog. Comment HTTP Method GET 10.7 SyslogClear ActionEvent: syslogClear http:// /cgi-bin/syslog.cgi?action=clear URL Syntax Response Comment Clear syslog. HTTP Method GET 10.8 SetOperationSetting ActionEvent: set URL Syntax HTML Body Response Comment HTTP Method Argument locale http:// /cgi-bin/OperationSetting.cgi action=set [& = & = ...] Default=en-US POST Valid values (65) Description Default=en-US 41 10.9 GetOperationSetting ActionEvent: get URL Syntax http:// /cgi-bin/OperationSetting.cgi?action=get Response locale= Comment HTTP Method GET 42 11. Admin Admin API enables applications to execute administrative tasks on the IPCAM unit. The tasks include add/delete users, upgrade firmware, rebooting the IP camera, and import/exporting configuration settings. 11.1 AddUser ActionEvent: addUser http:// /cgi-bin/users.cgi Syntax HTML Body action=add [& = & = ...] Response Comment HTTP Method POST Argument index username Valid values (65) (30) password privilege (30) [0,1,2] 11.2 Description depends on GUI index Unique key Length limited:[4,29] Length limited:[4,29] 0:Viewer 1:Admin 2:Remote viewer DeleteUser ActionEvent: deleteUser http:// /cgi-bin/users.cgi?action=delete URL Syntax [ = & = ...] Response Comment HTTP Method POST Argument username 11.3 Valid values (30) Description GetUsers ActionEvent: getUsers http:// /cgi-bin/users.cgi?action=getUsers URL Syntax 43 Response Comment HTTP Method 11.4 Size= User1.index= User1.username= User1.password= User1.privilege= … User2.username= User2.password= User2.privilege= GET UpdateUser ActionEvent: updateUser http:// /cgi-bin/users.cgi Syntax HTML Body action=update [& = & = ...] Response Comment HTTP Method POST Argument index username Valid values (65) (30) password privilege (30) [0,1,2] 11.5 Description depends on GUI index Unique key Length limited:[4,29] Length limited:[4,29] 0:Viewer 1:Admin 2:Remote viewer SetHTTP/HTTPS ActionEvent: setHTTP/HTTPS http:// /cgi-bin/http.cgi URL Syntax HTML Body action= setAll [& = & = ...] Response Comment HTTP Method POST Argument enabled Valid values [0,1] Description 0:disabled 1:enabled port [80, 1025-65534] 44 httpsEnabled [0,1] httpsPort [443, 1025-65534] 11.6 0:disabled 1:enabled GetHTTP ActionEvent: getHTTP http:// /cgi-bin/http.cgi?action=get URL Syntax Response enabled= port= Comment HTTP Method GET 11.7 GetHTTPS ActionEvent: getHTTPS http:// /cgi-bin/https.cgi?action=get URL Syntax Response enabled= port= Comment HTTP Method GET 11.8 ResetToDefault ActionEvent: resetToDefault http:// /cgi-bin/reset.cgi?action=reset URL Syntax [&keepip=[0,1]&keepwifi=[0,1]] Response Comment Reset all settings to factory default HTTP Method GET Argument keepip Valid values [0,1] keepwifi [0,1] Description 0:disabled 1:enabled 0:disabled 1:enabled depends on the limit of hardware 45 11.9 UpgradeFirmware ActionEvent: upgradeFirmware http:// /cgi-bin/upgradeFirmware.cgi URL Syntax HTML Body Response Comment HTTP Method 11.10 action=upgrade < boundary> < firmware> < boundary> Upgrade the system firmware upon this request POST Reboot ActionEvent: reboot http:// /cgi-bin/reboot.cgi?action=reboot URL Syntax Response Comment Reboot the system HTTP Method GET/POST 11.11 ImportConfigFile ActionEvent: importConfigFile http:// /cgi-bin/ConfigFile.cgi Syntax HTML Body Response Comment HTTP Method POST Argument filename 11.12 Valid values (64) Description ExportConfigFile ActionEvent: exportConfigFile http:// /cgi-bin/ConfigFile.cgi?action=get URL Syntax Response Comment HTTP Method GET 46 12. Capability ActionEvents ActionEvent getCapability getVideoCodecs getResolutions getAudioCodecs 12.1 Description Get camera’s capability. Get video codecs Get video resolutions Get audiocodecs GetCapability ActionEvent: getCapability http:// /cgi-bin/capability.cgi?action=get URL Syntax Response [media] channels=2 videoCodecs=H264,MJPEG,MPEG4 audioCodesc=G711,AMR-NB resolutions=1280x800,640x400,320x192 H264frameRate=2,3,5,7,10,15,20,25,30 MJPEGframeRate=2,3,5,7,10,15,20,25,30 MPEG4frameRate=2,3,5,7,10,15 bitrate=64,128,256,384,512,768,1000,1500,2000,4000,6000,8000,10 000,12000 Comment HTTP GET Method 12.2 GetVideoCodecs ActionEvent: getVideoCodecs http:// /cgi-bin/capability.cgi?action=getVideoCodecs URL Syntax Response videoCodecs=H264,MJPEG,MPEG4 Comment HTTP Method GET 12.3 GetResolutions ActionEvent: getResolutions http:// /cgi-bin/capability.cgi?action=getResolutions URL Syntax Response resolutions=1280x800,640x400,320x192 Comment HTTP Method GET 47 12.4 GetAudioCodecs ActionEvent: getAudioCodecs http:// /cgi-bin/capability.cgi?action=getAudioCodecs URL Syntax Response audioCodesc=G711,AMR-NB Comment HTTP Method GET 48 13. Motion detection Motion detection API allows applications to view/adjust the motion detection settings. 13.1 SetMotionDetection ActionEvent: setMotionDetection URL Syntax HTML Body Response Comment HTTP Method http:// /cgi-bin/motiondetection.cgi action=set &channelIndex=1 [& = …] POST Argument channelIndex Valid values 1 enabled [0,1] detectionInterval region1.enabled >0 [0,1] region1.sensitivity region1.threshold region1.x region1.y region1.x1 region1.y1 region2.enabled [1-100] [1-100] region2.sensitivity region2.threshold region2.x region2.y region2.x1 region2.y1 region3.enabled [1-100] [1-100] region3.sensitivity region3.threshold region3.x region3.y region3.x1 [1-100] [1-100] Description It match stream channel index, but it is always equal 1 now. 0:disabled 1:enabled millisecond 0:disabled 1:enabled Depends on resolution Depends on resolution Depends on resolution Depends on resolution 0:disabled 1:enabled [0,1] Depends on resolution Depends on resolution Depends on resolution Depends on resolution 0:disabled 1:enabled [0,1] Depends on resolution Depends on resolution Depends on resolution 49 region3.y1 Depends on resolution Note: Sensitivity: When sensitivity is a high value (such as 90), the motion detection is easily triggered. Threshold: When threshold is a low value (such as 10), the motion detection is easily triggered. 13.2 GetMotionDetections ActionEvent: getMotionDetections http:// /cgi-bin/ motiondetection.cgi?action=get URL Syntax Response size=1 MD1.enabled=0 MD1.channelIndex=1 MD1.detectionInterval=100 MD1.region.size=3 MD1.region1.enabled=0 MD1.region1.sensitivity=90 MD1.region1.threshold=10 MD1.region1.x=0 MD1.region1.y=0 MD1.region1.x1=0 MD1.region1.y1=0 MD1.region2.enabled=0 MD1.region2.sensitivity=90 MD1.region2.threshold=10 MD1.region2.x=0 MD1.region2.y=0 MD1.region2.x1=0 MD1.region2.y1=0 MD1.region3.enabled=0 MD1.region3.sensitivity=90 MD1.region3.threshold=10 MD1.region3.x=0 MD1.region3.y=0 MD1.region3.x1=0 MD1.region3.y1=0 Comment HTTP Method GET 50 14. Event Event API allows applications to 1) View/adjust the event settings 2) View/adjust the notification settings 14.1 AddEventSetting ActionEvent: addEventSetting URL Syntax HTML Body Response Comment HTTP Method Argument name http:// /cgi-bin/event.cgi? action=addEventSetting [& = …] POST enabled Valid values (128) [0,1] eventID (128) MD, SCHEDULE, DI, AD, PIR, IVAPC, IVAMD, IVAFZ Description unique ID 0:disabled 1:enabled 1.MD : motion detection 2. SCHEDULE: schedule event, only support Save Stream to SD. 3.DI: 4.AD :audio detection 5.PIR: 6.IVAPC :IVA people count 7.IVAMD :IVA motion detection 8.IVAFZ :IVA sched.type Only support one eventID. Depends on capability. See example. 0:Always 1:Weekly 2: Durative [0,1,2] 51 sched.time (128) actions (128) speakerName (64) receiverAddress1 (128) receiverAddress2 (128) senderAddress (128) senderName (64) subject udp.ipAddress (64) (32) udp.portNo [1025-65534] multicast.ipAddress (32) multicast.portNo [1025-65534] SAVESTREAM SNAPSHOT EMAIL LIGHTLED SPEAKER DO UDP HTTP MULTICAST UDP Depends on capability. See example. Depends on capability. (SPEAKER) The syntax of actions is [ : ][, : ]… Example: SAVESTREAM: [FTP, EMAIL, SAMBA, SD] SNAPSHOT: [FTP, EMAIL, SAMBA, SD] EMAIL: EMAIL HTTP:NONE UDP: NONE UDP: NONE MULTICAST: NONE DO: NONE NONE read notifications. Example: Get capability: Events=MD, SCHEDULE, DI, AD Event.actions=SNAPSHOT, EMAIL, HTTP, UDP, MULTICAST, DO Event.method=FTP, SMTP, SAMBA, SD 52 2. EventID:MD schedule type: Always Action: FTP Take snapshot to Activate Digital Output Send HTTP Notification Send to Email Send UDP Notification to IP address . . . Port Send Multicast Notification to IP address . . . Port Take snapshot to use E-mail (need to set E-mail format) Send to Email use E-mail (need to set E-mail format) Activate Digital Output read notifications. Send HTTP Notification read notifications. Send UDP Notification to IP address need to set udp.ipAddress 、 udp.portNo Send Multicast Notification to IP addressneed to set multicast.ipAddress 、 multicast.portNo URL: http://192.168.1.1/cgi-bin/event.cgi HTML body: action=addEventSetting&name=MD_Test&enabled=1&sched.type=0&eventID=MD&actions=SNAPS HOT:EMAIL,EMAIL:EMAIL,DO:NONE,HTTP:NONE,UDP:NONE,MULTICAST:NONE&senderAddress =aa@brickcom.com&receiverAddress1=bb@brickcom.com &receiverAddress2=cc@brickcom.com&senderName=Brickcom&subject=Test&udp.ipAddress=1.2.3. 4&udp.portNo=3333&multicast.ipAddress=2.3.4.5&multicast.portNo=2234 3. EventID: SCHEDULE ; schedule type: Durative Action: save stream to SD Time: Sun Mon Tue 20 Start Wed 23 : Thu Fri 300 Duration Minutes URL: http://192.168.1.1/cgi-bin/event.cgi 53 Sat HTML body: action=addEventSetting&name=123&enabled=1&sched.type=2&sched.time=0:2023-300,1:2023-300, 2:2023-300,3:2023-300,4:2023-300,5:2023-300&eventID=SCHEDULE&actions=SAVESTREAM:SD 54 4. EventID: DI ; schedule type: Weekly schedule time : Days Hours presented in binary format Hours presented in Hex format Sun 0000 0000 0000 0000 0000 0000 000000 Mon 0100 1000 0000 0000 0000 1000 480008 Tue 0001 0010 0100 0000 0000 0000 124000 Wed 0001 0100 0001 0000 0010 0000 141020 Thu 0000 0000 1001 0000 0000 0000 009000 Fri 0000 0000 0100 0000 0000 0000 004000 Sat 0000 0000 0000 0000 0000 0000 000000 URL: http://192.168.1.1/cgi-bin/event.cgi HTML body: action=addEventSetting&name=sss&enabled=1&sched.type=1&sched.time=000000,480008,124000, 141020,009000,004000,000000&eventID=DI&actions=DO:NONE,HTTP:NONE 5. URL: http://192.168.1.1/cgi-bin/event.cgi HTML body: action=addEventSetting&name=xxx&enabled=1&sched.type=0&eventID=AD&actions=DO:NONE, HTTP:NONE 14.2 UpdateEventSetting ActionEvent: updateEventSetting URL Syntax http:// /cgi-bin/event.cgi 55 HTML Body Response Comment HTTP Method Argument name action=updateEventSetting &name= [& = …] POST enabled Valid values (128) [0,1] eventID (128) Description unique ID 0:disabled 1:enabled 1.MD : motion detection MD, SCHEDULE, DI, AD, PIR, IVAPC, IVAMD, IVAFZ sched.type [0,1,2] sched.time (128) actions (128) speakerName (64) receiverAddress1 (128) 2. SCHEDULE: schedule event, only support Save Stream to SD. 3.DI: 4.AD :audio detection 5.PIR: 6.IVAPC :IVA people count 7.IVAMD :IVA motion detection 8.IVAFZ :IVA Only support one eventID. Depends on capability. See example. 0:Always 1:Weekly 2: Durative SAVESTREAM SNAPSHOT EMAIL LIGHTLED SPEAKER DO UDP HTTP MULTICAST UDP Depends on capability. See example. Depends on capability.(SPEAKER) 56 receiverAddress2 (128) senderAddress (128) senderName (64) subject udp.ipAddress (64) (32) udp.portNo [1025-65534] multicast.ipAddress (32) multicast.portNo [1025-65534] 14.3 RemoveEventSetting ActionEvent: removeEventSetting Syntax HTML Body Response Comment HTTP Method 14.4 http:// /cgi-bin/event.cgi action=removeEventSetting &name= POST GetEventPolicy ActionEvent: getEventPolicy http:// /cgi-bin/event.cgi?action=getEventPolicy URL Syntax Response size=4 R1enabled=1 R1name=MD_test R1eventID=MD R1sched.type=0 R1sched.time= R1actions=SAVESTREAM:FTP,SNAPSHOT:FTP R1speakerName= R1receiverAddress1= R1receiverAddress2= R1senderAddress= R1senderName= R1subject= R2enabled=1 R2name=SD_test R2eventID=SCHEDULE R2sched.type=0 R2sched.time= 57 R2actions=SAVESTREAM:SD R2speakerName= R2receiverAddress1= R2receiverAddress2= R2senderAddress= R2senderName= R2subject= R3enabled=1 R3name=DI_test R3eventID=DI R3sched.type=1 R3sched.time=100000,100000,100000,100000,100000,100000,100000 R3actions=DO:NONE R3speakerName= R3receiverAddress1= R3receiverAddress2= R3senderAddress= R3senderName= R3subject= R4enabled=0 R4name=AD_test R4eventID=AD R4sched.type=2 R4sched.time=0:0141-300,3:0141-300,4:0141-300,6:0141-300 R4actions=SAVESTREAM:SAMBA,SNAPSHOT:SD,DO:NONE R4speakerName= R4receiverAddress1= R4receiverAddress2= R4senderAddress= R4senderName= R4subject= Comment HTTP Method 14.5 GET SetEmailSetting ActionEvent: setEmailSetting http:// /cgi-bin/event.cgi URL Syntax HTML Body action=setEmailSetting [& = …] Response Comment HTTP Method POST Argument authenticationMode1 port1 Valid values [0,1,2] [25, 1025-65534] 58 Description smtpServerHostName1 password1 authenticationMode2 port2 smtpServerHostName2 accountName2 (64) (64) (64) [25,1025-65534] (64) (64) password2 (64) 0:PLAIN 1:LOGIN 2: LOGIN with TLS Example: URL: http://192.168.1.1/cgi-bin/event.cgi HTML body: action=setEmailSetting&authenticationMode1=1&port1=25&smtpServerHostName1=brickcom.co m.tw&accountName1=brick&password1=12345678&authenticationMode2=1&port2=25&smtpServ erHostName2=&accountName2=&password2= 14.6 GetEmailSetting ActionEvent: getEmailSetting http://