CGI

ReeCam IP Camera ajax v1.0

ipcamerea ajax使用文档

版本/作者/日期修改内容
1.0/Jos/2013-03-23初版
1.1/Jos/2013-04-20修改返回数据
1.2/Jos/2013-04-23修复同步模式
1.3/Jos/2013-05-22增加返回标记值
1.4/Jos/2013-05-24增加防御字典攻击

概述
ReeCam IP Camera ajax 库是提供给用户使用的一套web开发 应用 ReeCam IP Camera CGI 接口 的操作库,可提升效率,简化代码

通用函数

ipcamera_ajax(obj);

obj参数

*m:请求模式get或post 默认:get
*u:请求URL,可以带参数,如:close_session.cgi?session=1891048766
*d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
*f:执行后调用函数.这个函数包含3个参数:1,请求状态码 2,根据数据类型从服务器返回的数据 3,返回的标记值(非必须)
*t:请求超时时间 默认:0(不检测超时)
*a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
*h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式,如果使用https协议,需要加上https://
*j:传入标记值,返回在执行函数第三个参数上

完整示例

ipcamera_ajax({m:'get',u:'set_params.cgi?session=1891048766',d:{alias:'测试机'},f:function(error,d,j){
		if(error==0){
			alert(j+"保存成功!");
		}else{
			alert("发生错误:错误编号:"+s);
		}
	},t:4,a:false,h:'https://192.168.0.123:1081',j:'camera1'});
上面执行的结果就相当于访问了'https://192.168.0.123:1081/set_params.cgi?session=1891048766&alias='+encodeURIComponent('测试机')

数据返回

返回2个参数
  1.error返回代码 请求成功(0)或者失败(不等于0)
  2.返回的数据,当error等于0,返回json格式

error返回代码:
0   操作成功
-1  操作失败:认证错误
-2  操作失败:参数错误
-3  操作失败:达到最大的 session 数目
-4  操作失败:camera 内部错误
-5  操作失败:执行超时
-6  操作失败:错误或不支持的操作请求
-11 操作失败:url返回数据状态异常非200
-12 操作失败:执行callback发生错误或者返回的数据格式错误
-13 操作失败:请求超时
-14 操作失败:初始化ajax失败--请反馈你使用的浏览器版本
-15 操作失败:服务端没有该接口文件(跨域无法检测)

封装函数

  • 创建session
create_session(user,pwd,f,t,a,h)

参数

user/pwd:参数认证方式中需用到的登录用户名/密码
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

示例

create_session("admin","admin88",f:function(error,d){
		if(error==0){
			alert("登录成功 session:"+d.session+" group:"+d.group);
		}else{
			alert("发生错误:错误编号:"+error);
		}
	})

返回

session:创建 Session 的 ID
group:创建 Session 所具备的权限

参照 create_session.cgi会话类CGI

  • 注销session
close_session(s,f,t,a,h)

参数

s:要注销 session 的 ID
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 close_session.cgi会话类CGI

  • 查询当前 IP Camera 上存在的 Session 列表
get_session_list(d,f,t,a,h)

参数

d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 get_session_list.cgi会话类CGI

  • 查询 IP Camera 上是否设置有 MJPEG 编码的流
is_mjpeg_stream_exist(d,f,t,a,h)

参数

d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 is_mjpeg_stream_exist.cgi属性类CGI

  • 查询 IP Camera 的属性
get_properties(d,f,t,a,h)

参数

d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 get_properties.cgi属性类CGI

  • 查询 IP Camera 的参数
get_params(d,f,t,a,h)

参数

d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 get_params.cgi参数类CGI

  • 保存 IP Camera 的参数
set_params(d,f,t,a,h)

参数

d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 set_params.cgi参数类CGI

  • 查询 IP Camera 的状态
get_status(d,f,t,a,h)

参数

d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 get_status.cgi状态类CGI

  • 查询 IP Camera 的日志
get_log(d,f,t,a,h)

参数

d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 get_log.cgi

  • 请求 IP Camera 的音视频流
request_av(d,f,t,a,h)

参数

d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 request_av.cgi

  • PTZ 操作
ptz_control(command,d,f,t,a,h)

参数

command:PTZ 操作命令
d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 ptz_control.cgi控制类CGI

  • 手动录像
start_record(d,f,t,a,h)

参数

d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 start_record.cgi录像类CGI

  • 停止手动录像
stop_record(task,d,f,t,a,h)

参数

task:需停止的手动录像的任务 id 
d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 stop_record.cgi录像类CGI

  • 查找 SD 卡上满足条件的录像文件
search_record(d,f,t,a,h)

参数

d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 search_record.cgi录像类CGI

  • 删除 SD 卡上的指定录像文件
del_record(name,d,f,t,a,h)

参数

name:需删除的录像文件的名称
d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 del_record.cgi录像类CGI

  • 恢复 IP Camera 的出厂参数设置。恢复后,设备需重启后才能生效。
restore_factory(d,f,t,a,h)

参数

d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 restore_factory.cgi维护类CGI

  • 测试 IP Camera 上的邮件参数设置能否正常工作
mail_test(d,f,t,a,h)

参数

d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 mail_test.cgi其它类CGI

  • 搜索 Wi-Fi 热点
wifi_scan(d,f,t,a,h)

参数

d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 wifi_scan.cgi其它类CGI

  • 认证指定的用户
check_user(d,f,t,a,h)

参数

d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 CGI文档里的check_user.cgi

  • 新注册 skype 用户
register_skype_user(name,pwd,mail,d,f,t,a,h)

参数

name/pwd/mail:注册的新 skype 用户的相关信息
d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 register_skype_user.cgiSkype类CGI

  • 获取当前 skype 用户的好友列表
get_skype_contacts_list(d,f,t,a,h)

参数

d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 get_skype_contacts_list.cgiSkype类CGI

  • 查找 skype 联系人
search_skype_contact(key,d,f,t,a,h)

参数

key:查找的关键字
d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 search_skype_contact.cgiSkype类CGI

  • 增加 skype 好友
add_skype_contact(key,d,f,t,a,h)

参数

key:需增加的好友的名称
d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 add_skype_contact.cgiSkype类CGI

  • 删除 skype 好友
remove_skype_contact(key,d,f,t,a,h)

参数

key:需删除的好友的名称
d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 remove_skype_contact.cgiSkype类CGI

  • 获取字典攻击信息
get_badauth(d,f,t,a,h)

参数

d:请求的数据,除了和请求URL上的参数一样,区别在这里是json格式,并且会自动encodeURIComponent转换数据
f:执行后调用函数.这个函数包含2个参数:请求成功(success)或者失败(error),根据数据类型从服务器返回的数据
t:请求超时时间 默认:0(不检测超时)
a:异步(true)与同步(false),默认:true。跨域请求的数据类型:“JSONP”的要求的不支持同步操作。
   请注意,同步请求可能会暂时锁定浏览器,禁用任何行动,
h:请求域名(或者IP)与端口(80可以不写),该值不为空为使用jsonp模式

返回
参照 get_badauth.cgiget_badauth CGI?

库中附带2个函数

$id(id)
获取id的对象
in_array(a,b)
数组b中是否存在a

Attach:ajax-mini.js 5.56kb 压缩后
Attach:ajax.js 6.90kb

版权所有:深圳市瑞彩电子科技有限公司

信产部备案号:粤ICP备09050685号 技术支持:800069965