更新时间:2024-08-28 01:53:29下载pdf
房间标签是公版新增能力,可以给房间分标签。房间标签管理对应 FamilyManagerCoreKit.getRoomTagUseCase()
接口,实现对家庭的操作。
业务拓展 SDK 的房间标签信息都使用 RoomGroupBean
来描述,RoomGroupBean
的属性说明如下:
属性 | 类型 | 描述 |
---|---|---|
roomGroupId | Long | 房间标签 ID |
roomGroupName | String | 房间标签名称 |
rooms | List |
房间标签下的所属房间 |
index | Int | 房间标签排序 |
RoomBean
的属性说明如下:
属性 | 类型 | 描述 |
---|---|---|
roomId | Long | 房间 ID |
roomName | String | 房间名称 |
devSize | Int | 房间下的设备数量,包含群组和设备,依赖 HomeSDK 的缓存,没有缓存的情况下为 0 |
index | Int | 房间排序 |
获取房间标签信息列表,其中信息不包含房间列表(rooms),只有房间组的 ID、名称和排序。
接口说明
fun getRoomTagList(
familyId: Long,
callback: IResponse<ArrayList<RoomGroupBean>>
)
参数说明
参数 | 说明 |
---|---|
familyId | 家庭 ID |
callback | 查询结果的回调 |
调用示例
FamilyManagerCoreKit.getRoomTagUseCase().getRoomTagList(familyId, object :IResponse<ArrayList<RoomGroupBean>>{
override fun onSuccess(result: ArrayList<RoomGroupBean>?) {
//successful
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
获取房间分组标签信息列表,其中信息包含房间列表(rooms)。此外,没有分组标签的房间都在默认分组标签里,默认分组 ID 为 0
。
接口说明
fun getAllRoomLists(
familyId: Long,
callback: IResponse<ArrayList<RoomGroupBean>>
)
参数说明
参数 | 说明 |
---|---|
familyId | 家庭 ID |
callback | 查询结果的回调,没有分组的房间都在默认分组里,默认分组 ID 为 0 |
调用示例
FamilyManagerCoreKit.getRoomTagUseCase().getAllRoomLists(familyId,object :IResponse<ArrayList<RoomGroupBean>>{
override fun onSuccess(result:ArrayList<RoomGroupBean>?) {
//successful
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
新建房间标签,默认排序在最后。
接口说明
fun addRoomTag(
familyId: Long,
name: String,
callback: IResponse<String>
)
参数说明
参数 | 说明 |
---|---|
familyId | 家庭 ID |
name | 房间标签名称 |
callback | 查询结果的回调 |
调用示例
FamilyManagerCoreKit.getRoomTagUseCase().addRoomTag(familyId,”一楼“ object :IResponse<String>{
override fun onSuccess(result:String?) {
//successful
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
解散房间组标签,不会删除房间标签下的房间。
接口说明
fun removeRoomTag(
roomTagId: Long,
callback: IResponse<Boolean>
)
参数说明
参数 | 说明 |
---|---|
roomTagId | 房间组标签 ID |
callback | 查询结果的回调 |
调用示例
FamilyManagerCoreKit.getRoomTagUseCase().removeRoomTag(rtagId,object :IResponse<Boolean>{
override fun onSuccess(result:Boolean?) {
//successful
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
接口说明
fun updateRoomTagName(
roomTagId: Long,
name: String,
callback: IResponse<String>
)
参数说明
参数 | 说明 |
---|---|
roomTagId | 房间组标签 ID |
name | 新的房间标签名称 |
callback | 查询结果的回调 |
调用示例
FamilyManagerCoreKit.getRoomTagUseCase().updateRoomTagName(rtagId,”一楼过道“,object :IResponse<Boolean>{
override fun onSuccess(result:Boolean?) {
//successful
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
接口说明
fun updateRoomTagSortInList(
gid: Long,
roomTagIds: List<String>,
callback: IResponse<String>
)
参数说明
参数 | 说明 |
---|---|
gid | 家庭 ID |
roomTagIds | 房间组标签 ID 集合 |
callback | 查询结果的回调 |
调用示例
val list = listof("tagid1","tagid2","tagid3")
FamilyManagerCoreKit.getRoomTagUseCase().updateRoomTagSortInList(gid,rtagId,list ,object :IResponse<String>{
override fun onSuccess(result:String?) {
//successful
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
修改房间归属房间组标签信息,包含修改房间组标签排序,以及房间组下房间的新增、删除和房间列表排序。
接口说明
fun managerAndSortRoomInTagsList(
gid: Long,
roomTagIds: List<String>,
roomGroupIds: Map<String, List<String>>,
callback: IResponse<String>
)
参数说明
参数 | 说明 |
---|---|
gid | 家庭 ID |
roomTagIds | 房间组标签 ID 集合 |
roomGroupIds | 房间组下的房间列表,0 对应默认分组 |
callback | 查询结果的回调 |
调用示例
val list = listof("tagid1","tagid2","tagid3")
val roomGroupIds = hashMapOf(Pair("0", listOf("roomid1","roomid2","roomid3")),Pair("tagid1", listOf("roomid12","roomid13","roomid14")))
FamilyManagerCoreKit.getRoomTagUseCase().managerAndSortRoomInTagsList(gid,list ,roomGroupIds,object :IResponse<String>{
override fun onSuccess(result:String?) {
//successful
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
添加房间,可以携带房间标签信息,目前接口可以支持一对多的标签。
接口说明
fun addRoomWithTag(
gid: Long,
name: String,
roomTagIds: List<String>,
callback: IResponse<String>
)
参数说明
参数 | 说明 |
---|---|
gid | 家庭 ID |
name | 房间名称 |
roomTagIds | 房间组标签 ID 集合 |
callback | 查询结果的回调 |
调用示例
FamilyManagerCoreKit.getRoomTagUseCase().addRoomWithTag(gid,”阳台“,listof("tagid"),object :IResponse<String>{
override fun onSuccess(result:String?) {
//successful
}
override fun onError(errorCode: String?, errorMessage: String?) {
}
})
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈