GizAepSceneManager 类

提供自动场景、手动场景、设备/分组场景的增删改查,以及地理围栏相关处理

目录

API 定义

[sharedInstance]

获取GizAepSceneManager单例的实例

定义

+ (instancetype _Nonnull)sharedInstance;

代码示例

GizAepSceneManager *sceneManager = [GizAepSceneManager sharedInstance];

[createAutoScene]

创建自动场景

定义

- (void)createAutoScene:(GizAutoScene * _Nonnull)autoScene homeId:(NSString * _Nonnull)homeId callback:(void (^)(AepApiResult* _Nonnull result, GizAutoScene* _Nullable autoScene))callback;

参数

属性名 描述
autoScene 自动场景GizAutoScene
homeId 家庭id
callback 请求结果,可获取信息查看AepApiResult,GizAutoScene

回调参数

属性名 描述
result 详细见 AepApiResult 定义
autoScene 创建场景成功返回的场景对象

代码示例

    GizConditionWeather* weather = [GizConditionWeather new];
    weather.cityName = @"广州";
    weather.latitude = @"23.165204";
    weather.longitude = @"113.314919";
    weather.expressionOpt = GIZ_EXPRESSION_OPT_EQUAL;
    weather.weatherType = GIZ_CONDITION_WEATHER_SUNSET;
    weather.zone = 8;

    GizAepSceneAction* action = [GizAepSceneAction new];
    GizAepSceneNoticeAction* notice = [GizAepSceneNoticeAction new];
    notice.type = GIZ_SCENE_NOTICE_APP;
    action.notice = notice;

    GizAutoScene* autoScene = [GizAutoScene new];
    autoScene.actions = @[action];
    autoScene.conditions = @[weather];
    autoScene.name = @"日落通知";
    [[GizAepSceneManager sharedInstance] createAutoScene:autoScene homeId:@"your_homeId" callback:^(AepApiResult * _Nonnull result, GizAutoScene * _Nonnull autoScene) {
    }];

[getAutoSceneList]

获取自动场景列表

定义

- (void)getAutoSceneList:(NSString* _Nonnull)homeId callback:(void (^)(AepApiResult* _Nonnull result, NSArray<GizAutoScene *>* _Nullable autoSceneList))callback;

参数

属性名 描述
homeId 家庭id
callback 获取自动场景列表结果回调

回调参数

属性名 描述
result 详细见 AepApiResult 定义
autoSceneList 获取到的自动场景列表

代码示例

[[GizAepSceneManager sharedInstance] getAutoSceneList:@"your_homeId" callback:^(AepApiResult * _Nonnull result, NSArray<GizAutoScene *> * _Nonnull autoSceneList) {
}];

[deleteAutoScene]

删除自动场景

定义

- (void)deleteAutoScene:(NSString* _Nonnull)autoSceneId homeId:(NSString* _Nonnull)homeId callback:(void (^)(AepApiResult* _Nonnull result))callback;

参数

属性名 描述
autoSceneId 自动场景id
homeId 家庭id
callback 请求结果,可获取信息查看AepApiResult

回调参数

属性名 描述
result 详细见 AepApiResult 定义

代码示例

[[GizAepSceneManager sharedInstance] deleteAutoScene:@"your_autoSceneId" homeId:@"your_homeId" callback:^(AepApiResult * _Nonnull result) {
}];

[editAutoScene]

编辑自动场景

定义

- (void)editAutoScene:(GizAutoScene* _Nonnull)autoScene homeId:(NSString* _Nonnull)homeId callback:(void (^)(AepApiResult* _Nonnull result))callback;

参数

属性名 描述
autoScene 自动场景对象
homeId 家庭id
callback 请求结果,可获取信息查看AepApiResult

回调参数

属性名 描述
result 详细见 AepApiResult 定义

代码示例

[[GizAepSceneManager sharedInstance] getAutoSceneDetail:@"your_autoSceneId" homeId:@"your_homeId" callback:^(AepApiResult * _Nonnull result, GizAutoScene * _Nonnull autoScene) {
    autoScene.name = @"new_autoSceneName";
    [[GizAepSceneManager sharedInstance] editAutoScene:autoScene homeId:@"your_homeId" callback:^(AepApiResult * _Nonnull result) {
    }];
}];

[editAutoScene]

编辑自动场景开关

定义

- (void)editAutoScene:(NSString* _Nonnull)autoSceneId open:(BOOL)open homeId:(NSString* _Nonnull)homeId callback:(void (^)(AepApiResult* _Nonnull result))callback;

参数

属性名 描述
autoSceneId 自动场景id
open 自动场景是否开启
homeId 家庭id
callback 请求结果,可获取信息查看AepApiResult

回调参数

属性名 描述
result 详细见 AepApiResult 定义

代码示例

[[GizAepSceneManager sharedInstance] getAutoSceneDetail:@"your_autoSceneId" homeId:@"your_homeId" callback:^(AepApiResult * _Nonnull result, GizAutoScene * _Nonnull autoScene) {
    BOOL isOpen = !autoScene.open;
    [[GizAepSceneManager sharedInstance] editAutoScene:autoScene.sceneId open:isOpen homeId:@"your_homeId" callback:^(AepApiResult * _Nonnull result) {
    }];
}];

[getAutoSceneDetail]

获取自动场景详情

定义

- (void)getAutoSceneDetail:(NSString* _Nonnull)autoSceneId homeId:(NSString* _Nonnull)homeId callback:(void (^)(AepApiResult* _Nonnull result, GizAutoScene* _Nullable autoScene))callback;

参数

属性名 描述
autoSceneId 自动场景id
homeId 家庭id
callback 获取自动场景详情结果回调

回调参数

属性名 描述
result 详细见 AepApiResult 定义
autoScene 获取到的场景对象

代码示例

[[GizAepSceneManager sharedInstance] getAutoSceneDetail:@"your_autoSceneId" homeId:@"your_homeId" callback:^(AepApiResult * _Nonnull result, GizAutoScene * _Nonnull autoScene) {
}];

[createManualScene]

创建手动场景

定义

- (void)createManualScene:(GizManualScene* _Nonnull)manualScene homeId:(NSString* _Nonnull)homeId callback:(void (^)(AepApiResult* _Nonnull result, GizManualScene* _Nullable manualScene))callback;

参数

属性名 描述
manualScene 手动场景GizManualScene
homeId 家庭id
callback 请求结果,可获取信息查看AepApiResult,GizManualScene

回调参数

属性名 描述
result 详细见 AepApiResult 定义
manualScene 创建成功获取的手动场景对象

代码示例

    GizAepSceneAction* action = [GizAepSceneAction new];
    GizAepSceneNoticeAction* notice = [GizAepSceneNoticeAction new];
    notice.type = GIZ_SCENE_NOTICE_APP;
    action.notice = notice;
    GizManualScene* manualScene = [GizManualScene new];
    manualScene.actions = @[action];
    manualScene.name = @"your_manualScene_name";
    [[GizAepSceneManager sharedInstance] createManualScene:manualScene homeId:@"your_homeId" callback:^(AepApiResult * _Nonnull result, GizManualScene * _Nonnull manualScene) {
    }];

[getManualSceneList]

获取手动场景列表

定义

- (void)getManualSceneList:(NSString* _Nonnull)homeId callback:(void (^)(AepApiResult* _Nonnull result, NSArray<GizManualScene *>* _Nullable manualSceneList))callback;

参数

属性名 描述
homeId 家庭id
callback 获取手动场景列表结果回调

回调参数

属性名 描述
result 详细见 AepApiResult 定义
manualSceneList 获取到的手动场景对象列表

代码示例

[[GizAepSceneManager sharedInstance] getManualSceneList:@"your_homeId" callback:^(AepApiResult * _Nonnull result, NSArray<GizManualScene *> * _Nonnull manualSceneList) {
}];

[deleteManualScene]

删除手动场景

定义

- (void)deleteManualScene:(NSString* _Nonnull)manualSceneId homeId:(NSString* _Nonnull)homeId callback:(void (^)(AepApiResult* _Nonnull result))callback;

参数

属性名 描述
manualSceneId 自动场景id
homeId 家庭id
callback 请求结果,可获取信息查看AepApiResult

回调参数

属性名 描述
result 详细见 AepApiResult 定义

代码示例

[[GizAepSceneManager sharedInstance] deleteManualScene:@"your_manualSceneId" homeId:@"your_homeId" callback:^(AepApiResult * _Nonnull result) {
}];

[editManualScene]

编辑手动场景

定义

- (void)editManualScene:(GizManualScene* _Nonnull)manualScene homeId:(NSString* _Nonnull)homeId callback:(void (^)(AepApiResult* _Nonnull result))callback;

参数

属性名 描述
manualScene 手动场景对象
homeId 家庭id
callback 请求结果,可获取信息查看AepApiResult

回调参数

属性名 描述
result 详细见 AepApiResult 定义

代码示例

[[GizAepSceneManager sharedInstance] getManualSceneDetail:@"your_manualSceneId" homeId:@"your_homeId" callback:^(AepApiResult * _Nonnull result, GizManualScene * _Nonnull manualScene) {
    manualScene.name = @"new_manualScene_name";
    [[GizAepSceneManager sharedInstance] editManualScene:manualScene homeId:@"your_homeId" callback:^(AepApiResult * _Nonnull result) {
    }];
}];

[executeManualScene]

执行手动场景

定义

- (void)executeManualScene:(NSString* _Nonnull)manualSceneId homeId:(NSString* _Nonnull)homeId callback:(void (^)(AepApiResult* _Nonnull result))callback;

参数

属性名 描述
manualSceneId 手动场景id
homeId 家庭id
callback 请求结果,可获取信息查看AepApiResult

回调参数

属性名 描述
result 详细见 AepApiResult 定义

代码示例

[[GizAepSceneManager sharedInstance] executeManualScene:@"your_manualSceneId" homeId:@"your_homeId" callback:^(AepApiResult * _Nonnull result) {
}];

[getManualSceneDetail]

获取手动场景详情

定义

- (void)getManualSceneDetail:(NSString* _Nonnull)manualSceneId homeId:(NSString* _Nonnull)homeId callback:(void (^)(AepApiResult* _Nonnull result, GizManualScene* _Nullable manualScene))callback;

参数

属性名 描述
manualSceneId 手动场景id
homeId 家庭id
callback 获取手动场景详情结果回调

回调参数

属性名 描述
result 详细见 AepApiResult 定义
manualScene 手动场景对象

代码示例

[[GizAepSceneManager sharedInstance] getManualSceneDetail:@"your_manualSceneId" homeId:@"your_homeId" callback:^(AepApiResult * _Nonnull result, GizManualScene * _Nonnull manualScene) {
}];

[getDeviceSceneList]

获取设备或分组场景列表

定义

- (void)getDeviceSceneList:(NSString* _Nonnull)groupOrSno type:(GizAepDeviceType)type callback:(void (^)(AepApiResult* _Nonnull result, NSArray<GizBaseScene *>* _Nullable sceneList))callback;

参数

属性名 描述
groupOrSno 设备标识,分组传groupId,设备传sno
type 设备类型
callback 获取手动场景列表结果回调

回调参数

属性名 描述
result 详细见 AepApiResult 定义
sceneList 场景列表

代码示例

[[GizAepSceneManager sharedInstance] getDeviceSceneList:@"your_sno" type:GIZ_AEP_DEVICE callback:^(AepApiResult * _Nonnull result, NSArray<GizBaseScene *> * _Nonnull sceneList) {
}];

[getEnclosureList]

获取地理围栏列表

定义

- (void)getEnclosureList:(NSArray<NSString*>* _Nonnull)homeIdList callback:(void (^)(AepApiResult* _Nonnull result, NSArray<GizEnclosure *>* _Nullable enclosureList))callback;

参数

属性名 描述
homeIdList 家庭id列表
callback

回调参数

属性名 描述
result 详细见 AepApiResult 定义
enclosureList 返回地理围栏对象列表

代码示例

[[GizAepSceneManager sharedInstance] getEnclosureList:@[@"your_homeId"] callback:^(AepApiResult * _Nonnull result, NSArray<GizEnclosure *> * _Nonnull enclosureList) {
}];

[reportEnclosureStatus]

上报地理围栏状态

定义

- (void)reportEnclosureStatus:(NSArray<GizEnclosure*>* _Nonnull)enclosureList callback:(void (^)(AepApiResult* _Nonnull result))callback;

参数

属性名 描述
enclosureList 上报地理围栏场景状态,地理围栏对象传id,以及status状态值即可
callback 上报地理围栏状态结果回调

回调参数

属性名 描述
result 详细见 AepApiResult 定义

代码示例

[[GizAepSceneManager sharedInstance] getEnclosureList:@[@"hour_homeId"] callback:^(AepApiResult * _Nonnull result, NSArray<GizEnclosure *> * _Nonnull enclosureList) {
        if(enclosureList && enclosureList.count > 0){
            [[GizAepSceneManager sharedInstance] reportEnclosureStatus:enclosureList callback:^(AepApiResult * _Nonnull result) {
            }];
        }
}];

results matching ""

    No results matching ""