// // BLEBaseBl.h // BluetoothDemo // // Created by mac on 17/3/13. // Copyright © 2017年 . All rights reserved. // #import #import #import "BLEBLDelegate.h" #import "BluetoothDelegate.h" #import "BlueToothEume_FireBoltt.h" @interface BLEBaseBlFireBoltt : NSObject @property (nonatomic, weak) id delegate; + (nullable instancetype)shareInstance; /** 查找设备 */ - (void)findDeviceWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd; /** 设置时间 */ - (void)setIngTimeWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd; /** 绑定请求 */ - (void)bindingDeviceWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd; /** 同步联系人 */ - (void)syncContactWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd contentArr:(NSArray *)contentArr; /** 二维码推送 @param cmd 命令类型 @param payType 收款码类型 1:zfb收款码,2:微信收款码,3:Paypal收款码,4.个人微信码 @param qrCodeImg 二维码字符串 */ - (void)qrCodePushWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd PayType:(NSInteger)payType qrCodeImg:(UIImage *)qrCodeImg; /** 手表WIFI */ - (void)watchWifiWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd; /** 协助输入开始 */ - (void)inputStartWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd; /** 发送协助输入 @param cmd 命令类型 @param content 输入的内容 */ - (void)inputSendWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd content:(NSString *)content; /** 发送剪切板数据 @param cmd 命令类型 @param content 剪切板内容 */ - (void)shearPlateWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd content:(NSString *)content; /** 协助输入结束 */ - (void)inputEndWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd; /** 表盘推送 @param cmd 命令类型 @param dialType 表盘类型 */ - (void)dialPushWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd dialType:(NSInteger)dialType; /** 紧急拨号 使用#分割手机号 @param cmd 命令类型 @param urgentNumber 紧急拨号的号码 */ - (void)urgentDialWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd urgentNumber:(NSString *)urgentNumber; /** 同步健康数据(key 0xA0) @param type 1:睡眠,2:心率,3:计步,4:运动模式 (手环使用,72平台传0同步所有) 5:血压 6:血氧 @param timeArr 时间戳数组(三个时间),传空则为获取所有 */ - (void)syncHealthWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd Type:(NSInteger)type timeArr:(NSArray *)timeArr; /** 同步表盘数据 */ - (void)syncDialPushFB; /** WIFI需要密码 */ - (void)wifiPassWordWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd SSID:(NSString *)SSID PassWord:(NSString *)passWord; /** 已保存的WIFI */ - (void)wifiLinkWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd NetworkId:(NSString *)networkId; /** WIFI无需密码 */ - (void)wifiNoPassWordWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd SSID:(NSString *)SSID; /** 固件升级启动 @param updateData 固件升级包数据 */ - (void)firmwareUpdateWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd UpdateData:(NSData *)updateData; /** 获取设备固件版本信息 */ - (void)firmwareVersionWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd; /** 闹钟设置 @param alarmClockArr 闹钟数组(时间戳字符串&&周期字符串) */ - (void)setAlarmClockWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd AlarmClockArr:(NSArray *)alarmClockArr; /** 用户信息设置 @param gender 性别 0:女 1:男 @param age 年龄 @param height 身高 @param weight 体重 @param goal 运动目标 */ - (void)setUserInfoWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd gender:(NSString *)gender age:(NSString *)age height:(NSString *)height weight:(NSString *)weight Goal:(NSString *)goal BMI:(NSString *)BMI; /** 防丢设置 @param ONOFF 0:关闭 1:开启 */ - (void)setTheLostWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd ONOFF:(BOOL)ONOFF; /** 久坐设置 @param ONOFF 0:关闭 1:开启 @param StartTime 开始时间 @param endTime 结束时间 @param cycle 周期 @param sittingTime 久坐时间 @param sittingThreshold 久坐阈值 */ - (void)setSedentaryWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd ONOFF:(BOOL)ONOFF StartTime:(NSString *)StartTime EndTime:(NSString *)endTime Cycle:(NSString *)cycle SittingTime:(NSString *)sittingTime SittingThreshold:(NSString *)sittingThreshold; /** 自动睡眠设置 (暂不使用) @param ONOFF 0:关闭 1:开启 */ - (void)setSleepWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd ONOFF:(BOOL)ONOFF; /** 系统用户设置(key 0x27) @param cmd 命令类型 */ - (void)setSystemUserWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd; /** 喝水提醒设置(key 0x28) @param ONOFF 喝水使能 0:关 1:开 @param startTime 开始时间 小时+分钟 @param endTime 结束时间 小时+分钟 @param cycle 周期 @param interval 喝水间隔设置 分钟 */ - (void)setDrinkRemindWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd DrinkONOFF:(BOOL)ONOFF StartTime:(NSString *)startTime EndTime:(NSString *)endTime Cycle:(NSString *)cycle Interval:(NSString *)interval; /** 设备电量请求(key 0x40) */ - (void)requestBatteryWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd; /** 解除绑定请求(key 0x42) */ - (void)unbundledDeviceWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd; /** 拍照开关(key 0x46) ->手环使用 @param ONOFF 0:相机已关闭 1:相机已打开 */ - (void)cameraSwitchWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd ONOFF:(BOOL)ONOFF; /** 横竖显示(key 0x49) @param isVertical 0:横屏1:竖屏 */ - (void)relationDisplayWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd IsVertical:(BOOL)isVertical; /** 抬手亮屏显示(key 0x4A) @param hand 0:左手 1:右手 @param raise 0:抬手亮屏关闭 1:抬手亮屏开启 @param flip 0:翻腕亮屏关闭 1:翻腕亮屏开启 */ - (void)gesturesControlWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd Hand:(NSInteger)hand Raise:(BOOL)raise Flip:(BOOL)flip; /** 勿扰模式(key 0x64) @param ONOFF 勿扰使能 1: 开启 0: 关闭 @param startTime 开始时间 @param endTime 结束时间 */ - (void)notDisturbWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd ONOFF:(BOOL)ONOFF StartTime:(NSString *)startTime EndTime:(NSString *)endTime; /** 提醒模式(key 0x65) @param remindType 提醒方式 1:亮屏 2:震动 3:亮屏+震动 */ - (void)remindModelWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd RemindType:(NSInteger)remindType; /** 同步实时数据(key 0xB0) @param syncType 1:睡眠 2:心率 3:计步 4:运动模式 5:血压 6: 心电 7:血氧 8:体温 */ - (void)realTimesyncWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd SyncType:(NSInteger)syncType; /** 读取手环设置请求(key 0x2D) @param cmd 命令类型 */ - (void)readBraceletSetWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd; /** 读取手环配置请求(key 0x2E) @param cmd 命令类型 */ - (void)readProfileWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd; /** 运动目标设置 @param cmd 命令类型 @param targetSteps 运动目标步数 @param sportMode 运动模式 0:计步 1:跑步 2:骑行 3:爬山 */ - (void)setSportTargetWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd TargetSteps:(NSInteger)targetSteps SportMode:(NSInteger)sportMode; /** 设置推送 @param cmd 命令类型 @param value 推送值 */ - (void)setPushWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd value:(NSInteger)value; /** 心率检测设置 @param cmd 命令类型 @param ONOFF 开关 @param startTime 开始时间 @param endTime 结束时间 @param interval 间隔时间 */ - (void)setHeartRateCheckWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd RateONOFF:(BOOL)ONOFF StartTime:(NSString *)startTime EndTime:(NSString *)endTime Interval:(NSString *)interval; /// 天气推送(最多三天,当天、明天、后天) /// @param cmd 命令类型 /// @param weathers 天气数组[{low: Strting, high: Strting, current: Strting, weatherType: Int}] - (void)setWeatherPushWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd Weathers:(NSArray *)weathers; /** 推送两天的天气 @param cmd 命令类型 @param lowTemperature 低温1 @param highTemperature 高温1 @param weatherType 天气类型1 @param lowTemperature2 低温2 @param highTemperature2 高温2 @param weatherType2 天气类型2 */ - (void)setWeather2PushWithBleCmdTypeFB:(BleCMD_FireBoltt)cmd LowTemperature:(NSString *)lowTemperature HighTemperature:(NSString *)highTemperature WeatherType:(NSInteger)weatherType LowTemperature2:(NSString *)lowTemperature2 HighTemperature2:(NSString *)highTemperature2 WeatherType2:(NSInteger)weatherType2; /** 气象指数推送 @param cmd 命令类型 @param UV 紫外线 @param pressure 气压 @param altitude 海拔 */ - (void)weatherIndexWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd UV:(NSString *)UV Pressure:(NSString *)pressure Altitude:(NSString *)altitude; /** 恢复出厂设置 @param cmd 命令类型 */ - (void)restoreFactoryWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd; /** 单位设置 @param cmd 命令类型 (key 0x01) @param measure 度量单位 (0:公制 1:英制) @param temperature 温度 (0: 摄氏度 1:华氏摄氏度) */ - (void)unitSettingWithBleCmdTypeFB:(BleCMD_FireBoltt)cmd measure:(NSInteger)measure temperature:(NSInteger)temperature; /** 进入指针校准指令(key 0xE0) @param enterType 0:退出指针校准 1:进入指针校准 */ - (void)enterCheckpointer:(BleCMD_FireBoltt )cmd enterType:(NSInteger)enterType; /** 进入指针校准指令(key 0xE1) @param timeDictionary 时间字典 */ - (void)submitCheckpointer:(BleCMD_FireBoltt )cmd timeDictionary:(NSMutableDictionary *)timeDictionary; /** 获取手环校准状态 */ - (void)getStateCheckpointer:(BleCMD_FireBoltt)cmd; /** 安卓表,请求运动模式数据 */ - (void)requestSportModeData:(BleCMD_FireBoltt)cmd timeArr:(NSArray *)timeArr ; /** 发票数据同步 @param cmd 命令类型 @param packetSum 数据包总数 @param packetIndex 第几个数据包(从1开始计算) @param abs 公司抬头简称(5个字以内) @param invoiceData 发票信息 @param isClear 是否清空发票信息 */ - (void)invoiceInformationSyncWithBleCmdTypeFB:(BleCMD_FireBoltt)cmd packetSum:(NSInteger)packetSum packetIndex:(NSInteger)packetIndex abs:(NSString *)abs invoiceData:(NSString *)invoiceData isClear:(BOOL)isClear; /** 发送收款码 @param cmd 命令类型 @param codeType 收款码类型 0:zfb 1:微信 @param codeData 收款码字串 @param isClear 清空收款码 */ - (void)setCollectionCodeWithBleCmdTypeFB:(BleCMD_FireBoltt)cmd codeType:(NSInteger)codeType codeData:(NSString *)codeData isClear:(BOOL)isClear; /** 表盘发送完成 @param cmd 命令类型 @param pushType 推送类型 */ - (void)braceletDialPushComplete:(BleCMD_FireBoltt )cmd pushType:(NSInteger)pushType; /** 手机推送表盘的信息 @param cmd 命令类型 @param pushType 推送类型 @param dialID 表盘ID @param fileSize 文件大小 */ - (void)braceletDialPush:(BleCMD_FireBoltt )cmd pushType:(NSInteger)pushType dialID:(NSInteger)dialID fileSize:(NSInteger)fileSize; /** 发送表盘数据内容 @param cmd 命令类型 @param pushType 推送类型 @param Offset 偏移 @param keep 保留 @param DialPushData 图的数据 */ - (void)braceletDialPushData:(BleCMD_FireBoltt )cmd pushType:(NSInteger)pushType offset:(NSInteger)Offset keep:(NSInteger)keep dialPushData:(NSData *)DialPushData; /** 呼吸设置 */ - (void)breatheWithBleCmdTypeFB:(BleCMD_FireBoltt)cmd withTime:(int)time ; /** 运动状态同步到设备 0xB3 */ - (void)sportStateToDeviceWithBleCmdTypeFB:(BleCMD_FireBoltt)cmd isOn:(int)on sportType:(int)sportType; /** GPS信号强度同步到设备 @param cmd 命令类型 @param dialType 信号强度 */ - (void)GPSSignalStrengthWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd dialType:(NSInteger)dialType; /** 准备启动Esim服务 @param cmd 命令类型 */ - (void)startEsimWithBleCmdTypeFB:(BleCMD_FireBoltt)cmd; /** 结束Esim服务 @param cmd 命令类型 */ - (void)endEsimWithBleCmdTypeFB:(BleCMD_FireBoltt)cmd; /** 获取设备EID @param cmd 命令类型 */ - (void)getDeviceEidWithBleCmdTypeFB:(BleCMD_FireBoltt)cmd; /** 获取设备IMEI号 @param cmd 命令类型 */ - (void)getDeviceIMEIWithBleCmdTypeFB:(BleCMD_FireBoltt)cmd; /** 获取手表的profile列表 @param cmd 命令类型 */ - (void)getProfileListWithBleCmdTypeFB:(BleCMD_FireBoltt)cmd; /** 开启profile @param cmd 命令类型 */ - (void)enableProfileWithBleCmdTypeFB:(BleCMD_FireBoltt)cmd iccid:(NSString *)iccid; /** 禁用profile @param cmd 命令类型 */ - (void)disableProfileWithBleCmdTypeFB:(BleCMD_FireBoltt)cmd iccid:(NSString *)iccid; /** 删除profile @param cmd 命令类型 */ - (void)deleteProfileWithBleCmdTypeFB:(BleCMD_FireBoltt)cmd iccid:(NSString *)iccid; /** 发送数据到设备 @param cmd 命令类型 @param message message数据 */ - (void)sendMessageWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd message:(NSString *)message; /// 发送FLASH数据命令 /// @param cmd 命令类型 /// @param data 数据 - (void)falshSendWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd total:(NSInteger)total curren:(NSInteger)curren lenght:(NSInteger)lenght data:(NSData *)data; /// 推送表盘 /// @param cmd 命令类型 /// @param number 第几个表盘 /// @param type 0:删除表盘 1:增加表盘 2:更新表盘 /// @param fileLenght 文件大小 - (void)newDialPushWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd number:(NSInteger)number type:(NSInteger)type fileLenght:(NSInteger)fileLenght; /** 体温检测设置 @param cmd 命令类型 @param ONOFF 开关 @param startTime 开始时间 @param endTime 结束时间 @param interval 间隔时间 */ - (void)setTemperatureCheckWithBleCmdTypeFB:(BleCMD_FireBoltt )cmd RateONOFF:(BOOL)ONOFF StartTime:(NSString *)startTime EndTime:(NSString *)endTime Interval:(NSString *)interval; /// 杰里表盘推送 - (void)newJerryDialPush:(NSString *)path urlName:(NSString *)urlName fileData:(NSData *)fileData; @end