define(function (require, exports, module) { function WebSDK() { var WSDK_ERROR_COMMOD = 1, WSDK_ERROR_PARAMNUM = 2, HTTP_STATUS_200 = 200, HTTP_STATUS_400 = 400, HTTP_STATUS_401 = 401, PARAM_OPTION_CHANNEL = "channel", PARAM_OPTION_STREAM = "videoStream", PARAM_OPTION_DISK = "disk", PARAM_OPTION_PRESET = "preset", PARAM_OPTION_PATROL = "patrol", PARAM_OPTION_PATTERN = "pattern", PARAM_OPTION_EXCEPTION = "exception", PARAM_OPTION_IO = "io", PARAM_OPTION_OUTPUT = "output", PARAM_OPTION_MODE = "mode", PARAM_OPTION_USERTYPE = "userType", PARAM_OPTION_USER = "user", PARAM_OPTION_CUSTOM = "custom", PARAM_OPTION_REGION = "region", PARAM_OPTION_SCENE = "scene", PARAM_OPTION_DERECTION = "direction", PARAM_OPTION_LINE = "line", PARAM_OPTION_SMART = "smart", PARAM_OPTION_LINK = "link", PARAM_OPTION_SCHEDULE = "schedule", PARAM_OPTION_INTERFACE = "interface", PARAM_OPTION_CLOUD = "cloud", PARAM_OPTION_TIMESTAMP = "timeStamp", PARAM_OPTION_SENSOR = "sensor", PARAM_OPTION_MESSAGE = "message", PARAM_OPTION_LIMIT = "limit", PARAM_OPTION_SCHEDULETYPE = "scheduleType", PARAM_OPTION_SERIALPORT = "serialPort", PARAM_OPTION_VOICE = "voice", PARAM_OPTION_INTERSECTION = "intersection", PARAM_OPTION_URL = "cmd", m_oTransMethord = null, m_deviceSet = [], m_bDebug = !1, self = this; this.CGI = { deviceLan: {url: "%s%s:%s/SDK/language"}, login: {url: "%s%s:%s/ISAPI/Security/userCheck?timeStamp=%s", req: [PARAM_OPTION_TIMESTAMP]}, challenge: {url: "%s%s:%s/ISAPI/Security/challenge"}, activateStatus: {url: "%s%s:%s/SDK/activateStatus"}, activate: {url: "%s%s:%s/ISAPI/System/activate"}, activateIPC: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/channels/activate"}, sHttpCapa: {url: "%s%s:%s/SDK/capabilities"}, deviceCapa: {url: "%s%s:%s/ISAPI/System/capabilities"}, deviceInfoCapa: {url: "%s%s:%s/ISAPI/System/deviceInfo/capabilities"}, deviceInfo: {url: "%s%s:%s/ISAPI/System/deviceInfo"}, imageCap: {url: "%s%s:%s/ISAPI/Image/channels/%s/imageCap", req: [PARAM_OPTION_CHANNEL]}, imageInfo: {url: "%s%s:%s/ISAPI/Image/channels"}, smartCap: {url: "%s%s:%s/ISAPI/Smart/capabilities"}, AnalogChannelInfo: {url: "%s%s:%s/ISAPI/System/Video/inputs/channels"}, AnalogChannelSingleInfo: { url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s", req: [PARAM_OPTION_CHANNEL] }, DigitalChannelInfo: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/channels"}, ChannelSingleInfo: { analog: {url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/channels/%s"}, req: [PARAM_OPTION_CHANNEL] }, DigitalChannelStatus: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/channels/status"}, ZeroChannelInfo: {url: "%s%s:%s/ISAPI/ContentMgmt/ZeroVideo/channels"}, StreamChannels: {url: "%s%s:%s/ISAPI/Streaming/channels"}, StreamProxyChannels: {url: "%s%s:%s/ISAPI/ContentMgmt/StreamingProxy/channels"}, sourceSupport: {url: "%s%s:%s/ISAPI/ContentMgmt/sourceSupport"}, addIpc: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/channels"}, modifyIpc: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/channels/%s", req: [PARAM_OPTION_CHANNEL]}, deleteIpc: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/channels/%s", req: [PARAM_OPTION_CHANNEL]}, sourceCapability: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/sourceCapability"}, ipcSearch: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/search"}, customProtocol: { url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/customProtocols/%s", req: [PARAM_OPTION_CUSTOM] }, customProtocolCap: { url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/customProtocols/%s/capabilities", req: [PARAM_OPTION_CUSTOM] }, talkInfo: {url: "%s%s:%s/ISAPI/System/TwoWayAudio/channels/1/"}, talkListInfo: {url: "%s%s:%s/ISAPI/System/TwoWayAudio/channels"}, holidayInfo: {url: "%s%s:%s/ISAPI/System/Holidays"}, pnpInfo: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/pnp"}, AnalogAlarmOutputInfo: {url: "%s%s:%s/ISAPI/System/IO/outputs"}, DigitalAlarmOutputInfo: {url: "%s%s:%s/ISAPI/ContentMgmt/IOProxy/outputs"}, AnalogAlarmInputInfo: {url: "%s%s:%s/ISAPI/System/IO/inputs"}, DigitalAlarmInputInfo: {url: "%s%s:%s/ISAPI/ContentMgmt/IOProxy/inputs"}, overlayCapa: { analog: {url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/overlays/capabilities"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/channels/%s/video/overlays/capabilities"}, req: [PARAM_OPTION_CHANNEL] }, overlayInfo: { analog: {url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/overlays"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/channels/%s/video/overlays"}, req: [PARAM_OPTION_CHANNEL] }, roadInfoCap: { url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/roadInfo/%s/overlays/capabilities", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_INTERSECTION] }, roadInfo: { url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/roadInfo/%s/overlays", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_INTERSECTION] }, displayParamSwitchCap: { url: "%s%s:%s/ISAPI/Image/channels/%s/displayParamSwitch/capabilities", req: [PARAM_OPTION_CHANNEL] }, displayParamSwitchInfo: { url: "%s%s:%s/ISAPI/Image/channels/%s/displayParamSwitch", req: [PARAM_OPTION_CHANNEL] }, thScreenCap: {url: "%s%s:%s/ISAPI/System/externalDevice/THScreen/capabilities"}, thScreenInfo: {url: "%s%s:%s/ISAPI/System/externalDevice/THScreen"}, thScreenTiming: {url: "%s%s:%s/ISAPI/System/externalDevice/THScreen/timing"}, videoCapa: { analog: {url: "%s%s:%s/ISAPI/Streaming/channels/%s%s/capabilities"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/StreamingProxy/channels/%s%s/capabilities"}, req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_STREAM] }, videoDynamicCapa: { url: "%s%s:%s/ISAPI/Streaming/channels/%s%s/dynamicCap", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_STREAM] }, dynamicCapWithCondition: { url: "%s%s:%s/ISAPI/Streaming/channels/%s%s/dynamicCapWithCondition", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_STREAM] }, videoInfo: { analog: {url: "%s%s:%s/ISAPI/Streaming/channels/%s%s"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/StreamingProxy/channels/%s%s"}, req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_STREAM] }, audioCapa: {url: "%s%s:%s/ISAPI/System/TwoWayAudio/channels/%s/capabilities", req: [PARAM_OPTION_CHANNEL]}, audioInfo: {url: "%s%s:%s/ISAPI/System/TwoWayAudio/channels/%s", req: [PARAM_OPTION_CHANNEL]}, audioDynamicCapa: {url: "%s%s:%s/ISAPI/System/Audio/channels/%s/dynamicCap", req: [PARAM_OPTION_CHANNEL]}, eventVideoCapa: { url: "%s%s:%s/ISAPI/Event/notification/Streaming/%s01/capabilities", req: [PARAM_OPTION_CHANNEL] }, eventVideoInfo: { analog: {url: "%s%s:%s/ISAPI/Event/notification/Streaming/%s01"}, digital: {url: "%s%s:%s/ISAPI/Event/notification/Streaming/%s01"}, req: [PARAM_OPTION_CHANNEL] }, pictureOverlayInfo: { url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/image", req: [PARAM_OPTION_CHANNEL] }, zeroChannelCapa: {url: "%s%s:%s/ISAPI/ContentMgmt/ZeroStreaming/channels/101/capabilities"}, zeroChannelInfo: {url: "%s%s:%s/ISAPI/ContentMgmt/ZeroStreaming/channels/101"}, zeroChannelEnable: {url: "%s%s:%s/ISAPI/ContentMgmt/ZeroVideo/channels/1"}, recordCap: {url: "%s%s:%s/ISAPI/ContentMgmt/record/tracks/%s01/capabilities", req: [PARAM_OPTION_CHANNEL]}, captureCap: {url: "%s%s:%s/ISAPI/ContentMgmt/record/tracks/%s03/capabilities", req: [PARAM_OPTION_CHANNEL]}, trackInfo: {url: "%s%s:%s/ISAPI/ContentMgmt/record/tracks"}, eventCapa: {url: "%s%s:%s/ISAPI/Event/capabilities"}, exceptionLink: {url: "%s%s:%s/ISAPI/Event/triggers/%s", req: [PARAM_OPTION_EXCEPTION]}, snapshotCap: { analog: {url: "%s%s:%s/ISAPI/Snapshot/channels/%s/capabilities"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/SnapshotProxy/channels/%s/capabilities"}, req: [PARAM_OPTION_CHANNEL] }, snapshotInfo: { analog: {url: "%s%s:%s/ISAPI/Snapshot/channels/%s"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/SnapshotProxy/channels/%s"}, req: [PARAM_OPTION_CHANNEL] }, snapshotListInfo: { analog: {url: "%s%s:%s/ISAPI/Snapshot/channels"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/SnapshotProxy/channels"}, req: [PARAM_OPTION_CHANNEL] }, motionCapa: { analog: {url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/motionDetection/capabilities"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/channels/%s/video/motionDetection/capabilities"}, req: [PARAM_OPTION_CHANNEL] }, motionInfo: { analog: {url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/motionDetection"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/channels/%s/video/motionDetection"}, req: [PARAM_OPTION_CHANNEL] }, motionExtInfo: { url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/motionDetectionExt", req: [PARAM_OPTION_CHANNEL] }, motionLink: {url: "%s%s:%s/ISAPI/Event/triggers/VMD-%s", req: [PARAM_OPTION_CHANNEL]}, motionSchedule: { url: "%s%s:%s/ISAPI/Event/schedules/motionDetections/VMD_video%s", req: [PARAM_OPTION_CHANNEL] }, tamperdetectCapa: { analog: {url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/tamperDetection/capabilities"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/channels/%s/video/tamperDetection/capabilities"}, req: [PARAM_OPTION_CHANNEL] }, videoTamperInfo: { analog: {url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/tamperDetection"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/channels/%s/video/tamperDetection"}, req: [PARAM_OPTION_CHANNEL] }, videoTamperLink: {url: "%s%s:%s/ISAPI/Event/triggers/tamper-%s", req: [PARAM_OPTION_CHANNEL]}, videoTamperSchedule: { url: "%s%s:%s/ISAPI/Event/schedules/tamperDetections/Tamperdetection_video%s", req: [PARAM_OPTION_CHANNEL] }, videoTamperRegion: { analog: {url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/tamperDetection/regions"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/channels/%s/video/tamperDetection/regions"}, req: [PARAM_OPTION_CHANNEL] }, tamperInfo: { analog: {url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/privacyMask"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/channels/%s/video/privacyMask"}, req: [PARAM_OPTION_CHANNEL] }, tamperRegion: { analog: {url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/privacyMask/regions"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/channels/%s/video/privacyMask/regions"}, req: [PARAM_OPTION_CHANNEL] }, deleteTamperRegion: { analog: {url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/privacyMask/regions"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/InputProxy/channels/%s/video/privacyMask/regions"}, req: [PARAM_OPTION_CHANNEL] }, displayCap: { analog: {url: "%s%s:%s/ISAPI/Image/channels/%s/%s/capabilities"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/ImageProxy/channels/%s/%s/capabilities"}, req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCHEDULETYPE] }, displayScene: {url: "%s%s:%s/ISAPI/Image/channels/imageModes"}, displayInfo: { analog: {url: "%s%s:%s/ISAPI/Image/channels/%s/%s"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/ImageProxy/channels/%s/%s"}, req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCHEDULETYPE] }, displayModeInfo: { analog: {url: "%s%s:%s/ISAPI/Image/channels/%s/%s/%s"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/ImageProxy/channels/%s/%s/%s"}, req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_MODE, PARAM_OPTION_SCHEDULETYPE] }, displayISPMode: {analog: {url: "%s%s:%s/ISAPI/Image/channels/%s/ISPMode"}, req: [PARAM_OPTION_CHANNEL]}, videoLossInfo: { analog: {url: "%s%s:%s/ISAPI/Image/channels/%s"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/ImageProxy/channels/%s"}, req: [PARAM_OPTION_CHANNEL] }, videoLossLink: {url: "%s%s:%s/ISAPI/Event/triggers/videoloss-%s", req: [PARAM_OPTION_CHANNEL]}, videoLossSchedule: { url: "%s%s:%s/ISAPI/Event/schedules/videolosses/Videoloss_video%s", req: [PARAM_OPTION_CHANNEL] }, alarmInputInfo: { analogIOAI: {url: "%s%s:%s/ISAPI/System/IO/inputs/%s"}, digitalIOAI: {url: "%s%s:%s/ISAPI/ContentMgmt/IOProxy/inputs/%s"}, req: [PARAM_OPTION_IO] }, alarmInputLink: {url: "%s%s:%s/ISAPI/Event/triggers/IO-%s", req: [PARAM_OPTION_IO]}, alarmInputSchedule: {url: "%s%s:%s/ISAPI/Event/schedules/inputs/%s", req: [PARAM_OPTION_IO]}, alarmOutputInfo: { analogIO: {url: "%s%s:%s/ISAPI/System/IO/outputs/%s"}, digitalIO: {url: "%s%s:%s/ISAPI/ContentMgmt/IOProxy/outputs/%s"}, req: [PARAM_OPTION_IO] }, alarmOutputSchedule: {url: "%s%s:%s/ISAPI/Event/schedules/outputs/%s", req: [PARAM_OPTION_IO]}, alarmOutputTrigger: { analogIO: {url: "%s%s:%s/ISAPI/System/IO/outputs/%s/trigger"}, digitalIO: {url: "%s%s:%s/ISAPI/ContentMgmt/IOProxy/outputs/%s/trigger"}, req: [PARAM_OPTION_IO] }, alarmOutputStatus: { analogIO: {url: "%s%s:%s/ISAPI/System/IO/outputs/%s/status"}, digitalIO: {url: "%s%s:%s/ISAPI/ContentMgmt/IOProxy/outputs/%s/status"}, req: [PARAM_OPTION_IO] }, alarmPIRInfo: {url: "%s%s:%s/ISAPI/WLAlarm/PIR"}, alarmWLS: {url: "%s%s:%s/ISAPI/WLAlarm/WLSensors/%s", req: [PARAM_OPTION_SENSOR]}, audioDetectCap: { url: "%s%s:%s/ISAPI/Smart/AudioDetection/channels/%s/capabilities", req: [PARAM_OPTION_CHANNEL] }, audioDetectInfo: {url: "%s%s:%s/ISAPI/Smart/AudioDetection/channels/%s", req: [PARAM_OPTION_CHANNEL]}, audioDetectionStatus: { url: "%s%s:%s/ISAPI/Smart/AudioDetection/channels/%s/status", req: [PARAM_OPTION_CHANNEL] }, audioDetectLink: {url: "%s%s:%s/ISAPI/Event/triggers/audioexception-%s", req: [PARAM_OPTION_CHANNEL]}, audioDetectSchedule: { url: "%s%s:%s/ISAPI/Event/schedules/audioDetections/audioexception_%s", req: [PARAM_OPTION_CHANNEL] }, virtualFocus: {url: "%s%s:%s/ISAPI/Smart/DefocusDetection/%s", req: [PARAM_OPTION_CHANNEL]}, virtualFocusLink: {url: "%s%s:%s/ISAPI/Event/triggers/defocus-%s", req: [PARAM_OPTION_CHANNEL]}, sceneChangeInfo: {url: "%s%s:%s/ISAPI/Smart/SceneChangeDetection/%s", req: [PARAM_OPTION_CHANNEL]}, sceneChangeLink: {url: "%s%s:%s/ISAPI/Event/triggers/scenechangedetection-%s", req: [PARAM_OPTION_CHANNEL]}, sceneChangeSchedule: { url: "%s%s:%s/ISAPI/Event/schedules/sceneChangeDetections/scenechangedetection_video%s", req: [PARAM_OPTION_CHANNEL] }, faceDetectCap: {url: "%s%s:%s/ISAPI/Smart/FaceDetect/%s/capabilities", req: [PARAM_OPTION_CHANNEL]}, faceDetectInfo: {url: "%s%s:%s/ISAPI/Smart/FaceDetect/%s", req: [PARAM_OPTION_CHANNEL]}, faceDetectLink: {url: "%s%s:%s/ISAPI/Event/triggers/facedetection-%s", req: [PARAM_OPTION_CHANNEL]}, faceDetectSchedule: { url: "%s%s:%s/ISAPI/Event/schedules/faceDetections/facedetection_video%s", req: [PARAM_OPTION_CHANNEL] }, roiCapa: { url: "%s%s:%s/ISAPI/Smart/ROI/channels/%s%s/capabilities", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_STREAM] }, allRoiInfo: {url: "%s%s:%s/ISAPI/Smart/ROI/channels"}, roiInfo: {url: "%s%s:%s/ISAPI/Smart/ROI/channels/%s%s", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_STREAM]}, oneRoiRegion: { url: "%s%s:%s/ISAPI/Smart/ROI/channels/%s%s/regions/%s", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_STREAM, PARAM_OPTION_IO] }, rs485Capa: { analog: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/capabilities"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/PTZCtrlProxy/channels/%s/capabilities"}, req: [PARAM_OPTION_CHANNEL] }, rs485Info: { analog: {url: "%s%s:%s/ISAPI/PTZCtrl/channels"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/PTZCtrlProxy/channels/%s"}, req: [PARAM_OPTION_CHANNEL] }, networkCapa: {url: "%s%s:%s/ISAPI/System/Network/capabilities"}, networkBondCapa: {url: "%s%s:%s/ISAPI/System/Network/Bond/capabilities"}, networkBond: {url: "%s%s:%s/ISAPI/System/Network/Bond/1"}, networkInterfaceCapa: {url: "%s%s:%s/ISAPI/System/Network/interfaces/1/capabilities"}, networkInterface: {url: "%s%s:%s/ISAPI/System/Network/interfaces"}, networkInterfacePut: {url: "%s%s:%s/ISAPI/System/Network/interfaces/%s", req: [PARAM_OPTION_INTERFACE]}, PPPoEInfo: {url: "%s%s:%s/ISAPI/System/Network/PPPoE/1"}, PPPoEStatus: {url: "%s%s:%s/ISAPI/System/Network/PPPoE/1/status"}, ddnsCapa: {url: "%s%s:%s/ISAPI/System/Network/DDNS/capabilities"}, ddnsInfo: {url: "%s%s:%s/ISAPI/System/Network/DDNS/1"}, ddnsCountry: {url: "%s%s:%s/ISAPI/System/Network/DDNS/CountryID/capabilities"}, email: {url: "%s%s:%s/ISAPI/System/Network/mailing"}, emailCap: {url: "%s%s:%s/ISAPI/System/Network/mailing/capabilities"}, snmp: {url: "%s%s:%s/ISAPI/System/Network/SNMP"}, portInfo: {url: "%s%s:%s/ISAPI/Security/adminAccesses"}, ftpCapa: {url: "%s%s:%s/ISAPI/System/Network/ftp/capabilities"}, ftpEvent: {url: "%s%s:%s/ISAPI/Event/notification/ftp"}, ftpInfo: {url: "%s%s:%s/ISAPI/System/Network/ftp"}, upnp: {url: "%s%s:%s/ISAPI/System/Network/UPnP"}, upnpStatus: {url: "%s%s:%s/ISAPI/System/Network/UPnP/ports/status"}, alarmCenter: {url: "%s%s:%s/ISAPI/Event/notification/alarmCenter/1"}, telnet: {url: "%s%s:%s/ISAPI/System/Network/telnetd"}, cfg28181: {url: "%s%s:%s/ISAPI/System/Network/SIP"}, sip28181Cap: {url: "%s%s:%s/ISAPI/System/Network/SIP/1/capabilities"}, sip28181: {url: "%s%s:%s/ISAPI/System/Network/SIP/1/SIPInfo"}, dial: {url: "%s%s:%s/ISAPI/System/Network/WirelessDial/Interfaces/1/dial"}, dialstatus: {url: "%s%s:%s/ISAPI/System/Network/WirelessDial/Interfaces/1/dialstatus"}, dialCap: {url: "%s%s:%s/ISAPI/System/Network/WirelessDial/Interfaces/1/dial/capabilities"}, dialSchedule: {url: "%s%s:%s/ISAPI/System/Network/WirelessDial/Interfaces/1/schedule"}, dialConnect: {url: "%s%s:%s/ISAPI/System/Network/WirelessDial/Interfaces/1/connect"}, messageConfigCap: {url: "%s%s:%s/ISAPI/System/Network/WirelessDial/Interfaces/1/messageConfig/messageConfigCap"}, messageConfig: {url: "%s%s:%s/ISAPI/System/Network/WirelessDial/Interfaces/1/messageConfig"}, message: { url: "%s%s:%s/ISAPI/System/Network/WirelessDial/Interfaces/1/messages/%s", req: [PARAM_OPTION_MESSAGE] }, ehomeCap: {url: "%s%s:%s/ISAPI/System/Network/Ehome/capabilities"}, ehome: {url: "%s%s:%s/ISAPI/System/Network/Ehome"}, ezviz: {url: "%s%s:%s/ISAPI/System/Network/EZVIZ"}, networkExtension: {url: "%s%s:%s/ISAPI/System/Network/extension"}, certificate: {url: "%s%s:%s/ISAPI/Security/serverCertificate/certificate"}, deleteCertificate: {url: "%s%s:%s/ISAPI/Security/serverCertificate/certificate"}, createCertificate: {url: "%s%s:%s/ISAPI/Security/serverCertificate/selfSignCert"}, certSignReq: {url: "%s%s:%s/ISAPI/Security/serverCertificate/certSignReq"}, deleteCertSignReq: {url: "%s%s:%s/ISAPI/Security/serverCertificate/certSignReq"}, netPreviewStrategy: {url: "%s%s:%s/ISAPI/System/Network/NetPreviewStrategy"}, networkQos: {url: "%s%s:%s/ISAPI/System/Network/qos/dscp"}, network8021x: {url: "%s%s:%s/ISAPI/System/Network/interfaces/1/ieee802.1x"}, network8021xCap: {url: "%s%s:%s/ISAPI/System/Network/interfaces/1/ieee802.1x/capabilities"}, ipTest: {url: "%s%s:%s/ISAPI/System/Network/pingtest"}, wifiCap: {url: "%s%s:%s/ISAPI/System/Network/interfaces/2/wireless/capabilities"}, wifiList: {url: "%s%s:%s/ISAPI/System/Network/interfaces/2/wireless/accessPointList"}, wifiInfo: {url: "%s%s:%s/ISAPI/System/Network/interfaces/2/wireless"}, wpsInfo: {url: "%s%s:%s/ISAPI/System/Network/interfaces/2/WPS"}, devicePinCode: {url: "%s%s:%s/ISAPI/System/Network/interfaces/2/WPS/devicePinCode"}, generatePinCode: {url: "%s%s:%s/ISAPI/System/Network/interfaces/2/WPS/devicePinCodeUpdate"}, wifi8021x: {url: "%s%s:%s/ISAPI/System/Network/interfaces/2/ieee802.1x"}, autoConnect: {url: "%s%s:%s/ISAPI/System/Network/interfaces/2/WPS/AutoConnect"}, manualConnect: {url: "%s%s:%s/ISAPI/System/Network/interfaces/2/WPS/ApPinCode"}, testFtp: {url: "%s%s:%s/ISAPI/System/Network/ftp/test"}, testEmail: {url: "%s%s:%s/ISAPI/System/Network/mailing/test"}, testNTP: {url: "%s%s:%s/ISAPI/System/time/ntpServers/test"}, wlanapCap: {url: "%s%s:%s/ISAPI/System/Network/interfaces/2/wirelessServer/capabilities"}, wlanap: {url: "%s%s:%s/ISAPI/System/Network/interfaces/2/wirelessServer"}, wlanapList: {url: "%s%s:%s/ISAPI/System/Network/interfaces/2/wirelessServer/accessDeviceList"}, externalDeviceCap: {url: "%s%s:%s/ISAPI/System/externalDevice/capabilities"}, externalDevice: {url: "%s%s:%s/ISAPI/System/externalDevice"}, storage: {url: "%s%s:%s/ISAPI/ContentMgmt/Storage"}, deletehdd: {url: "%s%s:%s/ISAPI/ContentMgmt/Storage/hdd/%s/delete", req: [PARAM_OPTION_DISK]}, startSmartTest: {url: "%s%s:%s/ISAPI/ContentMgmt/Storage/hdd/%s/SMARTTest/start", req: [PARAM_OPTION_DISK]}, smartTestInfo: {url: "%s%s:%s/ISAPI/ContentMgmt/Storage/hdd/SMARTTest/config"}, smartStatus: {url: "%s%s:%s/ISAPI/ContentMgmt/Storage/hdd/%s/SMARTTest/status", req: [PARAM_OPTION_DISK]}, startHddTest: { url: "%s%s:%s/ISAPI/ContentMgmt/Storage/hdd/%s/BadSectorsTest/start", req: [PARAM_OPTION_DISK] }, hddTestPause: { url: "%s%s:%s/ISAPI/ContentMgmt/Storage/hdd/%s/BadSectorsTest/pause", req: [PARAM_OPTION_DISK] }, hddTestResume: { url: "%s%s:%s/ISAPI/ContentMgmt/Storage/hdd/%s/BadSectorsTest/resume", req: [PARAM_OPTION_DISK] }, stopHddTest: { url: "%s%s:%s/ISAPI/ContentMgmt/Storage/hdd/%s/BadSectorsTest/Stop", req: [PARAM_OPTION_DISK] }, hddTestStatus: { url: "%s%s:%s/ISAPI/ContentMgmt/Storage/hdd/%s/BadSectorsTest/status", req: [PARAM_OPTION_DISK] }, hddCapa: {url: "%s%s:%s/ISAPI/ContentMgmt/Storage/hdd/capabilities"}, hddProperty: {url: "%s%s:%s/ISAPI/ContentMgmt/Storage/hdd/%s", req: [PARAM_OPTION_DISK]}, nasProperty: {url: "%s%s:%s/ISAPI/ContentMgmt/Storage/nas/%s", req: [PARAM_OPTION_DISK]}, nasInfo: {url: "%s%s:%s/ISAPI/ContentMgmt/Storage/nas"}, nasSeach: {url: "%s%s:%s/ISAPI/ContentMgmt/Storage/nas/search"}, nasTest: {url: "%s%s:%s/ISAPI/ContentMgmt/Storage/nas/test"}, formatHdd: {url: "%s%s:%s/ISAPI/ContentMgmt/Storage/hdd/%s/format", req: [PARAM_OPTION_DISK]}, formatNas: {url: "%s%s:%s/ISAPI/ContentMgmt/Storage/nas/%s/format", req: [PARAM_OPTION_DISK]}, formatHddStatus: {url: "%s%s:%s/ISAPI/ContentMgmt/Storage/hdd/%s/formatStatus", req: [PARAM_OPTION_DISK]}, formatNasStatus: {url: "%s%s:%s/ISAPI/ContentMgmt/Storage/nas/%s/formatStatus", req: [PARAM_OPTION_DISK]}, storageExt: {url: "%s%s:%s/ISAPI/ContentMgmt/Storage/extension"}, quotaCap: {url: "%s%s:%s/ISAPI/ContentMgmt/Storage/quota"}, quota: {url: "%s%s:%s/ISAPI/ContentMgmt/Storage/quota/1"}, storageDetection: {url: "%s%s:%s/ISAPI/Smart/storageDetection"}, rwlockCap: {url: "%s%s:%s/ISAPI/Smart/storageDetection/rwlock/capabilities"}, rwlock: {url: "%s%s:%s/ISAPI/Smart/storageDetection/rwlock"}, unlockCap: {url: "%s%s:%s/ISAPI/Smart/storageDetection/unlock/capabilities"}, unlock: {url: "%s%s:%s/ISAPI/Smart/storageDetection/unlock"}, ptzCtrlCap: {url: "%s%s:%s/ISAPI/PTZCtrl/capabilities"}, ptzCap: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/capabilities", req: [PARAM_OPTION_CHANNEL]}, presetInfo: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/presets", req: [PARAM_OPTION_CHANNEL]}, patrolCap: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/patrols/capabilities", req: [PARAM_OPTION_CHANNEL]}, patrolInfo: { analog: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/patrols/%s"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/PTZCtrlProxy/channels/%s/patrols/%s"}, req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_PATROL] }, patrolStart: { analog: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/patrols/%s/start"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/PTZCtrlProxy/channels/%s/patrols/%s/start"}, req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_PATROL] }, patrolStop: { analog: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/patrols/%s/stop"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/PTZCtrlProxy/channels/%s/patrols/%s/stop"}, req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_PATROL] }, deletePatrol: { analog: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/patrols/%s"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/PTZCtrlProxy/channels/%s/patrols/%s"}, req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_PATROL] }, patternInfo: { analog: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/patterns"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/PTZCtrlProxy/channels/%s/patterns"}, req: [PARAM_OPTION_CHANNEL] }, patternRecordStart: { analog: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/patterns/%s/recordstart"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/PTZCtrlProxy/channels/%s/patterns/%s/recordstart"}, req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_PATTERN] }, patternRecordStop: { analog: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/patterns/%s/recordstop"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/PTZCtrlProxy/channels/%s/patterns/%s/recordstop"}, req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_PATTERN] }, patternStart: { analog: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/patterns/%s/start"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/PTZCtrlProxy/channels/%s/patterns/%s/start"}, req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_PATTERN] }, patternStop: { analog: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/patterns/%s/stop"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/PTZCtrlProxy/channels/%s/patterns/%s/stop"}, req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_PATTERN] }, deletePattern: { analog: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/patterns/%s"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/PTZCtrlProxy/channels/%s/patterns/%s"}, req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_PATTERN] }, setAuxControl: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/auxcontrols/1", req: [PARAM_OPTION_CHANNEL]}, oneKeyFocus: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/onepushfoucs/start", req: [PARAM_OPTION_CHANNEL]}, initCamera: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/onepushfoucs/reset", req: [PARAM_OPTION_CHANNEL]}, ptzFocus: { analog: {url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/focus"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/ImageProxy/channels/%s/focus"}, req: [PARAM_OPTION_CHANNEL] }, ptzIris: { analog: {url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/iris"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/ImageProxy/channels/%s/iris"}, req: [PARAM_OPTION_CHANNEL] }, setMenu: { analog: {url: "%s%s:%s/ISAPI/Image/channels/%s/menu"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/ImageProxy/channels/%s/menu"}, req: [PARAM_OPTION_CHANNEL] }, ptzControl: { analog: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/continuous"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/PTZCtrlProxy/channels/%s/continuous"}, req: [PARAM_OPTION_CHANNEL] }, ptzAutoControl: { ipdome: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/presets/%s/goto"}, analog: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/autoPan"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/PTZCtrlProxy/channels/%s/autoPan"}, req: [PARAM_OPTION_CHANNEL] }, setPreset: { analog: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/presets/%s"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/PTZCtrlProxy/channels/%s/presets/%s"}, req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_PRESET] }, goPreset: { analog: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/presets/%s/goto"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/PTZCtrlProxy/channels/%s/presets/%s/goto"}, req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_PRESET] }, deletePreset: { analog: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/presets/%s"}, digital: {url: "%s%s:%s/ISAPI/ContentMgmt/PTZCtrlProxy/channels/%s/presets/%s/delete"}, req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_PRESET] }, position3D: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/position3D", req: [PARAM_OPTION_CHANNEL]}, manualTrace: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/ManualTrace", req: [PARAM_OPTION_CHANNEL]}, manualEvidence: {url: "%s%s:%s/ISAPI/Traffic/channels/%s/manualItsCap", req: [PARAM_OPTION_CHANNEL]}, regionalExposure: {url: "%s%s:%s/ISAPI/Image/channels/%s/regionalExposure", req: [PARAM_OPTION_CHANNEL]}, regionalFocus: {url: "%s%s:%s/ISAPI/Image/channels/%s/regionalFocus", req: [PARAM_OPTION_CHANNEL]}, monthRecordSearch: { url: "%s%s:%s/ISAPI/ContentMgmt/record/tracks/%s/dailyDistribution", req: [PARAM_OPTION_CHANNEL] }, recordSearch: {url: "%s%s:%s/ISAPI/ContentMgmt/search"}, startPlayback: {url: "%s%s:%s/PSIA/streaming/tracks/%s?starttime=%s&endtime=%s"}, startDownloadRecord: {url: "%s%s:%s/ISAPI/ContentMgmt/download"}, restart: {url: "%s%s:%s/ISAPI/System/reboot"}, restore: {url: "%s%s:%s/ISAPI/System/factoryReset?mode=%s", req: [PARAM_OPTION_MODE]}, startVoiceTalk: { open: {url: "%s%s:%s/ISAPI/System/TwoWayAudio/channels/%s/open"}, close: {url: "%s%s:%s/ISAPI/System/TwoWayAudio/channels/%s/close"}, audioData: {url: "%s%s:%s/ISAPI/System/TwoWayAudio/channels/%s/audioData"} }, startRealPlay: { channels: {url: "%s%s:%s/PSIA/streaming/channels/%s"}, zeroChannels: {url: "%s%s:%s/PSIA/Custom/SelfExt/ContentMgmt/ZeroStreaming/channels/%s"} }, upgradeFlag: {url: "%s%s:%s/ISAPI/System/upgradeFlag"}, startUpgrade: { upgrade: {url: "%s%s:%s/ISAPI/System/updateFirmware"}, status: {url: "%s%s:%s/ISAPI/System/upgradeStatus"} }, onlineUpgradeCapa: {url: "%s%s:%s/ISAPI/System/onlineUpgrade/capabilities"}, onlineServerStatus: {url: "%s%s:%s/ISAPI/System/onlineUpgrade/server"}, onlineNewVersion: {url: "%s%s:%s/ISAPI/System/onlineUpgrade/version?check=%s", req: [PARAM_OPTION_CUSTOM]}, onlineUpgrade: {url: "%s%s:%s/ISAPI/System/onlineUpgrade/upgrade"}, onlineUpgradeStatus: {url: "%s%s:%s/ISAPI/System/onlineUpgrade/status"}, deviceConfig: {url: "%s%s:%s/ISAPI/System/configurationData"}, timeCapa: {url: "%s%s:%s/ISAPI/System/time/capabilities"}, timeInfo: {url: "%s%s:%s/ISAPI/System/time"}, timeZone: {url: "%s%s:%s/ISAPI/System/time/timeZone"}, imageParamCap: { url: "%s%s:%s/ISAPI/Panorama/channels/%s/imageParam/capabilities", req: [PARAM_OPTION_CHANNEL] }, imageParam: {url: "%s%s:%s/ISAPI/Panorama/channels/%s/imageParam", req: [PARAM_OPTION_CHANNEL]}, sensorCap: {url: "%s%s:%s/ISAPI/Panorama/sensor/capabilities"}, sensorAdjustment: {url: "%s%s:%s/ISAPI/Panorama/sensor/%s/continuous", req: [PARAM_OPTION_SENSOR]}, mosaicPattern: {url: "%s%s:%s/ISAPI/Panorama/mosaicPattern"}, sensorReset: {url: "%s%s:%s/ISAPI/Panorama/sensorReset"}, ntpServerCapa: {url: "%s%s:%s/ISAPI/System/time/ntpServers/capabilities"}, ntpServerInfo: {url: "%s%s:%s/ISAPI/System/time/ntpServers/1"}, serialPorts: {url: "%s%s:%s/ISAPI/System/Serial/ports"}, rs232Capa: {url: "%s%s:%s/ISAPI/System/Serial/ports/%s/capabilities", req: [PARAM_OPTION_SERIALPORT]}, rs232Info: {url: "%s%s:%s/ISAPI/System/Serial/ports/%s", req: [PARAM_OPTION_SERIALPORT]}, gisInfo: {url: "%s%s:%s/ISAPI/GIS/channels/%s", req: [PARAM_OPTION_CHANNEL]}, azimuthInfo: {url: "%s%s:%s/ISAPI/Compass/channels/%s/azimuthInfo", req: [PARAM_OPTION_CHANNEL]}, menuOutputCapa: { url: "%s%s:%s/ISAPI/System/Video/outputs/channels/%s/capabilities", req: [PARAM_OPTION_OUTPUT] }, menuOutput: {url: "%s%s:%s/ISAPI/System/Video/outputs/channels"}, menuOutputMode: {url: "%s%s:%s/ISAPI/System/Video/Menu/1"}, localOutput: {url: "%s%s:%s/ISAPI/System/Video/outputs/channels/%s", req: [PARAM_OPTION_OUTPUT]}, logSearch: {url: "%s%s:%s/ISAPI/ContentMgmt/logSearch"}, service: {url: "%s%s:%s/ISAPI/System/Hardware"}, softwareServiceCapa: {url: "%s%s:%s/ISAPI/Security/previewLinkNum/capabilities"}, softwareService: {url: "%s%s:%s/ISAPI/Security/previewLinkNum"}, rtspAuth: {url: "%s%s:%s/ISAPI/Streaming/channels/101"}, webAuth: {url: "%s%s:%s/ISAPI/Security/webCertificate"}, telnetService: {url: "%s%s:%s/ISAPI/System/Network/telnetd"}, sshService: {url: "%s%s:%s/ISAPI/System/Network/ssh"}, illegalLoginLockService: {url: "%s%s:%s/ISAPI/Security/illegalLoginLock"}, streamEncryption: {url: "%s%s:%s/ISAPI/Security/channels/%s/streamEncryption", req: [PARAM_OPTION_CHANNEL]}, ipFilter: {url: "%s%s:%s/ISAPI/System/Network/ipFilter"}, userPermissionCap: {url: "%s%s:%s/ISAPI/Security/UserPermission/%s", req: [PARAM_OPTION_USERTYPE]}, userPermission: {url: "%s%s:%s/ISAPI/Security/UserPermission/%s", req: [PARAM_OPTION_USER]}, user: {url: "%s%s:%s/ISAPI/Security/users"}, userModify: {url: "%s%s:%s/ISAPI/Security/users/%s", req: [PARAM_OPTION_USER]}, userDelete: {url: "%s%s:%s/ISAPI/Security/users/%s", req: [PARAM_OPTION_USER]}, anonymousLogin: {url: "%s%s:%s/ISAPI/Security/UserPermission/anonymouslogin"}, onlineUser: {url: "%s%s:%s/ISAPI/Security/onlineUser"}, lockPTZ: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/lockPTZ", req: [PARAM_OPTION_CHANNEL]}, lockPTZIntelligent: {url: "%s%s:%s/ISAPI/Intelligent/channels/%s/lockPtz", req: [PARAM_OPTION_CHANNEL]}, fieldDetectionCapa: { url: "%s%s:%s/ISAPI/Smart/%s/%s/capabilities", req: [PARAM_OPTION_SMART, PARAM_OPTION_CHANNEL] }, fieldDetection: {url: "%s%s:%s/ISAPI/Smart/%s/%s", req: [PARAM_OPTION_SMART, PARAM_OPTION_CHANNEL]}, fieldDetectionRegion: { url: "%s%s:%s/ISAPI/Smart/%s/%s/regions/%s", req: [PARAM_OPTION_SMART, PARAM_OPTION_CHANNEL, PARAM_OPTION_REGION] }, fieldDetectionLink: {url: "%s%s:%s/ISAPI/Event/triggers/%s", req: [PARAM_OPTION_LINK]}, fieldDetectionSchedule: {url: "%s%s:%s/ISAPI/Event/schedules/%s", req: [PARAM_OPTION_SCHEDULE]}, lineDetectionCapa: {url: "%s%s:%s/ISAPI/Smart/LineDetection/%s/capabilities", req: [PARAM_OPTION_CHANNEL]}, lineDetection: {url: "%s%s:%s/ISAPI/Smart/LineDetection/%s", req: [PARAM_OPTION_CHANNEL]}, lineDetectionItem: { url: "%s%s:%s/ISAPI/Smart/LineDetection/%s/lineItem/%s", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_LINE] }, lineDetectionLink: {url: "%s%s:%s/ISAPI/Event/triggers/linedetection-%s", req: [PARAM_OPTION_CHANNEL]}, lineDetectionSchedule: { url: "%s%s:%s/ISAPI/Event/schedules/lineDetections/linedetection_video%s", req: [PARAM_OPTION_CHANNEL] }, VCADeviceCap: {url: "%s%s:%s/ISAPI/Intelligent/Capabilities"}, VCAChannelsList: {url: "%s%s:%s/ISAPI/Intelligent/intelliChannelList"}, VCAIntelliResource: {url: "%s%s:%s/ISAPI/Intelligent/channels/%s/intelliType", req: [PARAM_OPTION_CHANNEL]}, VCAIntelliCap: {url: "%s%s:%s/ISAPI/Intelligent/channels/%s/capabilities", req: [PARAM_OPTION_CHANNEL]}, VCAIntelliScenes: {url: "%s%s:%s/ISAPI/Intelligent/channels/%s/intelliTrace", req: [PARAM_OPTION_CHANNEL]}, VCAIntelliLibVer: { url: "%s%s:%s/ISAPI/Intelligent/channels/%s/intelliResource", req: [PARAM_OPTION_CHANNEL] }, VCAIntelliOverlayCap: { url: "%s%s:%s/ISAPI/Intelligent/channels/%s/intelliResource/capabilities", req: [PARAM_OPTION_CHANNEL] }, VCAIntelliShield: {url: "%s%s:%s/ISAPI/Intelligent/channels/%s/Shield", req: [PARAM_OPTION_CHANNEL]}, VCAIntelliTrack: {url: "%s%s:%s/ISAPI/Intelligent/channels/%s/zoomRatio", req: [PARAM_OPTION_CHANNEL]}, VCAIntelliFaceRuleCap: { url: "%s%s:%s/ISAPI/Intelligent/channels/%s/faceRule/Capabilities", req: [PARAM_OPTION_CHANNEL] }, VCAIntelliFaceRule: {url: "%s%s:%s/ISAPI/Intelligent/channels/%s/faceRule", req: [PARAM_OPTION_CHANNEL]}, delVCAIntelliScene: { url: "%s%s:%s/ISAPI/Intelligent/channels/%s/intelliTrace/%s", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCENE] }, VCAIntelliSceneParam: { url: "%s%s:%s/ISAPI/Intelligent/channels/%s/intelliTrace/%s", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCENE] }, VCAIntelliSaveSceneLocation: { url: "%s%s:%s/ISAPI/Intelligent/channels/%s/scenePtz/%s", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCENE] }, VCAIntelliGotoSceneLocation: { url: "%s%s:%s/ISAPI/Intelligent/channels/%s/scenePtz/%s/goto", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCENE] }, VCAIntelliPTZLimit: { url: "%s%s:%s/ISAPI/Intelligent/channels/%s/PTZLimited/%s/%s", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCENE, PARAM_OPTION_DERECTION] }, VCAIntelliGotoPTZLimit: { url: "%s%s:%s/ISAPI/Intelligent/channels/%s/PTZLimited/%s/%s/goto", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCENE, PARAM_OPTION_DERECTION] }, VCAIntelliSceneRule: { url: "%s%s:%s/ISAPI/Intelligent/channels/%s/behaviorRule/%s", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCENE] }, VCAIntelliCalibration: { url: "%s%s:%s/ISAPI/Intelligent/channels/%s/calibration", req: [PARAM_OPTION_CHANNEL] }, VCAIntelliCalibrationVerify: { url: "%s%s:%s/ISAPI/Intelligent/channels/%s/calibration/verify", req: [PARAM_OPTION_CHANNEL] }, VCAIntelliAdvanceParam: { url: "%s%s:%s/ISAPI/Intelligent/channels/%s/AlgParam", req: [PARAM_OPTION_CHANNEL] }, VCAIntelliRestartLib: { url: "%s%s:%s/ISAPI/Intelligent/channels/%s/restoreBehaviorLib", req: [PARAM_OPTION_CHANNEL] }, VCAIntelliRestoreLib: { url: "%s%s:%s/ISAPI/Intelligent/channels/%s/restoreAlgParam", req: [PARAM_OPTION_CHANNEL] }, VCAIntelliSceneSchedule: { url: "%s%s:%s/ISAPI/Intelligent/channels/%s/behaviorRule/%s/schedules", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCENE] }, VCAIntelliSceneLinkage: { url: "%s%s:%s/ISAPI/Intelligent/channels/%s/behaviorRule/%s/notifications", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCENE] }, VCAIntelliSceneRuleCap: { url: "%s%s:%s/ISAPI/Intelligent/channels/%s/behaviorRule/%s/rule/capabilities", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCENE] }, countingCap: { url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/counting/capabilities", req: [PARAM_OPTION_CHANNEL] }, counting: {url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/counting", req: [PARAM_OPTION_CHANNEL]}, countingLink: {url: "%s%s:%s/ISAPI/Event/triggers/counting-%s", req: [PARAM_OPTION_CHANNEL]}, countingSchdule: { url: "%s%s:%s/ISAPI/Event/schedules/countings/counting_video%s", req: [PARAM_OPTION_CHANNEL] }, countingSearch: { url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/counting/search", req: [PARAM_OPTION_CHANNEL] }, resetCount: { url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/counting/resetCount", req: [PARAM_OPTION_CHANNEL] }, clearFlashCouting: { url: "%s%s:%s/ISAPI/ContentMgmt/FlashStorage/remove/channels/%s", req: [PARAM_OPTION_CHANNEL] }, recommendDemaWidth: { url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/counting/RecommendValue", req: [PARAM_OPTION_CHANNEL] }, faceCaptrueSearch: { url: "%s%s:%s/ISAPI/Intelligent/channels/%s/faceCaptureStatistics/search", req: [PARAM_OPTION_CHANNEL] }, imgTypeCapa: {url: "%s%s:%s/ISAPI/ContentMgmt/Capabilities"}, recordTypeCapa: { url: "%s%s:%s/ISAPI/ContentMgmt/record/tracks/%s01/capabilities", req: [PARAM_OPTION_CHANNEL] }, vehicleDetect: {url: "%s%s:%s/ISAPI/Traffic/channels/%s/vehicleDetect", req: [PARAM_OPTION_CHANNEL]}, vehicleDetectCap: {url: "%s%s:%s/ISAPI/Traffic/capabilities"}, HVTVehicleDetect: {url: "%s%s:%s/ISAPI/Traffic/channels/%s/HVTVehicleDetects", req: [PARAM_OPTION_CHANNEL]}, vehicleDetectScene: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/vehicleDetect/%s", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCENE] }, HVTVehicleDetectScene: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/HVTVehicleDetects/%s", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCENE] }, vehicleSchedule: {url: "%s%s:%s/ISAPI/Event/schedules/vehicledetects/%s", req: [PARAM_OPTION_CHANNEL]}, HVTVehicleSchedule: { url: "%s%s:%s/ISAPI/Event/schedules/HVTVehicleDetects/%s", req: [PARAM_OPTION_CHANNEL] }, vehicleLinkage: {url: "%s%s:%s/ISAPI/Event/triggers/vehicledetection-%s", req: [PARAM_OPTION_CHANNEL]}, HVTVehicleLinkage: { url: "%s%s:%s/ISAPI/Event/triggers/HVTVehicleDetection-%s", req: [PARAM_OPTION_CHANNEL] }, vehicleCalibration: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/vehicleCalibration", req: [PARAM_OPTION_CHANNEL] }, vehicleDetectionType: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/CurVehicleDetectMode", req: [PARAM_OPTION_CHANNEL] }, vehicleBlackSchedule: { url: "%s%s:%s/ISAPI/Event/schedules/blackList/blackList-%s", req: [PARAM_OPTION_CHANNEL] }, vehicleBlackLinkage: {url: "%s%s:%s/ISAPI/Event/triggers/blackList-%s", req: [PARAM_OPTION_CHANNEL]}, vehicleWhiteSchedule: { url: "%s%s:%s/ISAPI/Event/schedules/whiteList/whiteList-%s", req: [PARAM_OPTION_CHANNEL] }, vehicleWhiteLinkage: {url: "%s%s:%s/ISAPI/Event/triggers/whiteList-%s", req: [PARAM_OPTION_CHANNEL]}, triggerCap: {url: "%s%s:%s/ISAPI/Event/triggersCap"}, cloudStorageCap: { url: "%s%s:%s/ISAPI/ContentMgmt/channels/%s/cloudStorage/%s/capabilities", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_CLOUD] }, cloudStorage: { url: "%s%s:%s/ISAPI/ContentMgmt/channels/%s/cloudStorage/%s", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_CLOUD] }, cloudStorageTest: { url: "%s%s:%s/ISAPI/ContentMgmt/channels/%s/cloudStorage/test", req: [PARAM_OPTION_CHANNEL] }, liteStorageCap: { url: "%s%s:%s/ISAPI/ContentMgmt/channels/%s/liteStorage/capabilities", req: [PARAM_OPTION_CHANNEL] }, liteStorage: {url: "%s%s:%s/ISAPI/ContentMgmt/channels/%s/liteStorage", req: [PARAM_OPTION_CHANNEL]}, vehicleCamera: {url: "%s%s:%s/ISAPI/Traffic/channels/%s/cameraInfo", req: [PARAM_OPTION_CHANNEL]}, HVTVehicleCamera: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/HVTVehicleDetects/cameraInfo", req: [PARAM_OPTION_CHANNEL] }, vehiclePicture: {url: "%s%s:%s/ISAPI/Traffic/channels/%s/picParam", req: [PARAM_OPTION_CHANNEL]}, HVTVehiclePicture: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/HVTVehicleDetects/picParam", req: [PARAM_OPTION_CHANNEL] }, vehiclePictureCap: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/picParam/capabilities", req: [PARAM_OPTION_CHANNEL] }, HVTVehiclePictureCap: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/HVTVehicleDetects/picParam/capabilities", req: [PARAM_OPTION_CHANNEL] }, workMode: {url: "%s%s:%s/ISAPI/ContentMgmt/workmode"}, workModeCap: {url: "%s%s:%s/ISAPI/ContentMgmt/workmode/capabilities"}, platformRestore: {url: "%s%s:%s/ISAPI/MegaPlatform/PlatReset?mode=%s", req: [PARAM_OPTION_MODE]}, platformVSB: {url: "%s%s:%s/ISAPI/MegaPlatform/VSB"}, platformNMS: {url: "%s%s:%s/ISAPI/MegaPlatform/NetManagerAccess"}, platformAccess: {url: "%s%s:%s/ISAPI/MegaPlatform/PlatformAccess"}, service28181: {url: "%s%s:%s/ISAPI/System/Network/GB28181Service"}, WLAlarmCap: {url: "%s%s:%s/ISAPI/WLAlarm/capabilities"}, telecontrol: {url: "%s%s:%s/ISAPI/WLAlarm/telecontrol"}, DualVCACap: {url: "%s%s:%s/ISAPI/Streaming/channels/%s/dualVCA", req: [PARAM_OPTION_CHANNEL]}, regCropCap: { url: "%s%s:%s/ISAPI/Streaming/channels/%s%s/regionClip/capabilities", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_STREAM] }, regCropInfo: { url: "%s%s:%s/ISAPI/Streaming/channels/%s%s/regionClip", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_STREAM] }, disarmByRemoter: {url: "%s%s:%s/ISAPI/WLAlarm/telecontrol/disarming"}, studyByRemoter: {url: "%s%s:%s/ISAPI/WLAlarm/telecontrol/study"}, studyByWLS: {url: "%s%s:%s/ISAPI/WLAlarm/WLSensors/%s/study", req: [PARAM_OPTION_SENSOR]}, requestKeyFrame: { url: "%s%s:%s/ISAPI/Streaming/channels/%s0%s/requestKeyFrame", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_STREAM] }, heatMapCap: { url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/heatMap/capabilities", req: [PARAM_OPTION_CHANNEL] }, heatMap: {url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/heatMap", req: [PARAM_OPTION_CHANNEL]}, heatMapRegion: { url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/heatMap/regions/%s", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_REGION] }, heatMapLinkage: {url: "%s%s:%s/ISAPI/Event/triggers/heatMap-%s", req: [PARAM_OPTION_CHANNEL]}, heatMapSchdule: { url: "%s%s:%s/ISAPI/Event/schedules/heatMaps/heatmap_video%s", req: [PARAM_OPTION_CHANNEL] }, heatMapSearch: { url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/heatMap/search", req: [PARAM_OPTION_CHANNEL] }, heatMapPicInfo: { url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/heatMap/pictureInfo", req: [PARAM_OPTION_CHANNEL] }, proportionalPan: {url: "%s%s:%s/ISAPI/Image/channels/1/proportionalpan"}, imageFreeze: {url: "%s%s:%s/ISAPI/Image/channels/1/imageFreeze"}, ptzChannel: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1"}, ptzSpeed: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/ptzspeed"}, maxElevationCap: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/maxelevation/capabilities"}, maxElevation: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/maxelevation"}, autoFlip: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/autoflip"}, ptzOSDDisplay: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/PTZOSDDisplay"}, ptzPowerOff: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/saveptzpoweroff"}, ptzLimiteds: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/ptzlimiteds"}, ptzLimited: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/ptzlimiteds/%s", req: [PARAM_OPTION_LIMIT]}, deletePtzLimited: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/ptzlimiteds/%s", req: [PARAM_OPTION_LIMIT]}, ptzLimitedConfirm: { url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/ptzlimiteds/%s/confirm", req: [PARAM_OPTION_LIMIT] }, ptzLimitedInit: { url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/ptzlimiteds/%s/Initialization", req: [PARAM_OPTION_LIMIT] }, ptzHomePos: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/homePosition"}, deletePtzHomePos: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/homePosition"}, gotoPtzHomePos: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/homePosition/goto"}, ptzParkCap: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/parkaction/capabilities"}, ptzPark: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/parkaction"}, deleteAllPreset: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/presets"}, deleteAllPatrol: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/patrols"}, deleteAllPattern: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/patterns"}, deleteAllPrivacy: {url: "%s%s:%s/ISAPI/System/Video/inputs/channels/1/privacyMask/regions"}, deleteAllLimit: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/ptzlimiteds"}, deleteAllTask: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/timetasks"}, deleteAllPark: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/parkaction"}, ptzIntelTrack: {url: "%s%s:%s/ISAPI/Smart/IntelliTrace/1"}, zoomRatial: {url: "%s%s:%s/ISAPI/Smart/IntelliTrace/1/ZoomRatial"}, ptzPriority: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/ptzpriority"}, ptzWiper: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/Wiper"}, ptzTimeTask: {url: "%s%s:%s/ISAPI/PTZCtrl/channels/1/timetasks"}, ptzPrivacyMaskCap: {url: "%s%s:%s/ISAPI/System/Video/inputs/channels/1/privacyMask/privacyMaskCap"}, ptzPrivacyMask: {url: "%s%s:%s/ISAPI/System/Video/inputs/channels/1/privacyMask"}, ptzPrivacyMaskRegion: { url: "%s%s:%s/ISAPI/System/Video/inputs/channels/1/privacyMask/regions/%s", req: [PARAM_OPTION_REGION] }, deletePrivacyMaskRegion: { url: "%s%s:%s/ISAPI/System/Video/inputs/channels/1/privacyMask/regions/%s", req: [PARAM_OPTION_REGION] }, compassCap: {url: "%s%s:%s/ISAPI/Compass/channels/%s/capabilities", req: [PARAM_OPTION_CHANNEL]}, vandalProofAlarm: {url: "%s%s:%s/ISAPI/Compass/channels/%s/vandalProofAlarm", req: [PARAM_OPTION_CHANNEL]}, calibrate: {url: "%s%s:%s/ISAPI/Compass/channels/%s/calibrate", req: [PARAM_OPTION_CHANNEL]}, pointToNorth: {url: "%s%s:%s/ISAPI/Compass/channels/%s/pointToNorth", req: [PARAM_OPTION_CHANNEL]}, reviseGPSCap: {url: "%s%s:%s/ISAPI/GIS/channels/%s/reviseGPS/capabilities", req: [PARAM_OPTION_CHANNEL]}, reviseGPS: {url: "%s%s:%s/ISAPI/GIS/channels/%s/reviseGPS", req: [PARAM_OPTION_CHANNEL]}, compassWorkMode: {url: "%s%s:%s/ISAPI/Compass/channels/%s/workMode", req: [PARAM_OPTION_CHANNEL]}, eventTriggerCap: {url: "%s%s:%s/ISAPI/Event/triggersCap"}, roadDetectionCap: {url: "%s%s:%s/ISAPI/ITC/capability"}, VCAResourceCap: { url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/VCAResource/capabilities", req: [PARAM_OPTION_CHANNEL] }, VCAResource: { url: "%s%s:%s/ISAPI/System/Video/inputs/channels/%s/VCAResource", req: [PARAM_OPTION_CHANNEL] }, vehicleType: {url: "%s%s:%s/ISAPI/Traffic/channels/%s/CurVehicleDetectMode", req: [PARAM_OPTION_CHANNEL]}, evidenceCap: {url: "%s%s:%s/ISAPI/Traffic/channels/%s/capability", req: [PARAM_OPTION_CHANNEL]}, evidenceCamera: {url: "%s%s:%s/ISAPI/Traffic/channels/%s/basic", req: [PARAM_OPTION_CHANNEL]}, evidenceMerge: {url: "%s%s:%s/ISAPI/Traffic/channels/%s/imageMerge", req: [PARAM_OPTION_CHANNEL]}, evidenceOverlay: {url: "%s%s:%s/ISAPI/Traffic/channels/%s/overlap", req: [PARAM_OPTION_CHANNEL]}, evidenceVCA: {url: "%s%s:%s/ISAPI/Traffic/channels/%s/edfAlg", req: [PARAM_OPTION_CHANNEL]}, evidenceRestoreVCA: {url: "%s%s:%s/ISAPI/Traffic/channels/%s/edfRestoreParam", req: [PARAM_OPTION_CHANNEL]}, evidenceManualCapture: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/edfManualItsCap", req: [PARAM_OPTION_CHANNEL] }, evidenceViolationType: {url: "%s%s:%s/ISAPI/Traffic/violationTypeStd"}, evidenceRemoter: {url: "%s%s:%s/ISAPI/Traffic/remoteHost"}, evidenceSceneInfo: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/sceneinfo/%s", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCENE] }, evidenceSceneParam: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/baseParam/%s", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCENE] }, evidenceSetSceneLocation: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/scenePtz/%s", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCENE] }, evidenceGetSceneLocation: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/scenePtz/%s/goto", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCENE] }, evidenceSceneCalibration: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/calibration/%s", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCENE] }, evidenceSceneRules: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/eventRule/%s", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCENE] }, evidenceFTPUpload: {url: "%s%s:%s/ISAPI/Traffic/ftp"}, evidenceSpecialParam: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/transparentData", req: [PARAM_OPTION_CHANNEL] }, evidenceScenePatrol: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/sceneCruiseSchedule", req: [PARAM_OPTION_CHANNEL] }, ipdMountScenarioCap: { url: "%s%s:%s/ISAPI/Image/channels/%s/mountingScenario/capabilities", req: [PARAM_OPTION_CHANNEL] }, ipdMountScenario: {url: "%s%s:%s/ISAPI/Image/channels/%s/mountingScenario", req: [PARAM_OPTION_CHANNEL]}, imgRestore: {url: "%s%s:%s/ISAPI/Image/channels/%s/restore", req: [PARAM_OPTION_CHANNEL]}, phoneSadpInfo: {url: "%s%s:%s/ISAPI/System/discoveryMode"}, MulticastInfo: {url: "%s%s:%s/ISAPI/Streaming/channels/101"}, imgISPMode: {url: "%s%s:%s/ISAPI/Image/channels/%s/ISPMode", req: [PARAM_OPTION_CHANNEL]}, trafficAdvancedParam: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/edfAdvancedAlgCfg", req: [PARAM_OPTION_CHANNEL] }, trafficVehicleLane: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/MprParam/%s", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_SCENE] }, trafficManualTrackMode: { url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/ManualTraceEvidenceMode", req: [PARAM_OPTION_CHANNEL] }, trafficManualTrackCapture: { url: "%s%s:%s/ISAPI/PTZCtrl/channels/%s/ManualTraceEvidenceArea", req: [PARAM_OPTION_CHANNEL] }, trafficVehicleCounting: {url: "%s%s:%s/ISAPI/Traffic/channels/%s/VCS", req: [PARAM_OPTION_CHANNEL]}, brokenTrans: {url: "%s%s:%s/ISAPI/Traffic/ANR"}, evidenceVoiceTrigger: {url: "%s%s:%s/ISAPI/Traffic/channels/%s/voiceTrigger", req: [PARAM_OPTION_CHANNEL]}, evidenceVoiceUpload: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/voice/%s", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_VOICE] }, evidenceVoicePlay: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/voice/%s/play", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_VOICE] }, evidenceVoiceDelete: { url: "%s%s:%s/ISAPI/Traffic/channels/%s/voice/%s/upload", req: [PARAM_OPTION_CHANNEL, PARAM_OPTION_VOICE] }, panoramicMapCap: {url: "%s%s:%s/ISAPI/Panorama/capabilities"}, algVersionInfo: {url: "%s%s:%s/ISAPI/Traffic/algVersionInfo"}, violationDict: {url: "%s%s:%s/ISAPI/ITC/illegalDictionary"}, violationDictReset: {url: "%s%s:%s/ISAPI/ITC/illegalDictionary/reset"}, ITCCap: {url: "%s%s:%s/ISAPI/ITC/capabilities"}, webPing: {url: "%s%s:%s/%s", req: [PARAM_OPTION_URL]} }, this.findDeviceIndexByIP = function (e, t) { for (var a = 0; m_deviceSet.length > a; a++) if (m_deviceSet[a].m_szHostName == e) return a; return t !== void 0 && _callUserFun(HTTP_STATUS_401, null, t), -1 }, this.WSDK_DeviceLan = function (e, t, a, n) { var i = _FormatString(this.CGI.deviceLan.url, 2 == t ? "https://" : "http://", e, a), o = {type: "GET", url: i, success: null, error: null}; $.extend(o, n), $.extend(o, { success: function (e, t) { "function" == typeof n.success && n.success(e, t) }, error: function (e, t) { "function" == typeof n.error && n.error(e, t) } }), _submitRequest(i, o) }, this.WSDK_Activate = function (e, t, a, n) { var i = _FormatString(this.CGI[n.cmd].url, 2 == t ? "https://" : "http://", e, a), o = {type: "GET", url: i, success: null, error: null}; $.extend(o, n), $.extend(o, { success: function (e, t, a) { "function" == typeof n.success && n.success(e, t, a) }, error: function (e, t, a) { "function" == typeof n.error && n.error(e, t, a) } }), _submitRequest(i, o) }, this.WSDK_Login = function (e, t, a, n, i, o, r) { var s = this.findDeviceIndexByIP(e); if (-1 != s) return _PrintString("设备已经登录过"), void 0; var l = _FormatString(this.CGI.login.url, 2 == t ? "https://" : "http://", e, a, o), c = {type: "GET", url: l, username: n, password: i, success: null, error: null}; $.extend(c, r), $.extend(c, { success: function (o, s) { if ("200" === $(s).find("statusValue").eq(0).text()) { var l = new deviceInfoClass; l.m_szHostName = e, l.m_szHttpProtocol = 2 == t ? "https://" : "http://", l.iPort = a, l.szUserName = "******" == i ? "" : n, l.szPassword = "******" == i ? "" : i, m_deviceSet.push(l), _PrintString("登录成功"), _getChannelInfo(e), _getAlarmInputInfo(e), _getAlarmOutputInfo(e) } "function" == typeof r.success && r.success(o, s) }, error: function (e, t) { "function" == typeof r.error && r.error(e, t) } }), _submitRequest(l, c) }, this.WSDK_SetLoginInfo = function (e, t, a, n, i) { var o = this.findDeviceIndexByIP(e); if (-1 != o) return _PrintString("设备已经登录过"), m_deviceSet[o].m_szHttpProtocol = 2 == t ? "https://" : "http://", m_deviceSet[o].iPort = a, m_deviceSet[o].szUserName = "******" == i ? "" : n, m_deviceSet[o].szPassword = "******" == i ? "" : i, void 0; var r = new deviceInfoClass; r.m_szHostName = e, r.m_szHttpProtocol = 2 == t ? "https://" : "http://", r.iPort = a, r.szUserName = "******" == i ? "" : n, r.szPassword = "******" == i ? "" : i, m_deviceSet.push(r), _PrintString("设置登录信息成功"), _getChannelInfo(e), r.szUserName && (_getAlarmInputInfo(e), _getAlarmOutputInfo(e)) }, this.WSDK_GetDeviceConfig = function (e, t, a, n) { _checkCommond(t, n) && _submit(e, _getHttpMethod("get", t), _getCmd(t), a, n) }, this.WSDK_SetDeviceConfig = function (e, t, a, n) { _checkCommond(t, n) && _submit(e, _getHttpMethod("set", t), _getCmd(t), a, n) }, this.WSDK_PTZControl = function (e, t, a, n, i, o) { n = 7 > n ? 15 * n : 100, i && (n = 0); var r = [{}, {pan: 0, tilt: n}, {pan: 0, tilt: -n}, {pan: -n, tilt: 0}, {pan: n, tilt: 0}, { pan: -n, tilt: n }, {pan: -n, tilt: -n}, {pan: n, tilt: n}, { pan: n, tilt: -n }, {speed: -n}, {speed: n}, {speed: -n}, {speed: n}, {speed: -n}, {speed: n}, {speed: n}], s = null, l = ""; switch (a) { case 1: case 2: case 3: case 4: case 5: case 6: case 7: case 8: s = this.CGI.ptzControl, l = "" + r[a].pan + "" + "" + r[a].tilt + "" + ""; break; case 9: case 10: s = this.CGI.ptzControl, l = "" + r[a].speed + "" + ""; break; case 11: case 12: s = this.CGI.ptzFocus, l = "" + r[a].speed + "" + ""; break; case 13: case 14: s = this.CGI.ptzIris, l = "" + r[a].speed + "" + ""; break; case 15: s = this.CGI.ptzAutoControl, l = "" + r[a].speed + "" + ""; break; default: } var c = "PUT", u = {data: l}; if ($.extend(u, o), null != s) { var d = {}; d[PARAM_OPTION_CHANNEL] = t, _submit(e, c, s, d, u) } else _callUserFun(WSDK_ERROR_COMMOD, null, u) }; var _PrintString = function () { if (m_bDebug) { var e = _FormatString(arguments); console.log(e) } }, _checkCommond = function (e, t) { return e in self.CGI ? !0 : (_callUserFun(WSDK_ERROR_COMMOD, null, t), !1) }, _getHttpMethod = function (e, t) { var a = "GET"; switch (e) { case"get": a = _gerGetMethod(t); break; case"set": a = _gerSetMethod(t); break; default: } return a }, _gerGetMethod = function (e) { var t = "GET"; switch (e) { case"monthRecordSearch": t = "POST"; break; case"recordSearch": t = "POST"; break; case"nasSeach": t = "POST"; break; case"logSearch": t = "POST"; break; case"ipTest": t = "POST"; break; case"countingSearch": t = "POST"; break; case"heatMapSearch": t = "POST"; break; case"testFtp": t = "POST"; break; case"testEmail": t = "POST"; break; case"testNTP": t = "POST"; break; case"faceCaptrueSearch": t = "POST"; break; case"dynamicCapWithCondition": t = "POST"; break; case"heatMapPicInfo": t = "POST"; break; default: } return t }, _gerSetMethod = function (e) { var t = "PUT"; switch (e) { case"deleteTamperRegion": t = "DELETE"; break; case"videoTamperRegion": t = "DELETE"; break; case"deleteCertificate": t = "DELETE"; break; case"deleteCertSignReq": t = "DELETE"; break; case"user": t = "POST"; break; case"userDelete": t = "DELETE"; break; case"addIpc": t = "POST"; break; case"deleteIpc": t = "DELETE"; break; case"delVCAIntelliScene": t = "DELETE"; break; case"deletePattern": t = "DELETE"; break; case"deletePatrol": t = "DELETE"; break; case"sourceCapability": t = "POST"; break; case"deletePtzLimited": t = "DELETE"; break; case"deletePtzHomePos": t = "DELETE"; break; case"deleteAllPreset": t = "DELETE"; break; case"deleteAllPatrol": t = "DELETE"; break; case"deleteAllPattern": t = "DELETE"; break; case"deleteAllPrivacy": t = "DELETE"; break; case"deleteAllLimit": t = "DELETE"; break; case"deleteAllTask": t = "DELETE"; break; case"deleteAllPark": t = "DELETE"; break; case"deletePrivacyMaskRegion": t = "DELETE"; break; case"deletePreset": t = "DELETE"; break; case"evidenceVoiceDelete": t = "DELETE"; break; default: } return t }, _getCmd = function (CommondString) { var oCommond; return eval("oCommond = self.CGI." + CommondString), oCommond }, _FormatString = function () { for (var e = arguments[0], t = 1; arguments.length > t; t++) e = "" !== arguments[t] ? e.replace("%s", arguments[t]) : e.replace("/%s", ""); return e }, _submit = function () { var e = arguments[0], t = arguments[1], a = arguments[2], n = arguments[3], i = arguments[4], o = self.findDeviceIndexByIP(e, i); if (-1 != o) { if (a.req !== void 0) for (var r = 0; a.req.length > r; r++) if (!(a.req[r] in n)) return _callUserFun(WSDK_ERROR_PARAMNUM, null, i), void 0; var s = m_deviceSet[o], l = ""; "string" != typeof a.url ? "analog" in a ? l = parseInt(n[PARAM_OPTION_CHANNEL], 10) <= s.iAnalogChannelNum ? a.analog.url : a.digital.url : "analogIOAI" in a ? l = parseInt(n[PARAM_OPTION_IO], 10) <= s.iAnalogAlarmInputNum ? a.analogIOAI.url : a.digitalIOAI.url : "analogIO" in a && (l = parseInt(n[PARAM_OPTION_IO], 10) <= s.iAnalogAlarmOutputNum ? a.analogIO.url : a.digitalIO.url) : l = a.url; var c = _FormatString(l, s.m_szHttpProtocol, s.m_szHostName, s.iPort); if (a.req !== void 0) for (var r = 0; a.req.length > r; r++) c = _FormatString(c, n[a.req[r]]); var u = {type: t, username: s.szUserName, password: s.szPassword}; $.extend(u, i), _submitRequest(c, u) } }, _submitRequest = function (e, t) { var a = new m_oTransMethord; a.submitRequest(e, t) }, _getChannelInfo = function (e) { var t = self.findDeviceIndexByIP(e); if (-1 != t) { var a = m_deviceSet[t]; _submit(e, "GET", self.CGI.AnalogChannelInfo, null, { async: !1, success: function (e, t) { a.iAnalogChannelNum = parseInt($(t).find("VideoInputChannel").length, 10) } }) } }, _getAlarmInputInfo = function (e) { var t = self.findDeviceIndexByIP(e); if (-1 != t) { var a = m_deviceSet[t]; _submit(e, "GET", self.CGI.AnalogAlarmInputInfo, null, { async: !1, success: function (e, t) { a.iAnalogAlarmInputNum = parseInt($(t).find("IOInputPort").length, 10) } }) } }, _getAlarmOutputInfo = function (e) { var t = self.findDeviceIndexByIP(e); if (-1 != t) { var a = m_deviceSet[t]; _submit(e, "GET", self.CGI.AnalogAlarmOutputInfo, null, { async: !1, success: function (e, t) { a.iAnalogAlarmOutputNum = parseInt($(t).find("IOOutputPort").length, 10) } }) } }, _callUserFun = function (e, t, a) { e != HTTP_STATUS_200 ? "function" == typeof a.error && a.error(e, t) : "function" == typeof a.success && a.success(e, t), "function" == typeof a.complete && a.complete(e, t) }, deviceInfoClass = function () { this.szIP = "", this.m_szHostName = "", this.szUserName = "", this.szPassword = "", this.m_szHttpProtocol = "http://", this.iPort = 80, this.szDeviceType = "", this.iAnalogChannelNum = 0, this.iDigitalChannelNum = 0, this.iAnalogAlarmInputNum = 0, this.iAnalogAlarmOutputNum = 0 }, transClient = function () { this.options = {timeout: 3e4, data: null, async: !0, complete: null, success: null, error: null} }; transClient.prototype.submitRequest = function () { }, transClient.prototype.processSuccessCB = function (e) { e && 4 == e.readyState && (HTTP_STATUS_200 == e.status ? "function" == typeof this.options.success && this.options.success(HTTP_STATUS_200, e.responseXML, e) : "function" == typeof this.options.error && this.options.error(e.status, e.responseXML, e)) }, transClient.prototype.processErrorCB = function (e, t) { 4 == e.readyState ? "function" == typeof this.options.error && this.options.error(e.status, e.responseXML, e) : ("timeout" == t || "error" == t) && "function" == typeof this.options.error && this.options.error(e.status, e.responseXML, e) }, transClient.prototype.processCompleteCB = function (e) { "function" == typeof this.options.complete && this.options.complete(e.status, e.responseXML, e) }; var jqueryAjaxClient = function () { transClient.call(this) }; jqueryAjaxClient.prototype = new transClient, jqueryAjaxClient.prototype.submitRequest = function (e, t) { $.extend(this.options, t); var a; a = "string" != typeof this.options.data || t.noParseToXml ? this.options.data : oUtils.parseXmlFromStr(this.options.data); var n = this; $.ajax({ type: n.options.type, beforeSend: function (e) { e.setRequestHeader("If-Modified-Since", "0") }, username: n.options.username, password: n.options.password, async: n.options.async, timeout: n.options.timeout, url: e, processData: !1, data: a, success: function (e, t, a) { n.processSuccessCB(a) }, error: function (e, t) { n.processErrorCB(e, t) }, complete: function (e) { n.processCompleteCB(e) } }) }, m_oTransMethord = jqueryAjaxClient } var oBase64, oUtils; oBase64 = require("base64"), oUtils = require("utils"), window.WebSDK = new WebSDK });