IPCameraManager 接口

  1. 注册设备发现回调
  2. 注销设备发现回调
  3. 重新扫描设备
  4. 获取设备列表
  5. 注册人脸识别事件回调
  6. 注销人脸识别事件回调
  7. 注册动态侦测事件回调
  8. 注销动态侦测事件回调
  9. 设置人脸库模式
  10. 增加人脸记录
  11. 删除人脸记录

1. 注册设备发现回调

描述

注册设备发现回调,在IPC设备接入/离开网络时被调用,设备离线30S内回调离线消息。

接口

public void registerDeviceTrackListener(DeviceTrackListener listener);

参数说明

参数名称描述示例
listener设备发现回调

代码示例

APP_ID:激活设备端API所需的账号
SECRET_KEY:调用API所需的签名秘钥
LICENSE:设备激活码,激活设备端API所需的激活码,用于签名校对软件商是否有权调用

IPCameraManager mIPCameraManager = IPCameraManager.getInstance(context);
mIPCameraManager.init(APP_ID, SECRET_KEY, LICENSE);
mIPCameraManager.registerDeviceTrackListener(new DeviceTrackListener() {
    @Override
    public void onDeviceOnline(IPCameraInfo device) {
        showToast(getApplicationContext(), "[ " + device.getDeviceid() + " ]上线");
    }
    @Override
    public void onDeviceOffline(IPCameraInfo device) {
        showToast(getApplicationContext(), "[ " + device.getDeviceid() + " ]离线");
    }
});

2. 注销设备发现回调

描述

注销设备发现回调。

接口

public void unregisterDeviceTrackListener(DeviceTrackListener listener);

参数说明

参数名称描述示例
listener设备发现回调

3. 重新扫描设备

描述

使用此接口可以清楚设备缓存队列,重新触发设备上线回调。

接口

public void rescan();

4. 获取设备列表

描述

获取当前在线的IPC设备列表。

接口

public List‹IPCameraInfo› getIPCDevices();

5. 注册人脸识别事件回调

描述

注册人脸识别事件回调,在线的IPC设备识别到人脸后,上抛人脸识别事件。

接口

public void registerFaceDetectListener(FaceDetectListener listener);

参数说明

参数名称描述示例
listener人脸识别回调

代码示例

IPCameraManager mIPCameraManager = IPCameraManager.getInstance(context);
mIPCameraManager.init(APP_ID, SECRET_KEY, LICENSE);
mIPCameraManager.registerFaceDetectListener(new FaceDetectListener() {
    @Override
    public void onFaceDetect(FaceRecogEvent faceRecogEvent) {
        if (userName == null) {
            showToast("发现未注册的用户");
        } else {
            showToast("发现用户[ " + faceRecogEvent.faceid + " ]");
        }
    }
});

6. 注销人脸识别事件回调

描述

注销人脸识别事件回调。

接口

public void unregisterFaceDetectListener(FaceDetectListener listener);

参数说明

参数名称描述示例
listener人脸识别回调

7. 注册动态侦测事件回调

描述

注册动态侦测事件回调,在线的IPC捕捉到动态侦测事件后,上抛该消息。

接口

public void registerDynamicDetectListener(DynamicDetectListener listener);

参数说明

参数名称描述示例
listener动态侦测回调

8. 注销动态侦测事件回调

描述

注销动态侦测事件回调。

接口

public void unregisterDynamicDetectListener(DynamicDetectListener listener);

参数说明

参数名称描述示例
listener动态侦测回调

代码示例

IPCameraManager mIPCameraManager = IPCameraManager.getInstance(context);
mIPCameraManager.init(APP_ID, SECRET_KEY, LICENSE);
mIPCameraManager.registerDynamicDetectListener(new DynamicDetectListener() {
    @Override
    public void onDynamicDetect(DynamicDetectEvent dynamicDetectEvent) {
        showToast("设备" + dynamicDetectEvent.sn + "触发了" + dynamicDetectEvent.detect_type "事件");
    }
});

9. 设置人脸库模式

描述

设置IPC设备中人脸库使用方法,该接口在FS与商米AI识客SDK配套时使用。

接口

public void setDeviceDatabaseMode(boolean useSingleGroup);

参数说明

参数名称描述示例
useSingleGrouptrue:IPC自动创建一个包含所有库容量的人脸分组,不需要客户自己创建人脸分组。
false:默认值,需要客户自己创建人脸分组。
true

代码示例

IPCameraManager mIPCameraManager = IPCameraManager.getInstance(context);
mIPCameraManager.init(APP_ID, SECRET_KEY, LICENSE);
mIPCameraManager.setDeviceDatabaseMode(true);
...

10. 增加人脸记录

描述

给所有在线的IPC设备增加人脸记录,使用该接口前必须设置setDeviceDatabaseMode(true),该接口在FS与商米AI识客SDK配套时使用。

接口

public boolean addFaceRecord(String picPath, String userId, RPCCallback‹RPCResponse› callback);

参数说明

参数名称描述示例
picPath人脸照片的路径“/mnt/sdcard/1424.jpg”
userId要增加的人脸记录ID“sunmi1424”
callback增加人脸记录的回调

11. 删除人脸记录

描述

给所有在线的IPC设备删除人脸记录, 使用该接口前必须设置setDeviceDatabaseMode(true) ,该接口在FS与商米AI识客SDK配套时使用。

接口

public boolean deleteFaceRecord(String userId, RPCCallback‹RPCResponse‹FaceDeleteSubResult›› callback)

参数说明

参数名称描述示例
userId要删除的人脸记录ID“sunmi1424”
callback删除人脸记录的回调