更新时间:2024-03-14 07:01:23下载pdf
本文介绍如何管理门锁。
接口说明
//1.扫描附近的蓝牙设备
IThingBleLockActivator # void startScan(int scanTimeOut, IThingResultCallback<ScanDeviceBean> callback);
//2.将扫描到的蓝牙设备进行配网
IThingBleLockActivator # void startActivator(long siteId, ScanDeviceBean scanDeviceBean, IBleActivatorListener listener);
参数说明
参数 | 说明 |
---|---|
siteId | 站点 ID |
scanDeviceBean | 扫描到的设备模型 |
listener | 配网结果回调 |
示例代码
HashMap<String, ScanDeviceBean> map = new HashMap<>();
ThingOSLock.getBleLockActivator().startScan(60 * 1000, new IThingResultCallback<ScanDeviceBean>() {
@Override
public void onSuccess(ScanDeviceBean result) {
//Scanned device successfully
if (map.get(result.getUuid()) != null) {
return;
}
map.put(result.getUuid(), result);
ThingOSLock.getBleLockActivator().startActivator(siteId, result, new IBleActivatorListener() {
@Override
public void onSuccess(DeviceBean deviceBean) {
//Activated device successfully
}
@Override
public void onFailure(int code, String msg, Object handle) {
//Failed to activate device
}
});
}
@Override
public void onError(String errorCode, String errorMessage) {
//Failed to scan device
}
});
IThingBleLockActivator # getActivatorDeviceInfo
方法。stopScan
和 stopActivator
方法。接口说明
ILockSite # void getLockDeviceList(long startId, IThingResultCallback<ArrayList<DeviceBeanWrapper>> callback);
参数说明
参数 | 说明 |
---|---|
start_id | 门锁列表分页游标,第一次传 0 ,后续分页查上一次返回结果中最后一个设备的 gatewayIndexId 的值 |
callback | 门锁列表结果回调 |
示例代码
ThingOSLock.newSiteInstance(siteId).getLockDeviceList(0L, new IThingResultCallback<ArrayList<DeviceBeanWrapper>>() {
@Override
public void onSuccess(ArrayList<DeviceBeanWrapper> result) {
//Got lock device list successfully
}
@Override
public void onError(String errorCode, String errorMessage) {
//Failed to get lock device list
}
});
20
。start_id
为门锁列表分页游标,第一次传 0
,后续分页查上一次返回结果中最后一个设备的 gatewayIndexId
的值。接口说明
ILockDevice # void getLockDetail(long siteId, IThingResultCallback<LockDetailBean> callback);
参数说明
参数 | 说明 |
---|---|
siteId | 站点 ID |
callback | 结果回调 |
示例代码
ThingOSLock.newLockInstance(deviceId).getLockDetail(siteId, new IThingResultCallback<LockDetailBean>() {
@Override
public void onSuccess(LockDetailBean result) {
//Got lock details successfully
}
@Override
public void onError(String errorCode, String errorMessage) {
//Failed to get lock details
}
});
接口说明
ILockDevice # void unlock(long siteId, IThingResultCallback<Boolean> callback);
参数说明
参数 | 说明 |
---|---|
siteId | 站点 ID |
callback | 开锁结果回调 |
示例代码
ThingOSLock.newLockInstance(deviceId).unlock(siteId, new IThingResultCallback<Boolean>() {
@Override
public void onSuccess(Boolean result) {
//Unlocked successfully
}
@Override
public void onError(String errorCode, String errorMessage) {
//Failed to unlock
}
});
接口说明
ILockDevice # void updateName(String name, IThingResultCallback<Boolean> callback);
参数说明
参数 | 说明 |
---|---|
name | 门锁名称 |
callback | 修改名称结果回调 |
示例代码
ThingOSLock.newLockInstance(deviceId).updateName(newLockName, new IThingResultCallback<Boolean>() {
@Override
public void onSuccess(Boolean result) {
//Updated name successfully
}
@Override
public void onError(String errorCode, String errorMessage) {
//Failed to update name
}
});
接口说明
ILockSite # void deleteLock(String devId, IThingResultCallback<Boolean> callback);
参数说明
参数 | 说明 |
---|---|
devId | 要删除的门锁 ID |
callback | 删除结果回调 |
示例代码
ThingOSLock.newSiteInstance(siteId).deleteLock(devId, new IThingResultCallback<Boolean>() {
@Override
public void onSuccess(Boolean result) {
//Deleted lock successfully
}
@Override
public void onError(String errorCode, String errorMessage) {
//Failed to delete lock
}
});
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈