更新时间:2024-03-26 10:01:39下载pdf
项目管理包括以下 API:
ThingLightingProjectManager
类提供。ThingLightingRegionManager
类提供。ThingLightingProject
类提供。ThingLightingProjectModel
类提供。项目为挂载在某一账号下的可独立操作的 单元,区域和设备等必须要挂载在某一项目下才可进行操作。
一个账号下可以有不定数量的项目,不同套餐的账号可配置不同数量的项目。新用户在注册登录后默认是没有项目的,需进行项目的创建流程后才可进行项目维度的相关操作。
Mesh 网络模式:指当前创建的项目使用的蓝牙 Mesh 网络的类型。目前,共有以下两种类型:
获取 室内/户外/停车场 项目版本下数据配置。
根据当前登录账号所购买的套餐等级,动态下发当前账号所支持创建的项目的配置信息,例如室内项目、户外项目和停车场项目。您可以创建当前接口所返回类型的项目,创建未授权类型的项目时会报错。
获取批量项目配置
接口说明
- (void)getProjectConfigListWithSuccess:(void(^)(NSArray<ThingLightingProjectConfigModel *> *configList))success
failure:(void(^)(NSError *error))failure;
参数说明
参数 | 说明 |
---|---|
success | 成功回调 |
failure | 失败回调 |
示例代码
Objective-C:
[[ThingLightingProjectManager new] getProjectConfigListWithSuccess:^(NSArray <ThingLightingProjectConfigModel *> *configList) {
NSLog(@"get success");
} failure:^(NSError *error) {
NSLog(@"get failure: %@", error);
}];
接口说明
- (void)getProjectListWithSuccess:(nullable void(^)(NSArray <ThingLightingProjectModel *> *projectList))success
failure:(nullable void(^)(NSError *error))failure;
参数说明
参数 | 说明 |
---|---|
success | 成功回调 |
failure | 失败回调 |
示例代码
Objective-C:
[[ThingLightingProjectManager new] getProjectListWithSuccess:^(NSArray <ThingLightingProjectModel *> *projectList) {
NSLog(@"get success");
} failure:^(NSError *error) {
NSLog(@"get failure: %@", error);
}];
参数 | 说明 |
---|---|
projectType | 项目类型
|
projectTypeName | 项目类型名称 |
projectIconUrl | 项目图标 URL |
spaceAttributes | 空间层级属性,ThingLightingProjectSpaceItemModel 数组 |
validationConditions | 有效输入范围限制,ThingLightingProjectValidationItemModel 数组 |
参数 | 说明 |
---|---|
name | 空间层级名称 |
iconUrl | 空间层级图标 URL |
roomLevel | 空间层级 |
参数 | 说明 |
---|---|
min | 有效范围最小值 |
max | 有效范围最大值 |
接口说明
- (void)createProjectWithProjectType:(ThingLightingProjectType)projectType
networkType:(ThingLightingProjectMeshMode)networkType
projectName:(nonnull NSString *)projectName
leaderName:(nonnull NSString *)leaderName
leaderMobile:(nonnull NSString *)leaderMobile
detailAddress:(nonnull NSString *)detailAddress
regionLocationId:(nullable NSString *)regionLocationId
success:(nullable void(^)(id result))success
failure:(nullable void(^)(NSError *error))failure;
参数说明
参数 | 说明 |
---|---|
projectType | 当前项目版本:
|
networkType | Mesh 网络模式:
|
projectName | 项目名称,必填 |
leaderName | 项目负责人姓名,必填 |
leaderMobile | 项目负责人电话号码,必填 |
detailAddress | 详细地址 室内项目版本和停车场项目版本 必传,用于描述详细地址 户外项目版本 必传,用于描述户外项目位置,建议选中区域拼接 例如:中国浙江省,美国加利福尼亚州等 |
regionLocationId | 项目行政区 ID,由国家码和一级行政区码组合,以 , 拼接,区码通过 ThingLightingRegionManager 获取,可选 |
success | 成功回调 |
failure | 失败回调 |
示例代码
Objective-C:
[[ThingLightingProjectManager new] createProjectWithProjectType:ThingLightingProjectTypeIndoor
networkType:self.meshMode
projectName:self.projectNameTextField.text
leaderName:self.leaderNameTextField.text
leaderMobile:self.leaderMobileTextField.text
detailAddress:self.detailAddressTextField.text
regionLocationId:@""
success:^(id _Nonnull result) {
} failure:NULL];
接口说明
- (void)getProjectInfoWithSuccess:(nullable void(^)(id result))success
failure:(nullable void(^)(NSError *error))failure;
参数说明
参数 | 说明 |
---|---|
success | 成功回调 |
failure | 失败回调 |
示例代码
Objective-C:
ThingLightingProject *project = [ThingLightingProject projectWithProjectId:123];
[project getProjectInfoWithSuccess:^(id result) {
NSLog(@"get success");
} failure:^(NSError *error) {
NSLog(@"get failure: %@", error);
}];
项目详情包括 Mesh 列表、项目信息、收藏区域、网关列表和区域列表。
接口说明
- (void)getProjectDetailWithSuccess:(nullable void(^)(void))success
failure:(nullable void(^)(NSError *error))failure;
参数说明
参数 | 说明 |
---|---|
success | 成功回调 |
failure | 失败回调 |
示例代码
Objective-C:
ThingLightingProject *project = [ThingLightingProject projectWithProjectId:123];
[project getProjectDetailWithSuccess:^(void) {
NSLog(@"get success");
} failure:^(NSError *error) {
NSLog(@"get failure: %@", error);
}];
接口说明
- (void)updateProjectInfoWithProjectName:(nonnull NSString *)projectName
leaderName:(nonnull NSString *)leaderName
leaderMobile:(nonnull NSString *)leaderMobile
detailAddress:(nonnull NSString *)detailAddress
regionLocationId:(nullable NSString *)regionLocationId
success:(nullable void(^)(id result))success
failure:(nullable void(^)(NSError *error))failure;
参数说明
参数 | 说明 |
---|---|
projectName | 项目名称,必填 |
leaderName | 项目负责人姓名,必填 |
leaderMobile | 项目负责人电话,必填 |
detailAddress | 详细地址 室内项目版本和停车场项目版本 必传,用于描述详细地址 户外项目版本 必传,用于描述户外项目位置,建议选中区域拼接 例如:中国浙江省,美国加利福尼亚州等 |
regionLocationId | 项目行政区 ID,由国家码和一级行政区码组合,以 , 拼接,区码通过 ThingLightingRegionManager 获取,可选 |
success | 成功回调 |
failure | 失败回调 |
示例代码
Objective-C:
ThingLightingProject *project = [ThingLightingProject projectWithProjectId:123];
[project updateProjectInfoWithProjectName:@"your projectName"
leaderName:@"your leaderName"
leaderMobile:@"your leaderMobile"
detailAddress:@"your detailAddress"
regionLocationId:nil
success:^(id result) {
NSLog(@"update success");
} failure:^(NSError *error) {
NSLog(@"update failure: %@", error);
}];
接口说明
- (void)deleteProjectWithPassword:(nonnull NSString *)password
success:(nullable void(^)(void))success
failure:(nullable void(^)(NSError *error))failure;
参数说明
参数 | 说明 |
---|---|
password | 密码,必填 |
success | 成功回调 |
failure | 失败回调 |
示例代码
Objective-C:
ThingLightingProject *project = [ThingLightingProject projectWithProjectId:123];
[project deleteProjectWithPassword:@"your password"
success:^{
NSLog(@"delete success");
} failure:^(NSError *error) {
NSLog(@"delete failure: %@", error);
}];
接口说明
- (void)getRegionListWithSuccess:(void(^)(NSArray<ThingLightingRegionModel *> *regionList))success
failure:(void(^)(NSError *error))failure;
参数说明
参数 | 说明 |
---|---|
success | 成功回调 |
failure | 失败回调 |
示例代码
Objective-C:
ThingLightingRegionManager *project = [ThingLightingRegionManager new];
[project getRegionListWithSuccess:^(NSArray * _Nonnull regionList) {
NSLog(@"get success");
} failure:^(NSError * _Nonnull error) {
NSLog(@"get failure: %@", error);
}];
参数 | 说明 |
---|---|
locationId | 行政区 ID |
name | 行政区名称 |
pinyinInitials | 行政区名称首字母 |
parentId | 上级行政区 ID |
name | 空间层级名称 |
参数 | 说明 |
---|---|
projectId | 项目 ID |
name | 项目名称 |
geoName | 项目地理位置 |
latitude | 纬度 |
longitude | 经度 |
backgroundUrl | 项目背景图片 |
controlMode | 控制模式,例如:
|
leaderName | 项目负责人名称 |
leaderMobile | 项目负责人手机号码或邮箱地址 |
clientCount | 设备总数 |
errorClientCount | 离线设备总数(包括蓝牙直连设备) |
authClientCount | 授权设备总数 |
realOfflineCount | 离线设备总数(不包括蓝牙直连设备) |
power | 能耗 |
detail | 项目详细地址 |
projectType | 项目类型 |
regionLocationId | 项目区域 ID |
projectTypeName | 项目类型名称 |
projectIconUrl | 项目图标 URL |
displayOrder | 排序 |
dealStatus | 公版字段 |
role | 公版字段 |
admin | 公版字段 |
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈