更新时间:2024-08-28 01:53:19下载pdf
获取房间下的设备以及场景数据,场景绑定房间信息,可以查看场景相关功能接口。设备以及场景数据使用 RoomInfoBean
,RoomInfoBean
的属性字段如下:
属性 | 类型 | 描述 |
---|---|---|
ruleList | List |
房间下的场景列表 |
deviceSortList | List |
房间下设备列表信息 |
SceneInRoom
的属性如下:
属性 | 类型 | 描述 |
---|---|---|
ruleId | String | 场景 ID |
ruleName | int | 场景名称 |
background | String | 背景颜色,例如 #ffffff |
icon | String | 场景图标 |
DeviceOrGroupInRoom
的属性如下:
属性 | 类型 | 描述 |
---|---|---|
bizId | String | 设备和群组 ID |
bizType | int | 类型
|
displayOrder | int | 排序信息 |
这部分接口在 HomeSDK,通过 PluginManager.service(IThingHomePlugin::class.java).newHomeInstance(homeId)
获取接口方法。
接口说明
void queryRoomDevSceneList(long roomId, IThingResultCallback<RoomInfoBean> callback);
参数说明
参数 | 说明 |
---|---|
roomId | 房间 ID |
callback | 成功回调 |
调用示例
val homePlugin = PluginManager.service(IThingHomePlugin::class.java)
homePlugin.newHomeInstance(homeId).queryRoomDevSceneList(id,object :
IThingResultCallback<RoomInfoBean>{
override fun onSuccess(result: RoomInfoBean?) {
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
对房间中的设备和群组排序,以及移动设备或群组(增加或删除设备和群组)。传入排序后的房间 ID,以及将要设置的设备和群组信息,设置成功调用 callback
回调。
接口说明
void moveRoomDevGroupList(long roomId,List<DeviceInRoomBean> devicesInRoom,IFamilyDataCallback<Boolean> callback);
参数说明
参数 | 说明 |
---|---|
roomId | 房间 ID |
devicesInRoom | 设备或群组列表 |
callback | 回调 |
调用示例
var rooId = 0L //0L...
var room:TRoomBean? = null// getRoomList()[0]...
var devinRoomsList = room?.ids
devinRoomsList?.sortedBy { it.id } //sort
devinRoomsList?.removeAt(0)//remove
//add
devinRoomsList?.add(DeviceInRoomBean().apply {
id = "devid"
type = BizParentTypeEnum.DEVICE.getType()
})
devinRoomsList?.add(DeviceInRoomBean().apply {
id = "groupid"
type = BizParentTypeEnum.GROUP.getType()
})
FamilyManagerCoreKit.getRoomUseCase().moveRoomDevGroupList(rooId, devinRoomsList , object :IFamilyDataCallback<Boolean>{
override fun onSuccess(result: Boolean?) {
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
添加单个已配网设备到房间中,添加成功调用 callback
回调。
接口说明
void addDeviceInRoom(long roomId,String devId,
IFamilyDataCallback<Boolean> callback) ;
参数说明
参数 | 说明 |
---|---|
deviceId | 将要添加到房间中的设备 ID |
roomId | 房间 ID |
callback | 回调 |
调用示例
FamilyManagerCoreKit.getRoomUseCase().addDeviceInRoom(homeId, devId , object :IFamilyDataCallback<Boolean>{
override fun onSuccess(result: Boolean?) {
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
从房间中移除单个设备,但是设备还在当前家庭下没有被删除,只是被移除当前房间。移除成功调用 callback
回调。
接口说明
void removeDeviceFromRoom(long roomId,String devId,IFamilyDataCallback<Boolean> callback) ;
参数说明
参数 | 说明 |
---|---|
devId | 将要从房间中移除的设备 ID |
roomId | 房间 ID |
callback | 回调 |
调用示例
FamilyManagerCoreKit.getRoomUseCase().removeDeviceFromRoom(homeId, devId , object :IFamilyDataCallback<Boolean>{
override fun onSuccess(result: Boolean?) {
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
添加群组到房间中,添加成功调用 success
回调。
接口说明
void addGroupInRoom(long roomId,long gId,IFamilyDataCallback<Boolean> callback) ;
参数说明
参数 | 说明 |
---|---|
gId | 将要添加到房间中的群组 ID |
roomId | 房间 ID |
callback | 回调 |
调用示例
FamilyManagerCoreKit.getRoomUseCase().addGroupInRoom(homeId, gid , object :IFamilyDataCallback<Boolean>{
override fun onSuccess(result: Boolean?) {
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
从房间中移除群组,移除成功调用 success
回调。请注意,群组还在当前家庭下没有被移除,只是从当前房间移除。
接口说明
void removeGroupFromRoom(long roomId, long gId, IFamilyDataCallback<Boolean> callback) ;
参数说明
参数 | 说明 |
---|---|
gId | 将要从房间中移除的群组 ID |
roomId | 房间 ID |
callback | 成功回调 |
调用示例
FamilyManagerCoreKit.getRoomUseCase().removeGroupFromRoom(homeId, gId , object :IFamilyDataCallback<Boolean>{
override fun onSuccess(result: Boolean?) {
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈