ezOpen
概述
萤石云简介
萤石云是一个视频云平台,萤石业务涵盖萤石云视频APP、萤石云视频服务平台、系列互联网产品(摄像机、硬盘录像机、视频盒子、报警盒子、云存储)等。
萤石云特色功能
一站式VPaaS提供商:智能相机、萤石IOT云、高性能分发网络、全平台SDK、ALL in One。
丰富的功能开放:包含实时视频、录像回放、双向语音、远程控制、消息推送、智能分析。
极简应用集成:使用简单但强大的开发组件,即可轻松在您的应用中集成视频功能。
ezOpen模块封装了萤石云的EZOpenSDK,使用此模块可轻松把萤石云集成到自己的app内,可以实现播放实时监控画面,支持播放/暂停及回放。
注意
- 不能与bMap共同使用
init
初始化
init(params,callback(ret))
params
enableP2P:
- 参数:布尔类型
- 描述:是否支持P2P取流
- 默认:true
appKey:
- 参数:字符串类型
- 描述:申请的appKey
accessToken:
- 类型:字符串类型
- 描述:(可选项)授权登录获取的accessToken,不传时可用openLoginPage接口打开登陆页面登陆
callback(ret)
ret:
- 类型:JSON 对象
- 内部字段:
{
status: true , //布尔类型;是否成功,true|false
}
示例代码
var ezOpen = api.require('ezOpen');
var params = {
appKey:'',
accessToken:''
};
ezOpen.init(params,function(ret) {
api.alert(ret);
});
可用性
iOS系统,android系统
可提供的1.0.0及更高版本
openLoginPage
打开登陆页面
openLoginPage(params,callback(ret))
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.openLoginPage();
可用性
iOS系统,android系统
可提供的1.0.9及更高版本
setLoginListener
设置登陆成功监听
setLoginListener(params,callback(ret))
callback(ret)
ret:
类型:JSON对象
描述:播放结果;
内部字段:
{
status:, //布尔类型,是否成功
}
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.setLoginListener(function(ret,err){
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.9及更高版本
getDeviceList
获取设备列表
getDeviceList(params,callback(ret))
params
pageIndex:
- 参数:数字类型
- 描述:(可选项)分页当前页码(从0开始)
- 默认:0
pageSize:
- 参数:数字类型
- 描述:(可选项)分页每页数量(建议20以内)
- 默认:10
callback(ret)
ret:
- 类型:JSON对象
- 描述:播放结果;
- 内部字段:
{
status:true //布尔类型;是否成功,true|false
devices:[{
deviceSerial:'',//字符串类型;设备序列号
cameraNum:0,//数字类型;设备关联的通道数量
defence:0,//数字类型;具有防护能力的设备布撤防状态:0-睡眠,8-在家,16-外出,普通IPC布撤防状态:0-撤防,1-布防
detectorNum:0,//数字类型;设备关联的探测器数量
deviceName:'',//字符串类型;设备名称
deviceType:'',//字符串类型;设备类型
deviceVersion:'',//字符串类型;设备版本号
deviceCover:'',//字符串类型;设备图片
isEncrypt:true,//布尔类型;设备是否开启加密
isSupportPTZ:true,//布尔类型;是否支持云台控制
isSupportZoom:true,//布尔类型;是否支持放大
isSupportAudioOnOff:true,//布尔类型;是否支持提示音开关
isSupportMirrorCenter:true,//布尔类型;是否支持中心镜像翻转
isSupportTalk:0,//数字类型;是否支持对讲 0-不支持对讲,1-支持全双工对讲,3-支持半双工对讲
category:'',//字符串类型;设备大类
addTime:0,//数字类型;添加时间,时间戳
status:0,//数字类型;设备状态,1-在线,2-不在线
cameraInfos:[{. //json数组,设备关联的通道信息
deviceSerial:'',//字符串类型;设备序列号
cameraNo:0,//数字类型;通道号
cameraName:'',//字符串类型;摄像头名称
cameraCover:'',//字符串类型;通道封面
videoLevel:0,//数字类型;视频质量,0-流畅,1-均衡,2-高清,3-超清
permission:0,//数字类型;权限
status:0,//数字类型;设备状态,1-在线,2-不在线
isEncrypt:true,//布尔类型;设备是否开启加密、
}]
}]
}
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.getDeviceList({
pageIndex:0,
pageSize:10
},function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.0及更高版本
logout
账户注销接口
logout(callback(ret))
callback(ret)
ret:
- 类型:JSON对象
- 描述:播放结果;
- 内部字段:
{
status:true //布尔类型;是否成功,true|false
}
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.logout(function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.0及更高版本
open
打开播放页面
open(params,callback(ret))
params
deviceSerial:
- 类型:字符串类型
- 描述:设备序列号
cameraNo:
- 类型:数字类型
- 描述:通道号
verifyCode:
- 类型:字符串类型
- 描述:(可选项)播放器解码密码
rect:
- 类型:JSON对象
- 描述:(可选项)播放画面的位置及长宽
{
x: 0, //(可选项)数字类型;播放画面 x 坐标(相对于所属的 Window 或 Frame);默认值:0
y: 0, //(可选项)数字类型;播放画面 y 坐标(相对于所属的 Window 或 Frame);默认值:0
w: 320, //(可选项)数字类型;iOS支持设置'auto';播放画面宽(相对于所属的 Window 或 Frame);默认值:屏幕宽度
h: 300, //(可选项)数字类型;iOS支持设置'auto';播放画面高(相对于所属的 Window 或 Frame);默认值:300
}
fixedOn:
- 类型:字符串类型
- 描述:(可选项)模块视图添加到指定 frame 的名字(只指 frame,传 window 无效)
- 默认:模块依附于当前 window
fixed:
- 类型:布尔
- 描述:(可选项)模块是否随所属 window 或 frame 滚动
- 默认值:true(不随之滚动)
callback(ret)
ret:
- 类型:JSON 对象
- 内部字段:
{
status: true , //布尔类型;是否成功,true|false
}
示例代码
var ezOpen = api.require('ezOpen');
var params = {
deviceSerial:'',
cameraNo:0,
verifyCode:'',
rect:{
x: 0,
y: 0,
w: 320,
h: 300,
},
};
ezOpen.open(params,function(ret) {
api.alert(ret);
});
可用性
iOS系统,android系统
可提供的1.0.0及更高版本
hide
隐藏播放器页面
hide()
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.hide();
可用性
iOS系统,android系统
可提供的1.0.0及更高版本
show
显示播放器页面
show()
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.show();
可用性
iOS系统,android系统
可提供的1.0.0及更高版本
close
关闭播放器页面
close()
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.close();
可用性
iOS系统,android系统
可提供的1.0.0及更高版本
startRealPlay
开始播放
startRealPlay(callback(ret));
callback(ret)
ret:
- 类型:JSON对象
- 描述:扫描结果;
- 内部字段:
{
status:true //布尔类型;是否成功,只是表示操作成功,不代表播放成功,true|false
}
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.startRealPlay(function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.0及更高版本
stopRealPlay
停止播放
stopRealPlay(callback(ret));
callback(ret)
ret:
- 类型:JSON对象
- 描述:结果;
- 内部字段:
{
status:true //布尔类型;是否成功,返回值只是表示操作成功,true|false
}
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.stopRealPlay(function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.0及更高版本
openSound
开启声音
openSound(callback(ret));
callback(ret)
ret:
- 类型:JSON对象
- 描述:结果;
- 内部字段:
{
status:true //布尔类型;是否成功,true|false
}
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.openSound(function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.0及更高版本
closeSound
关闭声音
closeSound(callback(ret));
callback(ret)
ret:
- 类型:JSON对象
- 描述:扫描结果;
- 内部字段:
{
status:true //布尔类型;是否成功,true|false
}
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.closeSound(function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.0及更高版本
startPlaybackFromCloud
开始云存储远程回放
startPlaybackFromCloud(params,callback(ret))
params
fileId:
- 类型:字符串类型
- 描述:文件Id
callback(ret)
ret:
- 类型:JSON对象
- 描述:扫描结果;
- 内部字段:
{
status:true //布尔类型;是否成功,只是表示操作成功,不代表播放成功,true|false
}
示例代码
var ezOpen = api.require('ezOpen');
var params = {
fileId:''
};
ezOpen.startPlaybackFromCloud(params,function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.0及更高版本
startPlaybackFromDevice
开始远程SD卡回放
startPlaybackFromDevice(params,callback(ret))
params
fileId:
- 类型:字符串类型
- 描述:文件Id(仅iOS支持)
index:
- 类型:数字类型
- 描述:searchRecordFileFromDevice接口返回结果第几个从0开始(仅android支持)
callback(ret)
ret:
- 类型:JSON对象
- 描述:扫描结果;
- 内部字段:
{
status:true //布尔类型;是否成功,只是表示操作成功,不代表播放成功,true|false
}
示例代码
var ezOpen = api.require('ezOpen');
var params = {
fileId:''
};
ezOpen.startPlaybackFromDevice(params,function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.0及更高版本
pausePlayback
暂停远程回放播放
pausePlayback(callback(ret));
callback(ret)
ret:
- 类型:JSON对象
- 描述:扫描结果;
- 内部字段:
{
status:true //布尔类型;是否成功,true|false
}
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.pausePlayback(function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.0及更高版本
resumePlayback
继续远程回放播放
resumePlayback(callback(ret));
callback(ret)
ret:
- 类型:JSON对象
- 描述:扫描结果;
- 内部字段:
{
status:true //布尔类型;是否成功,true|false
}
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.resumePlayback(function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.0及更高版本
stopPlayback
停止远程回放
stopPlayback(callback(ret));
callback(ret)
ret:
- 类型:JSON对象
- 描述:扫描结果;
- 内部字段:
{
status:true //布尔类型;是否成功,true|false
}
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.stopPlayback(function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.0及更高版本
searchRecordFileFromCloud
查询云存储录像信息列表接口
searchRecordFileFromCloud(params,callback(ret))
params
deviceSerial:
- 类型:字符串类型
- 描述:设备序列号
cameraNo:
- 类型:数字类型
- 描述:通道号
beginTime:
- 类型:数字类型
- 描述:查询时间范围开始时间 ,时间戳
endTime:
- 类型:数字类型
- 描述:查询时间范围结束时间 ,时间戳
callback(ret)
ret:
- 类型:JSON对象
- 描述:扫描结果;
- 内部字段:
{
status:true //布尔类型;是否成功,true|false
devices:[{
deviceSerial:'', //字符类型;设备序列号
cameraNo:0, //数字类型;设备通道号
fileId:'', //字符类型;云存储录像文件Id
startTime:0, //数字类型;云存储录像文件开始时间
stopTime:0, //数字类型;云存储录像文件结束时间
coverPic:'', //字符类型;云存储录像截图地址
downloadPath:'', //字符类型;云存储录像下载地址
encryption:'', //字符类型;云存储图片加密密码,如果是空则图片不加密
istorageVersion:0, //数字类型;云存储类别:1 单文件存储模式;2 连续存储模式;3 待定
videoType:0, //数字类型;云存储录像类型,默认为0,表示不属于云存储录像
}]
}
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.searchRecordFileFromCloud({
deviceSerial:'',
cameraNo:1,
beginTime:,
endTime:
},function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.0及更高版本
searchRecordFileFromDevice
查询远程SD卡存储录像信息列表接口
searchRecordFileFromDevice(params,callback(ret))
params
deviceSerial:
- 类型:字符串类型
- 描述:设备序列号
cameraNo:
- 类型:数字类型
- 描述:通道号
beginTime:
- 类型:数字类型
- 描述:查询时间范围开始时间 ,时间戳
endTime:
- 类型:数字类型
- 描述:查询时间范围结束时间 ,时间戳
callback(ret)
ret:
- 类型:JSON对象
- 描述:扫描结果;
- 内部字段:
{
status:true //布尔类型;是否成功,true|false
devices:[{
fileId:'', // 字符类型;文件ID(仅iOS支持)
startTime:0, //数字类型;云存储录像文件开始时间
stopTime:0 //数字类型;云存储录像文件结束时间
}]
}
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.searchRecordFileFromDevice(function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.0及更高版本
addPlayerListener
添加播放器监听
addPlayerListener(callback(ret))
callback(ret)
ret:
- 类型:JSON 对象
- 内部字段:
{
eventType: '', //字符串类型;播放事件回调,取值范围如下:
//playerError:播放器播放失败错误回调
//playerSuccess:播放成功(仅Android支持)
//receivedMessage:播放器消息回调(仅iOS支持)
//receivedDisplayHW:收到的画面长宽值
messageCode:0, //数字类型;播放器消息码,eventType = receivedMessage返回
width:0, //数字类型;画面宽度,eventType = receivedDisplayHW返回
height:0 //数字类型;画面高度,eventType = receivedDisplayHW返回
errCode:, //数字类型;播放失败错误码eventType为playerError时返回(仅android支持)
errStr:, //字符串类型;播放失败描述eventType为playerError时返回(仅android支持)
}
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.addPlayerListener(function(ret) {
alert(JSON.stringify(ret));
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
startLocalRecord
预览时开始本地录像预录制功能
startLocalRecord(params)
params
path:
- 参数:字符串类型
- 描述:文件存储路径,支持fs,以及原生路径
name:
- 参数:字符串类型
- 描述:文件名字,只支持mp4格式
- 示例:123.mp4
示例代码
var ezOpen = api.require('ezOpen');
var params = {
path:'',
name:''
};
ezOpen.startLocalRecord(params);
可用性
iOS系统,android系统
可提供的1.0.3及更高版本
stopLocalRecord
结束本地录像预录制,并生成mp4录制文件
stopLocalRecord(callback(ret));
callback(ret)
ret:
- 类型:JSON对象
- 内部字段:
{
status:true //布尔类型;是否成功,true|false
}
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.stopLocalRecord(function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.3及更高版本
capturePicture
直播画面抓图
capturePicture({params},callback(ret));
params
quality:
- 参数:数字类型
- 描述:抓图质量(0~100),数值越大图片质量越好,图片大小越大(仅iOS支持)
- 取值范围:0~100
callback(ret)
ret:
- 类型:JSON对象
- 内部字段:
{
path:'' //字符类型;图片本地路径
}
示例代码
var ezOpen = api.require('ezOpen');
var params = {
quality:''
};
ezOpen.capturePicture(params,function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.3及更高版本
startVoiceTalk
开始TTS对讲
startVoiceTalk(callback(ret))
callback(ret)
ret:
- 类型:JSON对象
- 内部字段:
{
status:true //布尔类型;是否成功,只是表示操作成功,true|false
}
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.startVoiceTalk(function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.6及更高版本
stopVoiceTalk
停止对讲
stopVoiceTalk(callback(ret))
callback(ret)
ret:
- 类型:JSON对象
- 内部字段:
{
status:true //布尔类型;是否成功,只是表示操作成功,true|false
}
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.stopVoiceTalk(function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.6及更高版本
audioTalkPressed
是否切换到听说状态
audioTalkPressed({params},callback(ret))
params
isPressed:
- 参数:布尔类型
- 描述:是否只说状态
- 默认值:true
callback(ret)
ret:
- 类型:JSON对象
- 内部字段:
{
status:true //布尔类型;是否成功,只是表示操作成功,true|false
}
示例代码
var ezOpen = api.require('ezOpen');
var params = {
isPressed:true
};
ezOpen.audioTalkPressed(params,function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.6及更高版本
seekPlayback
根据偏移时间播放
seekPlayback(params,callback(ret))
params
offsetTime:
- 类型:数字类型
- 描述:录像偏移时间,时间戳,秒
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.seekPlayback({
offsetTime:
});
可用性
iOS系统,android系统
可提供的1.0.8及更高版本
setVideoLevel
设置设备通道的清晰度,如果是正在播放时调用该接口,设置清晰度成功以后必须调用stopRealPlay再调用startRealPlay重新取流才成完成画面清晰度的切换
setVideoLevel(params,callback(ret))
params
deviceSerial:
- 类型:字符串类型
- 描述:设备序列号
cameraNo:
- 类型:数字类型
- 描述:通道号
videoLevel:
- 类型:数字类型
- 描述:(可选项)通道清晰度,0-流畅,1-均衡,2-高清,3-超清
- 默认:2
callback(ret)
ret:
- 类型:JSON对象
- 描述:扫描结果;
- 内部字段:
{
status:true //布尔类型;是否成功,true|false
}
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.setVideoLevel({
deviceSerial:'',
cameraNo:0,
videoLevel:2
},function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.8及更高版本
probeDeviceInfo
获取设备信息
probeDeviceInfo(params,callback(ret))
params
deviceSerial:
- 类型:字符串类型
- 描述:设备序列号
deviceType:
- 类型:字符串类型
- 描述:设备类型
callback(ret)
ret:
- 类型:JSON对象
- 描述:扫描结果;
- 内部字段:
{
status:true, //布尔类型;是否成功,true|false
errorCode:0, //数字类型;错误码 可参考[文档](https://open.ys7.com/doc/zh/book/index/ezopen_errorcode.html)
supportAP:2, //数字类型;支持AP; supportAp == 2 时,选择设备热单配网,是否支持AP配网,2-支持AP,其他值为不支持AP配网
supportWifi:3, //数字类型;支持WIFI;supportWifi == 3 时,选择smartconfig配网,是否支持wifi,0-不支持,1-支持,2-支持带userId的新的wifi配置方式,3-支持smartwifi
supportSoundWave:1 //数字类型;支持声波;supportSoundWave == 1时,选择声波配网,是否支持声波配置,0-不支持,1-支持
}
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.probeDeviceInfo({
deviceSerial:'',
deviceType:''
},function(ret) {
api.alert({ msg:JSON.stringify(ret)});
});
可用性
iOS系统,android系统
可提供的1.0.8及更高版本
resetViewRect
重设播放视图大小(与open接口对应)
resetViewRect({params})
params
rect:
- 类型:JSON 对象
- 描述:(可选项)视频区域的位置及尺寸
- 内部字段:
{
x: 0, //(可选项)数字类型;视频区域左上角的 x 坐标(相对于所属的 Window 或 Frame);默认:原值
y: 0, //(可选项)数字类型;视频区域左上角的 y 坐标(相对于所属的 Window 或 Frame);默认:原值
w: 320, //(可选项)数字类型;视频区域的宽度;默认:原值
h: 480 //(可选项)数字类型;视频区域的高度;默认:原值
}
示例代码
var ezOpen = api.require('ezOpen');
ezOpen.resetViewRect({
rect:{
x:10,
y:10,
w:300,
h:280
}
});
可用性
iOS系统,Android系统
可提供的1.1.6及更高版本