6161 });
6262 }
6363 else if (type == XP2PTypeDeviceMsgArrived) {
64- // 设备端向App发消息
65- dispatch_after (dispatch_time (DISPATCH_TIME_NOW, (int64_t )(0 * NSEC_PER_SEC)), dispatch_get_main_queue (), ^{
66- [[NSNotificationCenter defaultCenter ] postNotificationName: TIoTCoreXP2PBridgeNotificationDeviceMsg object: nil userInfo: @{@" id" : DeviceName, @" msg" : message}];
67- });
64+ // 设备端向App发消息,
65+ // dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
66+ // [[NSNotificationCenter defaultCenter] postNotificationName:TIoTCoreXP2PBridgeNotificationDeviceMsg object:nil userInfo:@{@"id": DeviceName, @"msg": message}];
67+ // });
6868 }
6969 else if (type == XP2PTypeCmdNOReturn) {
7070 // 设备自定义信令未回复内容
@@ -88,12 +88,18 @@ void XP2PDataMsgHandle(const char *idd, uint8_t* recv_buf, size_t recv_len) {
8888}
8989
9090char * XP2PReviceDeviceCustomMsgHandle (const char *idd, uint8_t * recv_buf, size_t recv_len) {
91- // id<TIoTCoreXP2PBridgeDelegate> delegate = [TIoTCoreXP2PBridge sharedInstance].delegate;
92- // if ([delegate respondsToSelector:@selector(getVideoPacket:len:)]) {
93- // [delegate getVideoPacket:recv_buf len:recv_len];
94- // }
9591 char *msg = (char *)recv_buf;
96- printf (" device feedback ==> %s" ,msg);
92+ printf (" device feedback ==> %s\n " ,msg);
93+
94+ NSString *DeviceName = [NSString stringWithCString: idd encoding: [NSString defaultCStringEncoding ]]?:@" " ;
95+ NSData *DeviceData = [NSData dataWithBytes: recv_buf length: recv_len];
96+
97+ dispatch_after (dispatch_time (DISPATCH_TIME_NOW, (int64_t )(0 * NSEC_PER_SEC)), dispatch_get_main_queue (), ^{
98+ id <TIoTCoreXP2PBridgeDelegate> delegate = [TIoTCoreXP2PBridge sharedInstance ].delegate ;
99+ if ([delegate respondsToSelector: @selector (reviceDeviceMsgWithID:data: )]) {
100+ [delegate reviceDeviceMsgWithID: DeviceName data: DeviceData];
101+ }
102+ });
97103 return " " ;
98104}
99105
0 commit comments