更新时间:2024-08-23 09:47:59下载pdf
本文主要操作场景跟房间的关联关系。例如,将场景保存至某些房间内,在房间内批量移除或设置场景。
ThingSmartRoomBiz
提供了比 ThingSmartRoom
更多的功能。如果您仍在使用 ThingSmartRoom
,请参考 此链接。
接口说明
/// Add a scene.
/// @param sceneInfo The added scene attributes.
/// @param homeID The home ID.
/// @param success On success, return the ThingSmartSceneModel object.
/// @param failure When an error occurred, return error.
+ (void)addScene:(TSceneRequestInfo *)sceneInfo
homeID:(long long)homeID
success:(ThingSceneGetModelCompletion)success
failure:(ThingFailureError)failure;
参数说明
参数 | 类型 | 说明 |
---|---|---|
sceneInfo | TSceneRequestInfo 对象 | 保存的场景数据信息 |
homeID | long long | 家庭 ID |
success | block | 保存成功返回场景模型 |
failure | block | 保存失败返回错误信息 |
TSceneRequestInfo
对象
参数 | 类型 | 说明 |
---|---|---|
sceneModel | ThingSmartSceneModel | 场景模型数据 |
needCleanGidSid | bool | 是否需要清除标准场景信息,一般设置为 false |
ThingSmartSceneModel
模型相关房间参数
参数 | 类型 | 说明 |
---|---|---|
roomIds | array | 房间 ID 数组 |
调用示例
Objective-C
- (void)saveScene:(ThingSmartSceneModel *)sceneModel inRoom:(NSArray *)roomIds hoomId:(long long)homeId {
sceneModel.roomIds = roomIds;
TSceneRequestInfo *requestInfo = [[TSceneRequestInfo alloc] init];
requestInfo.sceneModel = sceneModel;
requestInfo.needCleanGidSid = NO;
[ThingSmartScene addScene:requestInfo homeID:homeId success:^(ThingSmartSceneModel * _Nonnull scene) {
} failure:^(NSError *error) {
}];
}
Swift
func saveScene(sceneModel: ThingSmartSceneModel, inRoom: [String], hoomId: Int64) {
sceneModel.roomIds = inRoom
let requestInfo = TSceneRequestInfo.init()
requestInfo.sceneModel = sceneModel
requestInfo.needCleanGidSid = false
ThingSmartScene.add(requestInfo, homeID: hoomId) { resultModel in
} failure: { error in
}
}
接口说明
在当前家庭中,在某个房间内批量移除所选场景。
/// Remove scenes in the specified room.
/// @param roomId The room ID.
/// @param sceneIds The list of scene IDs, eg: "id1,id2,id3"
/// @param success Success callback.
/// @param failure Failure callback.
- (void)removeSceneWithHomeId:(long long)homeId
roomId:(NSString *)roomId
sceneIds:(NSString *)sceneIds
success:(ThingSuccessBOOL)success
failure:(ThingFailureError)failure;
参数说明
参数 | 类型 | 说明 |
---|---|---|
homeId | long long | 家庭 ID |
roomId | string | 房间 ID |
sceneIds | string | 场景 ID 列表,例如,"id1,id2,id3" |
success | block | 成功返回 true ,否则返回 false |
failure | block | 返回错误信息 |
调用示例
Objective-C
- (void)removeScenesInRoom:(NSString *)roomId sceneIds:(NSString *)sceneIds hoomId:(long long)homeId {
[[ThingSmartSceneManager sharedInstance] removeSceneWithHomeId:homeId roomId:roomId sceneIds:sceneIds success:^(BOOL result) {
} failure:^(NSError *error) {
}];
}
Swift
func removeScene(hoomId: Int64, roomId: String, sceneIds: String) {
ThingSmartSceneManager.sharedInstance().removeScene(withHomeId: hoomId, roomId: roomId, sceneIds: sceneIds) { res in
} failure: { error in
}
}
接口说明
在当前家庭中,在某个房间内对所选场景进行排序。
/// Sort scenes in the specified room.
/// @param roomId The room ID.
/// @param sceneIds The list of scene IDs, eg: "id1,id2,id3"
/// @param success Success callback.
/// @param failure Failure callback.
- (void)sortSceneWithHomeId:(long long)homeId
room:(NSString *)roomId
sceneIds:(NSString *)sceneIds
success:(ThingSuccessBOOL)success
failure:(ThingFailureError)failure;
参数说明
参数 | 类型 | 说明 |
---|---|---|
homeId | long long | 家庭 ID |
roomId | string | 房间 ID |
sceneIds | string | 场景 ID 列表,例如,"id1,id2,id3" |
success | block | 成功返回 true ,否则返回 false |
failure | block | 返回错误信息 |
调用示例
Objective-C
- (void)sortScenesInRoom:(NSString *)roomId sceneIds:(NSString *)sceneIds hoomId:(long long)homeId {
[[ThingSmartSceneManager sharedInstance] sortSceneWithHomeId:homeId room:roomId sceneIds:sceneIds success:^(BOOL result) {
} failure:^(NSError *error) {
}];
}
Swift
func sortScenes(roomId: String, sceneIds: String, hoomId: Int64) {
ThingSmartSceneManager.sharedInstance().sortScene(withHomeId: hoomId, room: roomId, sceneIds: sceneIds) { res in
} failure: { error in
}
}
接口说明
在当前家庭中,将所选场景设置到所选的房间内。
/// Batch save scenes in specified rooms.
/// @param gid The home ID.
/// @param ruleIds The list of scene IDs.
/// @param roomIds The list of room IDs.
/// @param success Success callback.
/// @param failure Failure callback.
- (void)batchSaveSceneInRoomsWithGid:(long long)gid
ruleIds:(NSArray<NSString *> *)ruleIds
roomIds:(NSArray<NSString *> *)roomIds
success:(ThingSuccessBOOL)success
failure:(ThingFailureError)failure;
参数说明
参数 | 类型 | 说明 |
---|---|---|
gid | long long | 家庭 ID |
ruleIds | array | 场景 ID 列表 |
roomIds | array | 房间 ID 列表 |
success | block | 成功返回 true ,否则返回 false |
failure | block | 返回错误信息 |
调用示例
Objective-C
- (void)batchSaveScenesInRooms:(NSArray<NSString *> *)roomIds sceneIds:(NSArray<NSString *> *)sceneIds hoomId:(long long)homeId {
[[ThingSmartSceneManager sharedInstance] batchSaveSceneInRoomsWithGid:homeId ruleIds:sceneIds roomIds:roomIds success:^(BOOL result) {
} failure:^(NSError *error) {
}];
}
Swift
func batchSaveScenes(roomIds: [String], sceneIds: [String], hoomId: Int64) {
ThingSmartSceneManager.sharedInstance().batchSaveSceneInRooms(withGid: hoomId, ruleIds: sceneIds, roomIds: roomIds) { res in
} failure: { error in
}
}
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈