状态 CGI
版本/作者/日期 | 修改内容 |
---|---|
1.0/David/2013-03-30 | 初版 |
概述
用户可通过 CGI 来查询 IP Camera 的状态和日志。IP Camera 的状态包括:
名称 |
描述 |
time |
IP Camera 当前的时间,当前时间到 1970-1-1 00:00:00 GMT 所流逝的秒数 |
alarm |
IP Camera 当前报警状态 0:无报警 1:移动侦测报警 2:外部报警 3:声音侦测报警 |
upnp |
UPNP 状态 0:未动作 1:UPNP 成功 -1:未发现 IGD 设备 -2:无效的 IGD 设备 -3:UPNP 操作失败 |
ntp |
NTP 状态 0:未动作 1:NTP 成功 2:NTP 失败 |
record |
录像状态 0:当前未录像 1:当前正在录像 |
disk |
录像磁盘状态 0:未检测磁盘 -1:磁盘错误 -2:磁盘空间不足 >0:磁盘剩余空间百分比 |
ddns |
DDNS 状态 0:未动作 -1:参数错误 -2:访问服务器出错 -3:设备内部错误 100:3322 成功 101:3322 返回 BADSYS 102:3322 返回 BADAUTH 103:3322 返回 BADAGENT 104:3322 返回 NOTDONATOR 105:3322 返回 NOTFQDN 106:3322 返回 NOHOST 107:3322 返回 NOTYOURS 108:3322 返回 NOTACTIVE 109:3322 返回 NUMHOST 110:3322 返回 ABUSE 111:3322 返回 DNSERR 112:3322 返回 911 113:3322 未知错误 200:dyndns 成功 201:dyndns 返回 BADSYS 202:dyndns 返回 BADAGENT 203:dyndns 返回 BADAUTH 204:dyndns 返回 NOTDONATOR 205:dyndns 返回 NOTFQDN 206:dyndns 返回 NOHOST 207:dyndns 返回 NOTYOURS 208:dyndns 返回 NUMHOST 209:dyndns 返回 ABUSE 210:dyndns 返回 DNSERR 211:dyndns 返回 911 212:dyndns 未知错误 300:oray 标准服务成功 301:oray 专业服务成功 302:oray 返回用户名或密码错误 303:oray 返回主机名错误 304:oray 更新错误 305:oray 更新超时 306:oray 未知错误 400:9299 成功 401:9299 未知错误 402:9299 返回 ER(域名已过期) 403:9299 返回 DA(域名未激活) 404:9299 返回 SNE(用户或密码错误) 405:9299 返回 NE(域名不存在) 500:NOIP 成功 501:NOIP 返回 NOHOST 502:NOIP 返回 BADAUTH 503:NOIP 返回 BADAGENT 504:NOIP 返回 NOTDONATOR 505:NOIP 返回 ABUSE 506:NOIP 返回 911 507:NOIP 未知错误 DDNS_TRIDRO_ERR_OK = 600 DDNS_TRIDRO_ERR_NOT100 = 601, DDNS_TRIDRO_ERR_NOY = 602 DDNS_TRIDRO_ERR_TIMEOUT = 603 DDNS_TRIDRO_ERR_UNKNOWN = 604 DDNS_TRIDRO_NOERR = 605 // updating #define DDNS_EASYN_OK 700 #define DDNS_EASYN_NOAUTH 701 #define DDNS_EASYN_NOID 702 #define DDNS_EASYN_OVER 703 #define DDNS_EASYN_ERR_IDDISABLE 704 #define DDNS_EASYN_ERR_PARAM 705 #define DDNS_EASYN_UNKNOWN_ERR 706 |
tutk |
#define STATUS_TUTK_P2P_NOACTION 0 #define STATUS_TUTK_P2P_LOGGED_IN 1 #define STATUS_TUTK_P2P_LOGGING_IN 2 #define STATUS_TUTK_P2P_UNLICENSE -1 //The UID is not licensed or expired #define STATUS_TUTK_P2P_NOT_INITIALIZED -2 // The IOTC module is not initialized yet #define STATUS_TUTK_P2P_LOGIN_ALREADY_CALLED -3 //The device is already under login process currently #define STATUS_TUTK_P2P_FAIL_CREATE_SOCKET -4 // Fails to create sockets #define STATUS_TUTK_P2P_FAIL_SOCKET_OPT -5 //Fails to set up socket options #define STATUS_TUTK_P2P_FAIL_SOCKET_BIND -6 //Fails to bind sockets #define STATUS_TUTK_P2P_FAIL_CREATE_THREAD -7 // Fails to create threads #define STATUS_TUTK_P2P_FAIL_RESOLVE_HOSTNAME -8 //Cannot resolve masters host name #define STATUS_TUTK_P2P_TCP_TRAVEL_FAILED -9 //Cannot connect to masters in neither UDP nor TCP #define STATUS_TUTK_P2P_TCP_CONNECT_TO_SERVER_FAILED -10 //Cannot connect to IOTC servers in TCP #define STATUS_TUTK_P2P_NO_TCP_SUPPORT -11 //The device does not support TCP relay #define STATUS_TUTK_P2P_SERVER_NOT_RESPONSE -12 //IOTC servers have no response #define STATUS_TUTK_P2P_FAIL_GET_LOCAL_IP -13 //Fails to get the devices local IP address #define STATUS_TUTK_P2P_NETWORK_UNREACHABLE -14 //Network is unreachable |
skype 只适用于 RC9264 |
#define STATUS_SKYPE_NOACTION 0 #define STATUS_SKYPE_LOGGED_IN 1 #define STATUS_SKYPE_LOGGING_IN 2 #define STATUS_SKYPE_LOGGING_OUT 3 #define STATUS_SKYPE_UNKNOWN_ERROR -1 #define STATUS_SKYPE_HTTPS_PROXY_AUTH_FAILED -2 #define STATUS_SKYPE_SOCKS_PROXY_AUTH_FAILED -3 #define STATUS_SKYPE_P2P_CONNECT_FAILED -4 #define STATUS_SKYPE_SERVER_CONNECT_FAILED -5 #define STATUS_SKYPE_SERVER_OVERLOADED -6 #define STATUS_SKYPE_DB_IN_USE -7 #define STATUS_SKYPE_INVALID_SKYPENAME -8 #define STATUS_SKYPE_INVALID_EMAIL -9 #define STATUS_SKYPE_UNACCEPTABLE_PASSWORD -10 #define STATUS_SKYPE_SKYPENAME_TAKEN -11 #define STATUS_SKYPE_REJECTED_AS_UNDERAGE -12 #define STATUS_SKYPE_NO_SUCH_IDENTITY -13 #define STATUS_SKYPE_INCORRECT_PASSWORD -14 #define STATUS_SKYPE_TOO_MANY_LOGIN_ATTEMPTS -15 #define STATUS_SKYPE_PASSWORD_HAS_CHANGED -16 #define STATUS_SKYPE_PERIODIC_UIC_UPDATE_FAILED -17 #define STATUS_SKYPE_DB_DISK_FULL -18 #define STATUS_SKYPE_DB_IO_ERROR -19 #define STATUS_SKYPE_DB_CORRUPT -20 #define STATUS_SKYPE_DB_FAILURE -21 #define STATUS_SKYPE_INVALID_APP_ID -22 #define STATUS_SKYPE_APP_ID_FAILURE -23 #define STATUS_SKYPE_UNSUPPORTED_VERSION -24 #define STATUS_SKYPE_OFFLINE -25 |
IP Camera 的日志分类有:
事件 ID |
事件描述 |
事件分类 |
0x00000 |
设备启动 |
系统 |
0x00001 |
HTTPS 错误 |
系统 |
0x00002 |
磁盘空间已满 |
系统 |
0x00003 |
磁盘出错 |
系统 |
0x10000 |
授权用户访问 |
用户 |
0x10001 |
拒绝用户访问 |
用户 |
0x10002 |
拒绝 Session 访问 |
用户 |
0x10003 |
用户创建 Session |
用户 |
0x10004 |
用户结束 Session |
用户 |
0x10005 |
Session 被设备终止 |
用户 |
0x20000 |
发送邮件成功 |
邮件 |
0x20001 |
发送邮件失败:系统错误 |
邮件 |
0x20002 |
发送邮件失败:参数错误 |
邮件 |
0x20003 |
发送邮件失败:无法连接服务器 |
邮件 |
0x20004 |
发送邮件失败:STARTTLS 失败 |
邮件 |
0x20005 |
发送邮件失败:TLS 失败 |
邮件 |
0x20006 |
发送邮件失败:服务器错误 |
邮件 |
0x20007 |
发送邮件失败:不支持的认证方式 |
邮件 |
0x20008 |
发送邮件失败:用户认证失败 |
邮件 |
0x20009 |
发送邮件失败:邮件被拒绝 |
邮件 |
0x30000 |
报警停止 |
报警 |
0x30001 |
移动侦测报警 |
报警 |
0x30002 |
外部报警 |
报警 |
0x30003 |
声音侦测报警 |
报警 |
0x30004 |
报警动作失败 |
报警 |
查询 IP Camera 的状态
get_status.cgi
- 权限要求:
无
- 语法:
/get_status.cgi[?user=&pwd=&session=&json=&jsonp_callback=&status=&…&status=]
- 参数:
user/pwd:参数认证方式中需用到的登录用户名/密码 session:Session 认证方式需用到的 Session ID json/jsonp_callback:返回 json 类型数据设置 status:需要查询的状态名称和所对应的返回的变量名称,形式为: status_name=var_name status_name 为要查询的状态名称,var_name为所对应的返回的变量名称。如果要查询多个状态,则设置多个,如没有设置,则按照缺省变量名,返回全部状态。
- 返回:
返回需要查询的状态的变量定义。
- 示例:
http://192.168.0.188/get_status.cgi?session=1891048766&time=t&alarm=&upnp=u IP Camera 返回: var t=1309768553; var alarm=0; var u=1; http://192.168.0.188/get_status.cgi?session=1891048766 IP Camera 返回全部的状态: var time=1309768641; var alarm=0; var upnp=1; var ntp=1; var record=0; var disk=-1; var ddns=100;
查询 IP Camera 的日志
get_log.cgi
- 权限要求:
管理者
- 语法:
/get_log.cgi[?user=&pwd=&session=&json=&jsonp_callback=&number=&t=&event=&event_user=&ip=]
- 参数:
user/pwd:参数认证方式中需用到的登录用户名/密码 session:Session 认证方式需用到的 Session ID json/jsonp_callback:返回 json 类型数据设置 t/event/event_user/ip/number:返回的相应的变量名称设置,注意 event_user 对应的缺省变量名为 user,即没有附带 event_user 参数或设 event_user 为空,返回的用户名为 user。
- 返回:
如果是返回 js 文本: t:数组变量,事件的发生时间 event:数组变量,事件的 ID user:数组变量,产生事件的访问用户,可以为空 ip:数组变量,产生事件的访问 IP 地址,可以为空 number:数组中的变量数目,即事件数目 否则,返回 log 对象数组,log 对象包括:t, event, user, ip
- 示例:
http://192.168.0.188/get_logs.cgi?session=1891048766&t=time&number=n IP Camera 返回: var event=new Array(); var time=new Array(); var user=new Array(); var ip=new Array(); event[0]=65536; time[0]=1309775672; user[0]='admin'; ip[0]='192.168.0.16'; event[1]=65537; time[1]=1309775670; user[1]=''; ip[1]='192.168.0.16'; event[2]=65536; time[2]=1309775651; user[2]='admin'; ip[2]='192.168.0.16'; event[3]=65536; time[3]=1309775631; user[3]='admin'; ip[3]='192.168.0.16'; event[4]=131072; time[4]=1309774476; user[4]=''; ip[4]=''; event[5]=131072; time[5]=1309774459; user[5]=''; ip[5]=''; event[6]=65539; time[6]=1309774435; user[6]='admin'; ip[6]='192.168.0.16'; event[7]=65536; time[7]=1309774435; user[7]='admin'; ip[7]='192.168.0.16'; event[8]=3; time[8]=24; user[8]=''; ip[8]=''; var n=9;