From: liangzhenying <867174124@qq.com> Date: Fri, 8 Mar 2024 07:57:55 +0000 (+0800) Subject: 修改sdk文档 X-Git-Tag: 阿里鉴权~25 X-Git-Url: http://git.snicker.com.cn/Users/apple/Desktop/static/gitweb.css?a=commitdiff_plain;h=dbd73069761263aa3e92162ca27a072a48e678d3;p=mirrors%2FMouseSdk-MacOS.git 修改sdk文档 --- diff --git "a/Document/MouseSdk\346\216\245\345\217\243\346\226\207\346\241\243.md" "b/Document/MouseSdk\346\216\245\345\217\243\346\226\207\346\241\243.md" index e674a06..1796592 100644 --- "a/Document/MouseSdk\346\216\245\345\217\243\346\226\207\346\241\243.md" +++ "b/Document/MouseSdk\346\216\245\345\217\243\346\226\207\346\241\243.md" @@ -4,9 +4,9 @@ ## 文档修改记录 -| 版本 | 修改内容 | 修改人 | 修改时间 | -| ----- | -------- | ------ | ---------- | -| 1.0.0 | 初始版本 | 梁振营 | 2024-01-31 | +| 版本 | 修改内容 | 修改人 | 修改时间 | +| ----- | -------- | ------ | --------- | +| 1.0.0 | 初始版本 | 梁振营 | 2024-03-8 | @@ -31,76 +31,126 @@ ## 蓝牙相关接口 ```objective-c -/// 单利 -+(AiIot *)shared; - /// 开始鉴权 - (void)startAuthentication; /// 传输鉴权数据给sdk -/// - Parameter data: 蓝牙设备传过来的数据 -- (void)sendAuthToSdk:(NSData *)data; +/// - Parameter data: 鉴权特征传过来的数据 +- (void)sendAuthDataToSdk:(NSData *)data; /// 传输业务数据给sdk -/// - Parameter data:蓝牙设备传过来的数据 -- (void)sendBuinessToSdk:(NSData *)data; +/// - Parameter data:ai特征传过来的数据 +- (void)sendAiDataToSdk:(NSData *)data; ``` ## 蓝牙相关代理 -AliIotSDKCallbackProtocol + ```objective-c -/// 鉴权状态回调 /// - Parameter isSuccess:是否鉴权成功 -- (void)aiIotSendAuthStatus:(BOOL)isSuccess; +- (void)aiMouseAuthCallBack:(BOOL)isSuccess; /// 鉴权数据回调,需要将此数据转发给蓝牙设备 /// - Parameter data: 数据 -- (void)aiIotSendAuthData:(NSData *)data; +- (void)aiMouseSendAuthData:(NSData *)data; -/// 指令回调 -/// - Parameter data: 数据 -- (void)aiIotSendCmd:(NSData *)data; +/// 鼠标按键指令回调 +/// - Parameter data: 数据。AI键0x42单击,0x25按下,0x26抬起 ; 录音键0x51单击,0x32按下。0x31(未知),其他未知 +- (void)aiMouseSendCmdData:(NSData *)data; /// 录音回调 /// - Parameter data: pcm格式语音数据 -- (void)aiIotSendRecordData:(NSData *)data; +- (void)aiMouseSendRecordData:(NSData *)data; ``` ## 示例 + + - 设置代理 ```objective-c [AiIot shared].delegate = self; ``` - + - 鉴权 ``` [[AiIot shared] startAuthentication]; ``` - + - 收到设备传输过来的数据,传给sdk处理 ```objective-c - (void)peripheral:(CBPeripheral *)peripheral didUpdateValueForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error { - NSData *data = characteristic.value; - if([characteristic.UUID.UUIDString isEqualToString:kAuthUUID]){ - //鉴权的数据 - [[AiIot shared] sendAuthToSdk:data]; - } - else if([characteristic.UUID.UUIDString isEqualToString:kVoiceUUID]){ - //语音数据 - [[AiIot shared] sendBuinessToSdk:data]; - } + NSData *data = characteristic.value; + [self showLog:[NSString stringWithFormat:@"[receive] %@",[AiTools dataToHexString:data]]]; + if([characteristic.UUID.UUIDString isEqualToString:kAuthUUID]){ + //鉴权数据 + [[AiMouse shared] sendAuthDataToSdk:data]; + } + else if([characteristic.UUID.UUIDString isEqualToString:kAiUUID]){ + //AI数据 + [[AiMouse shared] sendAiDataToSdk:data]; + } } + ``` - + sdk代理回调 + ```objective-c + /// 鉴权状态回调 + /// - Parameter isSuccess:是否鉴权成功 + -(void)aiMouseAuthCallBack:(BOOL)isSuccess{ + [self showLog:[NSString stringWithFormat:@"鉴权结果 = %@",@(isSuccess)]]; + if(self.authCallBack){ + self.authCallBack(isSuccess); + } + } + /// 鉴权数据回调,需要将此数据转发给蓝牙设备 + /// - Parameter data: 数据 + - (void)aiMouseSendAuthData:(NSData *)data{ + [self showLog:[NSString stringWithFormat:@"[send] %@",[AiTools dataToHexString:data]]]; + [self.connectPeripheral writeValue:data forCharacteristic:self.authCha type:CBCharacteristicWriteWithoutResponse]; + } + /// 指令回调 + /// - Parameter data: 数据 + - (void)aiMouseSendCmdData:(NSData *)data{ + NSString *cmd = [AiTools dataToHexString:data]; + if([cmd hasSuffix:@"31"]){ + [self showLog:@"录音键开始录音"]; + self.recordData = [[NSMutableData alloc] init]; + } + else if([cmd hasSuffix:@"32"]){ + [self showLog:@"录音键结束录音"]; + [self finishRecored:self.recordData]; + } + if([cmd hasSuffix:@"25"]){ + [self showLog:@"AI键开始录音"]; + self.recordData = [[NSMutableData alloc] init]; + } + else if([cmd hasSuffix:@"26"]){ + [self showLog:@"AI键结束录音"]; + [self finishRecored:self.recordData]; + } + } + /// 录音回调 + /// - Parameter data: pcm格式语音数据 + - (void)aiMouseSendRecordData:(NSData *)data{ + [self.recordData appendData:data]; + } + ``` + +- 备注 + +​ 服务id FFF1 + +​ AI特征 0783B03E-8535-B5A0-7140-A304D2194CB8 + +​ 鉴权特征 0783B03E-8535-B5A0-7140-A304D2194CB7