通用
本文介绍 @ray-js/ray-ipc-utils 中封装的业务 API, 开箱即用, 版本要求为 ^1.1.7。
1. 原生页面跳转
功能说明
以下功能部分页面实现为原生 (App) 页面, 目前暂不支持自定义开发,如需了解更多,可进一步咨询及反馈给我们。
请求参数
themeType 字段详解
相册
路由 id: ipc_album_panel
请求示例
import { goToIpcPageNativeRoute } from '@ray-js/ray-ipc-utils';
const id = 'ipc_album_panel';
const deviceId = '1234567890xxxxxx';
const result = await goToIpcPageNativeRoute(id, deviceId);
回放聚合(推荐)
💡 注意:@ray-js/ray-ipc-utils版本 >= 1.1.11 。
请求示例
import { goToIpcPlayBackHubNativePage } from '@ray-js/ray-ipc-utils';
const deviceId = '1234567890xxxxxx';
const sdCardState = true; // SD卡状态是否正常: 根据业务实际情况传入, 一般取值标准DP sd_status 等于 1 时为 true
const result = await goToIpcPlayBackHubNativePage(deviceId, sdCardState);
回放
💡 注意 从 APP 650 版本开始,先前的云回放和 SD 卡回放合二为一,统称为回放。
云回放 id: camera_cloud_panel SD 卡回放 id: camera_playback_panel。
说明: 回放页面内部会做一定的逻辑判断,如: 设备本身不支持云存储能力,即使跳转云回放路由,也不会展示云存储 Tab
请求示例
import { goToIpcPageNativeRoute } from '@ray-js/ray-ipc-utils';
const id = 'camera_cloud_panel';
const deviceId = '1234567890xxxxxx';
const result = await goToIpcPageNativeRoute(id, deviceId);
消息
消息页面涉及各种消息的展示,主要分为:普通事件报警、门铃消息、AI消息等。内部涉及到图片的解密、渲染,视频的解密播放等等。
路由 id: camera_message_panel
请求示例
import { goToIpcPageNativeRoute } from '@ray-js/ray-ipc-utils';
const id = 'camera_message_panel';
const deviceId = '1234567890xxxxxx';
const result = await goToIpcPageNativeRoute(id, deviceId);
语音管理
路由 id: ipc_doorbell_voice_manager
请求示例
import { goToIpcPageNativeRoute } from '@ray-js/ray-ipc-utils';
const id = 'ipc_doorbell_voice_manager';
const deviceId = '1234567890xxxxxx';
const result = await goToIpcPageNativeRoute(id, deviceId);
2. 获取摄像头配置接口
功能说明
用于获取指定摄像头设备的配置信息,例如: 喇叭、对讲、清晰度、画面放大倍数配置等。
请求参数
返回参数 data
字段详解:microphoneSettings
字段详解:intercomInfo
对讲方式解析
字段详解:videoResolution
清晰度类型详解: ClarityType
清晰度列表取值,主要以产品 pid 纬度进行配置,默认值 ['HD', 'SD'], 如需配置特殊值,请与项目经理确认反馈配置。
请求示例
import { getCameraConfigInfo } from '@ray-js/ray-ipc-utils';
const deviceId = '1234567890xxxxxx';
const result = await getCameraConfigInfo(deviceId);
返回示例
{
"code": 0,
"data": {
"microphoneSettings": {
"isMicrophoneSupported": true,
"defaultMuteMode": false,
"cachedMuteMode": true
},
"intercomInfo": {
"isIntercomSupported": true,
"defaultIntercomMode": "OneWay",
"cachedIntercomMode": "OneWay",
"supportedIntercomModes": ["OneWay", "TwoWay"]
}
}
}
3. 是否支持云存储
功能说明
用于获取指定摄像头设备的是否具有云存储存储能力。
请求参数
返回参数 data
请求示例
import { getIsSupportedCloudStorageSync } from '@ray-js/ray-ipc-utils';
const deviceId = '1234567890xxxxxx';
const result = await getIsSupportedCloudStorageSync(deviceId);
返回示例
{
"code": 0,
"data": true
}
4. 获取信号强度值
功能说明
用于获取指定摄像头设备出流时的信号强度值。
请求参数
返回参数 data
信号强度值,取值范围 0~100,0 表示信号强度最弱,100 表示信号强度最强, 单位为%
请求示例
import { requestWifiSignal } from '@ray-js/ray-ipc-utils';
const deviceId = '1234567890xxxxxx';
const result = await requestWifiSignal(deviceId);
返回示例
{
"code": 0,
"data": 100
}
5. 获取视频码率
功能说明
用于获取指定摄像头设备出流时单位时间内传输的数据量。
请求参数
返回参数 data
视频码率,数值大于等于 0 单位为 KB/S
请求示例
import { getVideoBitrateKbps } from '@ray-js/ray-ipc-utils';
const deviceId = '1234567890xxxxxx';
const result = await getVideoBitrateKbps(deviceId);
返回示例
{
"code": 0,
"data": 100
}
6. 画中画
是否支持
功能说明
首先需判定设备是否支持此功能。
请求参数
返回参数 data
isSupport: true(支持) 或 false(不支持)
请求示例
import { isSupportFloatWindow } from '@ray-js/ray-ipc-utils';
const deviceId = '1234567890xxxxxx';
const result = await isSupportFloatWindow(deviceId);
返回示例
{
"code": 0,
"data": { "isSupport": true}
}
开启功能
功能说明
支持画中画的前提下,才可成功调用此功能,开启画中画。
请求参数
返回参数 code
code: 0 (成功) 直接启用画中画 其它(失败)
请求示例
import { openFloatWindow } from '@ray-js/ray-ipc-utils';
const deviceId = '1234567890xxxxxx';
const result = await openFloatWindow(deviceId);
返回示例
7. 低功耗唤醒
功能说明
适配使用 dpId(149) dpCode(wireless_awake)的低功耗设备,需要建立连接前,间隔200ms调用至少三次唤醒。
请求参数
返回参数 code
code: 0 (成功) 方法调用成功 其它(失败)
请求示例
import { wakeUpDevice } from '@ray-js/ray-ipc-utils';
const deviceId = '1234567890xxxxxx';
const result = await wakeUpDevice(deviceId);
返回示例
8. 获取手机当前横竖屏状态
功能说明
单次获取手机横竖屏的状态值
返回参数 data
portrait (竖屏) landscape (横屏)
请求示例
import { getMobileOrientation } from '@ray-js/ray-ipc-utils';
const result = await getMobileOrientation();
返回示例
{
"code": 0,
"data": "portrait"
}
9. 设置屏幕旋转
功能说明
手动设置屏幕进行横竖屏切换, 使用播放器若有横屏视频,需将项目当前页面配置 (index.config.ts) 中的 pageOrientation 设置为 auto, 方可正常旋转。
请求参数
返回参数 data
portrait (竖屏) landscape (横屏)
请求示例
import { setScreenOrientation } from '@ray-js/ray-ipc-utils';
const pageOrientation = 'portrait';
const result = await setScreenOrientation(pageOrientation);
返回示例
10. 获取增值服务url链接
功能说明
获取各大类通用增值服务链接,也可直接跳转至对应增值服务页面
请求参数
服务类型: ServiceType
注意 增值服务持续扩充中,若有未涉及服务或因不同的增值服务所需参数也不相同, 遇到问题的,可联系涂鸦小程序团队反馈,我们会尽快给予回复。
返回参数 data
请求示例
import { getServiceUrl } from '@ray-js/ray-ipc-utils';
const deviceId = '1234567890xxxxxx';
const serviceType = 'security_cloud_service';
const params = {}
// 若 serviceType 为 aiInspectionReport, 则需传入 activeTime,reportId, devId
// const params = {
// activeTime: 'xxx',
// reportId: 'xxx',
// devId: 'xxx'
// };
const action = true;
const result = await getServiceUrl(deviceId, serviceType, params, true);
返回示例
11. 跳转IPC设置页小程序
功能说明
跳转到 IPC 设备的设置页面小程序,用户可以在该页面进行相关设备设置。
请求参数
请求示例
import { goToIpcSettingMini } from '@ray-js/ray-ipc-utils';
const deviceId = '1234567890xxxxxx';
const options = {
position: 'right '
};
const result = await goToIpcSettingMini(deviceId, options);
返回示例
12. 跳转IPC服务大厅小程序
功能说明
跳转到 IPC 服务大厅小程序。
请求参数
请求示例
import { goToIpcServiceHallMini } from '@ray-js/ray-ipc-utils';
const options = {
position: 'right'
};
const result = await goToIpcServiceHallMini(options);
返回示例
13. 获取增值服务是否开通
功能说明
用于获取指定设备的增值服务是否已开通。
请求参数
增值服务类型 (categoryCode)
注意 增值服务持续扩充中,若有未涉及服务或因不同的增值服务所需参数也不相同, 遇到问题的,可联系涂鸦智能小程序团队反馈,我们会尽快给予回复。
返回参数 data
请求示例
import { getServiceIsOpen } from '@ray-js/ray-ipc-utils';
const deviceId = '1234567890xxxxxx';
const categoryCode = 'security_cloud_service'; // 云存储
const result = await getServiceIsOpen(deviceId, categoryCode);
返回示例
{
"code": 0,
"data": true
}