1.订阅消息
描述
订阅消息接口用于向IPC设备端订阅相关的消息,一旦订阅了消息,当设备端产生了相关消息的时候,便会向订阅时传入的回调接口发送一个HTTP POST消息,从而达到通知订阅者的目的。
接口
public void subscribeEvent(String deviceId, List‹String› events, RPCCallback‹RPCResponse› callback);
参数说明
参数名称 | 描述 | 示例 |
deviceId | IPC序列号 | C201D98T00094 |
events | 事件类型,可以是[“face_recog_event”,”dynamic_detect_event”]或者其中一个,其中”face_recog_event”仅FM020支持 | [“face_recog_event”] |
callback | 调用结果 |
回调示例
new RPCCallback‹RPCResponse›() {
@Override
public void onComplete(RPCResponse result) {
Log.i(TAG, "return code= " + result.code());
if (result.code() == RPCErrorCode.SUCCESS) {
Log.i(TAG, "event subscribe success");
} else {
Log.i(TAG, "event subscribe failed, code:" + result.code());
}
}
@Override
// http调用出错
public void onAbort(int httpStatus) {
Log.i(TAG, "unexpected http status: " + httpStatus);
}
@Override
// 异常回调,例如未发现对应IPC设备
public void onException(Throwable t) {
Log.i(TAG, "Exception: " + t.getMessage());
}
});
注:参考以下实现,后续接口不再说明。
响应参数
字段名称 | 类型 | 描述 |
code | int | 返回码,表示操作的结果; 本接口返回码有0、1、2、5、310、311,见错误码的描述 |
2. 取消已订阅消息
描述
用于取消已经向IPC设备端订阅过的消息,取消订阅后,当设备端产生相关消息时,便不会向对应的回调地址发送HTTP POST消息。
接口
public void unsubscribeEvent(String deviceId, List‹String› events, RPCCallback‹RPCResponse› callback);
参数说明
参数名称 | 描述 | 示例 |
deviceId | IPC序列号 | C201D98T00094 |
events | 事件类型,可以是[“face_recog_event”,”dynamic_detect_event”]或者其中一个,其中”face_recog_event”仅FM020支持 | [“face_recog_event” ] |
callback | 调用结果 |
响应参数
字段名称 | 类型 | 描述 |
code | int | 返回码,表示操作的结果; 本接口返回码有0、1、2、5、310,见错误码的描述 |
3. 查询所有已订阅消息
描述
用于查询IPC设备端所有订阅的消息,当设备端产生相关消息时,会向对应的回调地址发送HTTP POST消息。
接口
public void getSubscribedEvents(String deviceId, RPCCallback‹RPCResponse‹IPCEventList›› callback);
参数说明
字段名称 | 描述 | 示例 |
deviceId | IPC序列号 | C201D98T00094 |
callback | 调用结果 |
响应参数
字段名称 | 类型 | 描述 |
code | int | 返回码,表示操作的结果; 本接口返回码有 0、1、2、3、5、7, 见错误码的描述 |
data | IPCEventList | 返回码成功才会有此字段,详见RPCResponse.IPCEventList |