• 智能生活 App SDK 之家庭信息管理接口(全)


    涂鸦智能生活 App SDK 为全屋智能业务场景的移动端开发提供各类模块和组件。因此,家庭是抽象于全屋智能场景的概念,指用户在以家或者场所为单位的范围内所有设备、账号、权限等信息的集合。

    家庭管理主要包括以下能力:

    • 查询家庭列表
    • 添加、修改和移除单个家庭
    • 管理家庭名称,地理位置、房间列表信息,成员信息等
    • 家庭下,设备添加、信息修改、监听移除、设备状态变化的监听等

    用户登录成功后需要通过 TuyaSmartHomeManager 去查询整个家庭列表的信息,然后初始化其中的一个家庭 TuyaSmartHome,查询家庭详情信息,就可以对家庭中的设备进行操作控制。

    功能说明

    类名(协议名) 说明
    TuyaSmartHomeManager 查询家庭列表、家庭列表排序、添加家庭
    TuyaSmartHomeManagerDelegate 增删家庭、MQTT 连接成功回调

    单个家庭信息管理相关的所有功能对应 TuyaSmartHome 类,需要使用正确的 homeId 进行初始化。错误的 homeId 会导致初始化失败,返回 nil。主要功能:单个家庭信息管理,家庭下的家庭成员管理,房间管理等。

    类名(协议名) 说明
    TuyaSmartHome 家庭管理类
    TuyaSmartHomeDelegate 家庭下信息变更回调

    初始化 home 对象之后需要去查询家庭的详情 getHomeDataWithSuccess:failure:home 实例对象中的属性 homeModelroomListdeviceListgroupListsharedDeviceListsharedGroupList 才有数据。

    创建家庭

    接口说明

    1. - (void)addHomeWithName:(NSString *)homeName
    2. geoName:(NSString *)geoName
    3. rooms:(NSArray *)rooms
    4. latitude:(double)latitude
    5. longitude:(double)longitude
    6. success:(TYSuccessLongLong)success
    7. failure:(TYFailureError)failure;

    参数说明

    参数 说明
    homeName 家庭的名称
    geoName 家庭的地址
    rooms 家庭下房间的名称列表
    latitude 家庭地址纬度
    longitude 家庭地址经度
    success 成功回调
    failure 失败回调

    示例代码

    Objc:

    1. - (void)addHome {
    2. [self.homeManager addHomeWithName:@"you_home_name"
    3. geoName:@"city_name"
    4. rooms:@[@"room_name"]
    5. latitude:lat
    6. longitude:lon
    7. success:^(double homeId) {
    8. // homeId 创建的家庭的 homeId
    9. NSLog(@"add home success");
    10. } failure:^(NSError *error) {
    11. NSLog(@"add home failure: %@", error);
    12. }];
    13. }

    Swift:

    1. func addHome() {
    2. homeManager.addHome(withName: "you_home_name",
    3. geoName: "city_name",
    4. rooms: ["room_name"],
    5. latitude: lat,
    6. longitude: lon,
    7. success: { (homeId) in
    8. // homeId 创建的家庭的 homeId
    9. print("add home success")
    10. }) { (error) in
    11. if let e = error {
    12. print("add home failure: \(e)")
    13. }
    14. }
    15. }

    查询家庭列表

    本接口返回的数据只是家庭的简单信息。如果要查询具体家庭的详情,您需要去 TuyaSmartHome 初始化一个 home,调用接口 getHomeDataWithSuccess:failure:

    接口说明

    1. // 查询家庭的列表
    2. - (void)getHomeListWithSuccess:(void(^)(NSArray <TuyaSmartHomeModel *> *homes))success
    3. failure:(TYFailureError)failure;

    参数说明

    参数 说明
    success 成功回调
    failure 失败回调

    示例代码

    Objc:

    - 
  • 相关阅读:
    我是如何写一篇技术文的?
    springboot成都大学校园植物网站毕业设计-附源码181557
    Web基础与HTTP协议
    关于js实现斐波那契数列的一些思考(递归、循环、尾递归优化)
    这些不知道,别说你熟悉 Nacos,深度源码解析!
    iptables防火墙
    短视频平台爆火的AI配音|超实用的配音工具分享篇
    SpringBoot整合Shiro
    Mybatis框架总结(动力节点)
    Chatgpt人工智能对话源码系统分享 带完整搭建教程
  • 原文地址:https://blog.csdn.net/Ms_Smart/article/details/127849037