# Roobo_eTrex **Repository Path**: rooboVideo/Roobo_eTrex ## Basic Information - **Project Name**: Roobo_eTrex - **Description**: 小博士定制sdk - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2017-08-28 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## cocoapod 项目配置 在podfile 顶部添加如下: ``` source 'https://git.oschina.net/roobospecs/roobospecs.git' source 'https://github.com/CocoaPods/Specs.git' ``` 在podfile 项目target添加: ``` pod ‘Roobo_eTrex’ ``` ## 1RBAccessConfig.h 全局配置信息 ``` 渠道号码 @property(nonatomic,strong) NSNumber *channelNum; 打包环境 @property(nonatomic,assign) RBArchiveEnv archiveEnv; 开发环境 对应的服务器地址不一样 @property(nonatomic,assign) RBDevelopEnv developEnv; 服务器会给第三方 @property(nonatomic,assign) NSString* appID; 登录用户的id @property(nonatomic,strong) NSString *userID; 登录用户的accessToken @property(nonatomic,strong) NSString *accessToken; eg: RBAccessConfiger.developEnv = RBDevelopEnv_Test; RBAccessConfiger.userID = @"xxxxxxx"; RBAccessConfiger.accessToken = @"xxxxxx"; ``` ## 2.RBVoiceLinkApi.h 声波配置配置网络 ### 2.1打开设备声波配网功能 ``` /** @param deviceID 设备 ID @param netType 网络类型 RBModifyNetType_ModifyNet:修改网络, @param voicePath 播放的配网的音频文件 */ + (void)openVoiceConfigNetWithDeviceID:(NSString *_Nonnull) deviceID type:(RBModifyNetType)netType voicePath:(NSString*)voicePath completionBlock:(nullable void (^)(BOOL isSucceed,NSError *error)) completionBlock; ``` ### 2.2请将手机靠近布丁 ``` /** @param voicePath 播放的音频文件 */ + (void)playNearPudding:(NSString*)voicePath; ``` ### 2.3播放声波配网文件 ``` /** * @param wifiName wifi 名称 * @param wifiPsd wifi 密码 */ + (void)playVoiceConfigNetFileWithWifiName:(NSString *_Nonnull)wifiName wifiPsd:(NSString * _Nonnull)wifiPsd; ``` ### 2.4 获取绑定配网结果 ``` /** * @description 此接口会不断通过completionBlock 返回结果,调用此接口时需等待最后的回调, 当 result 为 success 或 failure 时表示此次调用结束。 * @param completionBlock 中的参数: isSucceed: 绑定配网是否成功 error:错误信息 dict:result状态 -> wait 正在获取结果 -> failure 失败 -> success 成功 msg 详情描述 * */ + (void)startGetVoiceConfigNetResultBlock:(nullable void (^)(BOOL isSucceed,NSDictionary *_Nullable dict,NSError *_Nullable error)) completionBlock; ``` ### 2.5获取修改网络结果 ``` /** * @description 此接口会不断通过completionBlock 返回结果,调用此接口时需等待最后的回调, 当 result 为success 或failure 时表示此次调用结束。 * @param completionBlock 中的参数: isSucceed: 修改网络是否成功 error:错误信息 dict:result状态 -> wait 正在获取结果 -> failure 失败 -> success 成功 msg 详情描述 * */ + (void)startGetModifyNetResultBlock:(nullable void (^)(BOOL isSucceed,NSDictionary *_Nullable dict,NSError *_Nullable error))completionBlock; ``` ## 3 RBDeviceApi.h 设备权限 ### 3.1更改管理员 ``` /** @param deviceID 设备ID @param userID 用户的ID */ + (void)changeManager:(NSString *_Nonnull)deviceID userID:(NSString *_Nonnull)userID completionBlock:(nullable void (^)(BOOL isSucceed, NSError *_Nullable error))completionBlock; ``` ### 3.2删除所绑定的设备 ``` /** @param deviceID 设备ID */ + (void)deleteOwnDevice:(NSString *_Nonnull) deviceID completionBlock:(nullable void (^)(BOOL isSucceed,NSError * _Nullable error)) completionBlock; ``` ### 3.3添加其他用户到设备成员组里面 ``` /** @param userPhone 用户的手机号码 */ + (void)addUser:(NSString *_Nonnull)userPhone deviceID:(NSString*_Nonnull)deviceID completionBlock:(nullable void (^)(id _Nullable response,NSError *_Nullable error)) completionBlock; ``` ### 3.4从当前设备成员组中删除用户 ``` /** @param userid 用户 id */ + (void)deleteUser:(NSString *_Nonnull)userid deviceID:(NSString*_Nonnull)deviceID completionBlock:(nullable void (^)(id _Nullable response,NSError *_Nullable error)) completionBlock; ``` ## 4.RBDeviceApi.h 设备信息 ### 4.1获取当前用户的所有设备 ``` /** 获取当前用户的所有设备 */ + (void)fetchAllDevices:(nullable void(^)(NSArray * _Nullable device,NSError * _Nullable error))completionBlock; ``` ### 4.2获取设备硬件信息 ``` /** @param deviceID 设备的ID数据 */ + (void)fetchHardwareInfo:(NSString*_Nonnull)deviceID completion:(nullable void(^)(RBHardware* _Nullable device,NSError * _Nullable error))completionBlock; ``` ### 4.3获取设备的信息 ``` /** @param deviceID 设备的ID */ + (void)fetchDeviceDetail:(NSString *_Nonnull) deviceID completionBlock:(nullable void (^)(RBDevicesDetail * _Nullable detail,NSError *_Nullable error)) completionBlock; ``` ### 4.4旋转设备 ``` /** 旋转设备 @param deviceID 设备ID @param angle 角度值 */ + (void)rotateDevice:(NSString *_Nonnull)deviceID angle:(float)angle completionBlock:(nullable void (^)(BOOL isSucceed,NSError * _Nullable error)) completionBlock; ``` ### 4.5重启设备 ``` /** @param completionBlock isSucceed 重启是否成功 error 错误信息 */ + (void)restart:(NSString *_Nonnull) deviceID completionBlock:(nullable void (^)(BOOL isSucceed,NSError *_Nullable error)) completionBlock; ``` ### 4.6开启安全防护 ``` /** @param deviceID 设备的ID @param isOn 是否打开 */ + (void)switchSafetyState:(NSString* _Nonnull)deviceID isOn:(BOOL)isOn completionBlock:(nullable void (^)(BOOL isSucceed,NSError *_Nullable error)) completionBlock; ``` ### 4.7修改设备的安防时间段 ``` /** @param deviceID 设备的ID @param startTime 开始时间 @param endTime 结束时间 */ + (void)updateSafetyTime:(NSString*_Nonnull)deviceID startTime:(NSString * _Nonnull)startTime endTime:(NSString *_Nonnull)endTime completionBlock:(nullable void (^)(BOOL isSucceed,NSError *_Nullable error)) completionBlock; ``` ### 4.8设置夜间模式开关 ``` /** 注:不管是设置时间段和设置夜间模式开关 都需要传送开始时间和结束时间 @param deviceID 设备ID @param settingType 设置时间段和设置夜间模式开关 @param switchState 夜间模式的开关 @param startTime 开始时间 格式@"07:22" @param endTime 结束时间 格式@"10:00" */ +(void)updateNightMode:(NSString *_Nonnull) deviceID nightSetting:(RBNightSetting)settingType switchState:(BOOL)switchState startTime:(NSString * _Nonnull)startTime endTime:(NSString *_Nonnull)endTime completionBlock:(nullable void (^)(BOOL isSucceed,NSError *_Nullable error)) completionBlock; ``` ## 5.RBDeviceApi.h 设备设置 ### 5.1修改设备的名称 ``` /** @param deviceID 设备的ID @param newName 新的名称 */ + (void)updateDeviceName:(NSString*_Nonnull)deviceID name:(NSString *_Nonnull)newName completionBlock:(nullable void (^)(BOOL isSucceed,NSError *_Nullable error)) completionBlock; ``` ### 5.2进入视频连接成功的声音开关 ``` /** @param deviceID 设备的ID @param isOn 打开或者关闭 */ + (void)switchVideoConnetVoice:(NSString *_Nonnull) deviceID isOn:(BOOL) isOn completionBlock:(nullable void (^)(BOOL isSucceed,NSError *_Nullable error)) completionBlock; ``` ### 5.3修改设备音量 ``` /** @param deviceID 设备的ID @param voiceValue 音量值 最小值0 最大值100 */ + (void)updateVolume:(NSString *_Nonnull) deviceID voice:(float)voiceValue completionBlock:(nullable void (^)(BOOL isSucceed,NSError *_Nullable error)) completionBlock; ``` ### 5.4修改设备的声音音色类型 ``` /** @param deviceID 设备的id @param soundName 字符串 NANNAN 或 ROOBO_BOY */ + (void)updateSound:(NSString *_Nonnull ) deviceID soundName:(NSString* _Nonnull)soundName completionBlock:(nullable void (^)(BOOL isSucceed,NSError *_Nullable error)) completionBlock; ``` ## 6 RBPlayerApi.h 资源获取与资源播放 ### 6.1 获取模块底下分类 ``` /** @param deviceId 设备ID @param modId 模块ID @param page 当前页码 起始值 1 */ + (void )fetchCategotyList:(NSString *_Nullable)deviceId modId:(NSString *_Nullable)modId page:(NSInteger)page completionBlock:(nullable void (^)(RBCategotyList* _Nullable list,NSError * _Nullable error)) completionBlock; ``` ### 6.2 获取当前分类底下的资源列表 ``` /** @param deviceId 设备ID @param catId 分类id @param catName 分类名称 @param page 当前页码 起始值 1 */ + (void )fetchResourceList:(NSString *_Nullable)deviceId catId:(NSNumber *_Nullable)catId catName:(NSString *_Nullable)catName page:(NSInteger)page completionBlock:(nullable void (^)(RBResourceList* _Nullable list,NSError * _Nullable error)) completionBlock; ``` ### 6.3 播放当前的资源 ``` /** @param deviceId 设备ID @param actid 0 :播放当前资源 1上一首 2 下一首 @param catId 分类id @param sourceId 资源ID */ + (void )playResource:(NSString *)deviceId actid:(NSInteger)actid catId:(NSNumber *)catId sourceId:(NSNumber *)sourceId completionBlock:(void (^)(id response, NSError * _Nullable))completionBlock; ``` ### 6.4 停止播放资源 ``` /** @param deviceId 当前设备id */ + (void )stopPlayResource:(NSString *)deviceId completionBlock:(void (^)(BOOL response, NSError * _Nullable))completionBlock; ``` ### 6.5 获取播放状态 ``` /** @param deviceId 当前设备id */ + (void )fetchPlayStatus:(NSString *) deviceId completionBlock:(void (^)(RBPlayInfoModel* response, NSError * _Nullable))completionBlock; ``` ## 7 设备联系人管理 ### 7.1 获取所有联系人 ``` /** * @author kieran, 08-28 * * 获取所有联系人信息 * * @param deviceId 设备id * @param completionBlock 结果block */ + (void)fetchAllContacts:(NSString *)deviceId completionBlock:(void (^)(BOOL isSuccess,id _Nullable responseObject,NSError *error)) completionBlock; ``` ### 7.2 添加联系人 ``` /** * @author kieran, 08-28 * * 添加联系人信息 * * @param deviceId 设备id * @param nickName 联系人名称 * @param phoneNum 联系人手机号 * @param code 手机号国别码(中国 eg: +86) * @param completionBlock 结果block */ + (void)addContack:(NSString *)deviceId NickName:(NSString *)nickName Phone:(NSString *)phoneNum CountryCode:(NSString *)code completionBlock:(void (^)(BOOL isSuccess,NSError *error)) completionBlock ``` ### 7.3 删除联系人 ``` /** * @author kieran, 08-28 * * 删除联系人 * * @param deviceId 设备id * @param contactIds 联系人id 数组 (eg: @[@"1",@"2"]) * @param completionBlock 结果block */ + (void)deleteConatcts:(NSString *)deviceId ContactIds:(NSArray *)contactIds completionBlock:(void (^)(BOOL isSuccess,NSError *error)) completionBlock; ``` ### 7.4 更新联系人 ``` /** * @author kieran, 08-28 * * 更新联系人 * * @param deviceId 设备id * @param nickName 联系人名称 * @param phoneNumber 联系人手机号 * @param code 手机号国别码(中国 eg: +86) * @param cid 联系人id * @param completionBlock 结果block */ + (void)updateConatct:(NSString *)deviceId NickName:(NSString *)nickName PhoneNumber:(NSString *)phoneNumber CountryCode:(NSString *)code ContactId:(int) cid completionBlock:(void (^)(BOOL isSuccess,NSError *error)) completionBlock; ``` ### 7.5 设置快捷联系人 ```/** * @author kieran, 08-28 * * 设置快捷联系人 * * @param deviceId 设备id * @param contactType 快捷联系人类型(第一快捷联系人或第二快捷联系人) * @param cid 联系人id (id 为 0 删除快捷联系人) * @param completionBlock 结果block */ + (void)setQuickContact:(NSString *)deviceId Type:(RBQuickContact)contactType ContactId:(int) cid completionBlock:(void (^)(BOOL isSuccess,NSError *error)) completionBlock; ``` ### 7.6 设置设备联系方式 ``` /** * @author kieran, 08-28 * * 设置设备的号码 * * @param deviceId 设备id * @param phone 手机号码 * @param code 手机号国别码(中国 eg: +86) * @param completionBlock 结果block */ + (void)setPuddingPhone:(NSString *)deviceId PhoneNumber:(NSString *)phone CountryCode:(NSString *)code completionBlock:(void (^)(BOOL isSuccess,NSError *error)) completionBlock; ```