You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

217 lines
5.5 KiB

//
// JLDeviceConfigFuncModel.h
// JL_BLEKit
//
// Created by EzioChan on 2022/10/31.
// Copyright © 2022 www.zh-jieli.com. All rights reserved.
//
#import "ECOneToMorePtl.h"
NS_ASSUME_NONNULL_BEGIN
//MARK: - 必须功能
/// 必须功能
@interface JLDeviceBasicFuncModel : NSObject
/// 支持OTA
@property(nonatomic,assign)BOOL spOTA;
/// 支持资源更新
@property(nonatomic,assign)BOOL spSourceUpdate;
/// 支持表盘增加/删除/查询
@property(nonatomic,assign)BOOL spDialOperation;
/// 支持表盘切换
@property(nonatomic,assign)BOOL spDialSwitch;
/// 支持表盘预览
@property(nonatomic,assign)BOOL spDialPreview;
-(instancetype)init:(NSData *)data;
@end
//MARK: - 系统功能
/// 系统功能
@interface JLDeviceSystemFuncModel : NSObject
/// 支持屏幕设置
@property(nonatomic,assign)BOOL spScreenSetting;
/// 支持震动强度
@property(nonatomic,assign)BOOL spVibrationIntensity;
/// 支持勿扰模式
@property(nonatomic,assign)BOOL spDoNotDisturb;
/// 支持锻炼设置
@property(nonatomic,assign)BOOL spExerciseSettings;
/// 支持断开提醒
@property(nonatomic,assign)BOOL spDisconnectReminder;
-(instancetype)init:(NSData *)data;
@end
//MARK: - 功能选项
/// 功能选项
@interface JLDeviceExportFuncModel : NSObject
/// 支持常用联系人
@property(nonatomic,assign)BOOL spTopContacts;
/// 支持音乐文件浏览
@property(nonatomic,assign)BOOL spMusicFileBrows;
/// 音乐文件删除、传输
@property(nonatomic,assign)BOOL spMusicFileOp;
/// 支持闹钟设置
@property(nonatomic,assign)BOOL spAlarmSettings;
/// 支持信息同步
@property(nonatomic,assign)BOOL spSyncInfo;
/// 支持天气同步
@property(nonatomic,assign)BOOL spSyncWeather;
/// 支持找手机/设备
@property(nonatomic,assign)BOOL spFindPhoneOrDevice;
-(instancetype)init:(NSData *)data;
@end
//MARK: - 运动健康
/// 手表综合功能支持
@interface JLHealthFuncComprehensive : NSObject
/// 支持健康监控
@property(nonatomic,assign)BOOL spHealthMonitor;
/// 支持个人信息
@property(nonatomic,assign)BOOL spPersonInfo;
/// 支持睡眠检测
@property(nonatomic,assign)BOOL spSleepMonitor;
/// 支持运动心率提醒
@property(nonatomic,assign)BOOL spSportHeartRateRemind;
/// 支持久坐提醒
@property(nonatomic,assign)BOOL spSedentaryRemind;
/// 支持压力自动检测
@property(nonatomic,assign)BOOL spStressDetection;
/// 支持跌倒检测
@property(nonatomic,assign)BOOL spFallDetection;
/// 支持传感器设置
@property(nonatomic,assign)BOOL spSensorSetup;
-(instancetype)init:(NSData *)data;
@end
/// 手表运动模式支持功能
@interface JLHealthFuncSportModel : NSObject
/// 支持运动记录
@property(nonatomic,assign)BOOL spRecord;
/// 支持运动统计
@property(nonatomic,assign)BOOL spStatistics;
/// 支持室外运动
@property(nonatomic,assign)BOOL spOutdoor;
/// 支持室内运动
@property(nonatomic,assign)BOOL spIndoor;
-(instancetype)init:(NSData *)data;
@end
/// 手表计步功能支持功能
@interface JLHealthFuncGSensorModel : NSObject
/// 是否存在该传感器
@property(nonatomic,assign)BOOL spExist;
/// 支持运动步数
@property(nonatomic,assign)BOOL spStep;
-(instancetype)init:(NSData *)data;
@end
/// 手表心率功能支持功能
@interface JLHealthFuncHeartRateModel : NSObject
/// 是否存在该传感器
@property(nonatomic,assign)BOOL spExist;
/// 支持连续测试
@property(nonatomic,assign)BOOL spSerialTest;
-(instancetype)init:(NSData *)data;
@end
/// 手表血氧功能支持功能
@interface JLHealthFuncBloodOxygenModel : NSObject
/// 是否存在该传感器
@property(nonatomic,assign)BOOL spExist;
-(instancetype)init:(NSData *)data;
@end
/// 手表海拔功能支持功能
@interface JLHealthFuncAltitudeModel : NSObject
/// 是否存在该传感器
@property(nonatomic,assign)BOOL spExist;
-(instancetype)init:(NSData *)data;
@end
/// 手表GPS功能支持功能
@interface JLHealthFuncGPSModel : NSObject
/// 是否存在该传感器
@property(nonatomic,assign)BOOL spExist;
-(instancetype)init:(NSData *)data;
@end
@interface JLDeviceHealthFuncModel : NSObject
/// 手表综合功能支持
@property(nonatomic,strong)JLHealthFuncComprehensive *spComprehensive;
/// 手表运动模式支持功能
@property(nonatomic,strong)JLHealthFuncSportModel *spSportModel;
/// 手表计步功能支持功能
@property(nonatomic,strong)JLHealthFuncGSensorModel *spGSensor;
/// 手表心率功能支持功能
@property(nonatomic,strong)JLHealthFuncHeartRateModel *spHeartRate;
/// 手表血氧功能支持功能
@property(nonatomic,strong)JLHealthFuncBloodOxygenModel *spBloodOxygen;
/// 手表海拔功能支持功能
@property(nonatomic,strong)JLHealthFuncAltitudeModel *spAltitude;
/// 手表GPS功能支持功能
@property(nonatomic,strong)JLHealthFuncGPSModel *spGPS;
-(instancetype)init:(NSData *)data;
@end
//MARK: - 手表配置信息数据结构解析
/// 手表配置信息数据结构
@interface JLDeviceConfigModel:NSObject
/// 产品标志类型
/// 0 - 运动手表
@property(nonatomic,assign)int deviceType;
/// 版本
@property(nonatomic,assign)int version;
/// - 必须功能
@property(nonatomic,strong)JLDeviceBasicFuncModel *basicFunc;
/// - 系统功能
@property(nonatomic,strong)JLDeviceSystemFuncModel *systemFunc;
/// - 功能选项
@property(nonatomic,strong)JLDeviceExportFuncModel * exportFunc;
/// - 运动健康
@property(nonatomic,strong)JLDeviceHealthFuncModel *healthFunc;
/// 功能配置所属设备的UUID
@property(nonatomic,strong)NSString * _Nullable mbleIdentifyStr;
-(instancetype)init:(NSData *)data;
@end
NS_ASSUME_NONNULL_END