更新时间:2022-02-17 06:56:21下载pdf
智能门禁是能够通过客户端进行智能开门的功能。门禁支持远程开门、二维码等多种通行方式,通行记录能够实时统计,提高了居民的通行效率,提升物业的管理效率。是一种让开门更加方便,让社区更加安全的功能。
ITuyaCommunitySmartDoor:提供了对智能门禁进行移动端开门、二维码开门的能力。TuyaCommunitySDK.getSmartDoorInstance():查询类。查询该房屋下拥有权限的智能门禁设备。
接口说明
void getSmartDoorList(String communityId, String roomId, ITuyaCommunityResultCallback<ArrayList<TuyaCommunitySmartDoorInfoBean>> callback);
参数说明
| 参数 | 说明 | 
|---|---|
| communityId | 小区 ID,通过 TuyaCommunitySDK.newHouseInstance(houseId)查询当前房屋的communityId | 
| roomId | 房号 ID,通过 TuyaCommunitySDK.newHouseInstance(houseId)查询当前房屋的roomId | 
| callback | 结果回调 | 
TuyaCommunitySmartDoorInfoBean 参数说明
| 参数 | 说明 | 
|---|---|
| deviceId | 设备 ID,每个设备拥有唯一ID | 
| deviceName | 设备名称 | 
示例代码
TuyaCommunitySDK.getSmartDoorInstance().getSmartDoorList(communityId, roomId, new ITuyaCommunityResultCallback<ArrayList<TuyaCommunitySmartDoorInfoBean>>() {
			@Override
			public void onSuccess(ArrayList<TuyaCommunitySmartDoorInfoBean> tuyaCommunitySmartDoorInfoBeans) {
				// do something
			}
			@Override
			public void onFailure(String s, String s1) {
				// do something
			}
		});
接口说明
void openDoor(String communityId, String roomId, String deviceId, ITuyaCommunityResultCallback<String> callback);
参数说明
| 参数 | 说明 | 
|---|---|
| communityId | 小区 ID | 
| roomId | 房号 ID | 
| deviceId | 设备 ID getSmartDoorList方法返回数据中TuyaCommunitySmartDoorInfoBean中的deviceId | 
| callback | 结果回调(返回通行记录 ID) | 
示例代码
TuyaCommunitySDK.getSmartDoorInstance().openDoor(getBlockId(), getRoomId(), bean.getDeviceId(), new ITuyaCommunityResultCallback<String>() {
			@Override
			public void onSuccess(String accessLogId) {
				// do something
			}
			@Override
			public void onFailure(String s, String s1) {
				// do something
			}
		});
调用开门接口 openDoor() 后,可隔一段时间轮询此接口,例如 0.5 秒。
接口说明
	void checkOpenDoorResult(String communityId, String accessLogId, ITuyaCommunityResultCallback<TuyaCommunitySmartDoorOpenResult> callback);
参数说明
| 参数 | 说明 | 
|---|---|
| communityId | 小区 ID | 
| accessLogId | 通行记录 ID | 
| callback | 结果回调 TuyaCommunitySmartDoorOpenResult
 | 
示例代码
TuyaCommunitySDK.getSmartDoorInstance().checkOpenDoorResult(getBlockId(), accessLogId, new ITuyaCommunityResultCallback<TuyaCommunitySmartDoorOpenResult>() {
			@Override
			public void onSuccess(TuyaCommunitySmartDoorOpenResult tuyaCommunitySmartDoorOpenResult) {
				// do something
			}
			@Override
			public void onFailure(String s, String s1) {
				// do something
			}
		});
接口说明
void getSmartDoorOpenRecords(String communityId, String roomId, ITuyaCommunityResultCallback<ArrayList<TuyaCommunitySmartDoorOpenRecordBean>> callback);
参数说明
| 参数 | 说明 | 
|---|---|
| communityId | 小区 ID | 
| roomId | 房号 ID | 
| callback | 结果回调 | 
TuyaCommunitySmartDoorOpenRecordBean 参数说明
| 参数 | 说明 | 
|---|---|
| accessLogId | 记录日志的ID | 
| accessControlName | 被控制设备名称 | 
| accessControlAddress | 被控制设备所在地址 | 
| accessTime | 记录产生时间 | 
| accessDirection | 日志记录设备状态: 
 | 
示例代码
TuyaCommunitySDK.getSmartDoorInstance().getSmartDoorOpenRecords(blockId, roomId, new ITuyaCommunityResultCallback<ArrayList<TuyaCommunitySmartDoorOpenRecordBean>>() {
			@Override
			public void onSuccess(ArrayList<TuyaCommunitySmartDoorOpenRecordBean> tuyaCommunitySmartDoorOpenRecordBeans) {
		// do something
			}
			@Override
			public void onFailure(String s, String s1) {
				// do something
			}
		});
查询门禁二维码,可进行开门操作,以及列出可开门的门禁、梯控权限集合。
接口说明
void getCommunityQrCode(String communityId, String roomId, ITuyaCommunityResultCallback<TuyaCommunityQRCodeBean> callback);
TuyaCommunityQRCodeBean 参数说明
| 参数 | 说明 | 
|---|---|
| qrCodeUrl | 需要生成二维码的字符串 | 
| expire | URL 过期时间 | 
| accessDoorList | 可被通过的门禁数据列表,每个元素为设备名称 | 
| accessElevatorList | 可被通过的电梯数据列表,每个元素为设备名称 | 
参数说明
| 参数 | 说明 | 
|---|---|
| communityId | 小区 ID | 
| roomId | 房号 ID | 
| callback | 结果回调 返回有二维码字符串 twoDimensionalCode,可通过 ZXing 的BarcodeFormat.QR_CODE模式将二维码内容转成 Bitmap,具体可查看社区 Demo 中的实现方式 | 
示例代码
TuyaCommunitySDK.getSmartDoorInstance().getCommunityQrCode(communityId, roomId, new ITuyaCommunityResultCallback<TuyaCommunityQRCodeBean>() {
			@Override
			public void onSuccess(TuyaCommunityQRCodeBean bean) {
				// do something
			}
			@Override
			public void onFailure(String s, String s1) {
				// do something
			}
		});
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈