发表文章

[Objective-C] ConnectedToUser 没有调用, 如果调用启动从 iOS 到 Android ConnectedToUser not called if call initiated from iOS to Android[quickblox-ios-sdk]

devsherif 2017-10-9 23

帮助避免重复的问题报告, 请检查现有问题

环境详细信息
ios 版本, Quickblox ios sdk 版本, QuickbloxWebRTC sdk 版本 (可选)
iOS 版本: 9.3, QuickBlox: 2.7.6, QuickBloxWebRTC: 2。2

以前做过吗?

预期行为
用户接受呼叫后, ConnectedToUser 应称为

实际行为
在用户接受呼叫后, 应调用 ConnectedToUser, 但在呼叫超时之前不会发生任何事情

日志
附加将描述问题的完整日志 (请使用 github要点)
https://gist.github.com/devsherif/16c8d70185de12cd25639be5de54532d

重现行为的步骤
只需启动从 iOS 设备到 Android 设备的呼叫
或从 ios 设备到 ios 设备

还有其他评论吗?
只是想说, 用相同的代码, 如果调用启动从 Android 到 iOS 设备, 它正常工作。

原文:

Help avoid duplicate issue reports, check existing issues

Environment details
iOS version, Quickblox iOS SDK version, QuickbloxWebRTC SDK version (optional)
iOS Version :9.3, QuickBlox : 2.7.6, QuickBloxWebRTC : 2.2

Did this work before?
NO

Expected behavior
After Call Accepted by user, ConnectedToUser should be called

Actual behavior
After Call Accepted By User, ConnectedToUser should be called , but nothing happens until the call times out

Logs
Attach full logs that will describe your problem (please, use github gist)
https://gist.github.com/devsherif/16c8d70185de12cd25639be5de54532d

Steps to reproduce the behavior
Just Initiate the call from an iOS device to an Android Device
Or from iOS device to iOS device

Any others comments?
Just wanted to mention that with the same code, if call initiated from Android to iOS device, it works normally.

相关推荐
最新评论 (17)
pro100andrey 2017-10-9
1

您好@devsherif, 请提供两个设备的日志。(Android 侧发挂信号, 需要接受)

原文:

Hi @devsherif, please provide logs from both devices. (Android Side - sent hangup signal , need -accept)

pro100andrey 2017-10-9
2

@devsherif并请检查-Android接受呼叫

原文:

@devsherif and please check - Android Accept call

devsherif 2017-10-9
3

@Pro100Andrey , 关于 "接受调用"。正如我提到 android android 呼叫完美的工作, 也 android 的 iOS。所以我使用接受电话和它的工作, 视频通话是完全建立。
因此, 这个问题的发生, 只有当调用是从 ios 启动, 无论是 ios 或 Android。
从 Android, 我看到 "接受呼叫" 行动被发送。

从 iOS 到 Android 的完整调用尝试会话的提取日志可以在这里找到:
https://gist.github.com/devsherif/a460dcd6dd21939b409a7cfb14f5c95c
这个会话也叫由 ios 设备启动, android 开始响起, 接受呼叫行动是从 android 发送到 ios, ios 接收呼叫接受作为方法 "acceptedByUser" 被称为, 然后它保持在 "连接" 状态和方法 "connectedToUser" 是从没打过电话

原文:

@Pro100Andrey , regarding "Accept Call". As I mentioned Android to Android calls work perfectly, also Android to iOS. So I use accept call and it works, video call is completely established.
So the issue take place only if the call is initiated from iOS either to iOS or Android.
From Android I see the "Accept Call" action is sent.

Extracted logs for full call attempt session from iOS to Android could be found here:
https://gist.github.com/devsherif/a460dcd6dd21939b409a7cfb14f5c95c
This session also call is initiated by the iOS device, Android started ringing, Accept call action is sent from Android to iOS, iOS received call acceptance as method "acceptedByUser" is called, then it keeps in "Connecting" state and method "connectedToUser" is never called.

waterweaver 2017-10-9
4

嗨, 我也有同样的问题。有更新吗?

原文:

hi me also have the same problem. any updates ?

pro100andrey 2017-10-9
5

您好@devsherif请提供来自两个设备 (iOS, Android) 的一些 SessionID 的日志

原文:

Hi @devsherif Please provide logs from both devices (iOS, Android) for the some SessionID

pro100andrey 2017-10-9
6

@devsherif 有更新吗?

原文:

@devsherif Any updates?

devsherif 2017-10-9
7

@Pro100Andrey我确实发送了与 android 和 iOS 相同的会话 id 的日志。你可以在17天前的评论中找到我的回复。

可以在此链接中找到日志:
https://gist.github.com/devsherif/a460dcd6dd21939b409a7cfb14f5c95c

原文:

@Pro100Andrey I did send the logs for the same session id for android and iOS. You can find my reply to you on a comment 17 days ago.

The logs can be found in this link:
https://gist.github.com/devsherif/a460dcd6dd21939b409a7cfb14f5c95c

pro100andrey 2017-10-9
8

您好@devsherif, 来自您的日志:
ios 会话 ID-B9C9EC94-B8DF-4E98-8A90-E1926DD4092B
android 会话 ID-F4D80303-D889-4A43-8417-A186C9FC4EE6

原文:

Hi @devsherif, from your logs:
ios Session ID - B9C9EC94-B8DF-4E98-8A90-E1926DD4092B
android Session ID - F4D80303-D889-4A43-8417-A186C9FC4EE6

devsherif 2017-10-9
9

您好@Pro100Andrey :

我再次做了同样的测试, 并发现在我的日志, 会话 ID 是相同的 Android 和 iOS。
一个注意: 你认为如果会话 ID 是不同的, iphone 将开始呼叫和 android 接收它然后 iOS 通话状态的变化是 "连接"!!!我相信在 android 和 iOS 上的会话 ID 是相同的。

无论如何, 我附上新的日志。在其中同样的行为发生, ios 发起的呼叫, Android 接收然后接受它, ios "会话 acceptedByUser" 委托方法称为, 然后没有更多的发生, 呼叫下降。

请查找附加的新日志
android..txt
ios..txt

原文:

Hi @Pro100Andrey :

I did the same test again, and found in my logs that Session ID is the same on Android and iOS.
One note: Do you think if session ID is different, the iphone will start the call and android receive it then iOS call status changes to be "Connecting" !!! I believe the session ID is the same on both android and iOS.

Anyways, I attached the new logs. In which the same behaviour took place, iOS initiated the call, Android received then accepted it, iOS "Session acceptedByUser" delegate method is called, then nothing more happened, call dropped.

Kindly find attached the new logs
ANDROID.TXT
IOS.TXT

pro100andrey 2017-10-9
10

您好@devsherif, 我们无法在示例中重现此问题。您能否在我们的示例中确认此问题:

原文:

Hi @devsherif, we are not able to reproduce this problem in our samples. Can you confirm this issue in our samples:

VitaliyGuru 2017-10-9
11

@devsherif 有更新吗?

原文:

@devsherif Any updates?

devsherif 2017-10-9
12

您好@Pro100Andrey , @VitaliyGuru ,
对不起, 我迟了回复。
使用示例, 此问题不可重现。
但即使在跟踪了样本之后, 我仍然无法在代码中找到问题。我没有太多的时间来调查我的代码, 但很快就会做, 让你知道我会找到什么。

原文:

Hi @Pro100Andrey , @VitaliyGuru ,
Sorry for my late reply.
Using the samples, the issue is not reproducible.
But even after following the samples, I still couldn't find the issue in my code. I didn't have much time to investigate my code yet, but will do soon and let you know what I will find.

raikerian 2017-10-9
13

您好@devsherif

你能修好吗?

原文:

Hi @devsherif

Were you able to fix this?

raikerian 2017-10-9
14

由于现在没有用户响应而关闭。如果问题仍然存在, 请新建一个。附上样品项目与问题是可再生的是理想的描述。

原文:

Closing due to lack of user response for now. If the issue is still there for you, create a new one. Attaching sample project with issue been reproducible is the ideal description.

devsherif 2017-10-9
15

您好@Raikerian

最后, 我找到了问题的根本原因并进行了修复。让我解释一下, 因为它可能需要更新的 QuickBlox 代码。

简而言之, 这个问题的发生是因为我在 ViewController 中创建了一个新的会话, 然后将它传递给另一个 ViewController。

因此, 注意到两个 ViewControllers 都是 QBRTCClientDelegate 的, 它似乎非常缺乏领先地位, 以获得大多数被重写的方法通常被称为除了 "StartedConnectingToUser"。
一旦我把 "createNewSessionWithOpponents" 的电话转到第二个 ViewController, 一切都很顺利。

谢谢你的支持。我希望我能正确和清楚地解释这个问题。

原文:

Hi @Raikerian

Finally I was able to find the root cause of the issue and fix it. Let me explain it as It may need an update in QuickBlox code.

Briefly, the issue happened because I create a new Session in ViewController then pass it to another ViewController.

So, noting that both ViewControllers are QBRTCClientDelegate, it seems very miss-leading to get most of overridden method being called normally except for "StartedConnectingToUser".
Once I moved "createNewSessionWithOpponents" call to the second ViewController, everything worked perfectly.

Thanks for your support. And I hope that I have explained the issue properly and clearly.

heavybug 2017-10-9
16

我面临着同样的问题, 接到电话从 Android 到 iOS。电话卡住连接状态并返回...... 有什么问题吗?

原文:

I am facing the same issue on receiving call from Android to iOS. Call stuck on connecting status and gets back... what might be the problem?

devsherif 2017-10-9
17

@heavyBug: 只是不要在视图控制器中创建会话, 然后将其传递到任何位置。在将处理调用的同一视图控制器中创建会话。

原文:

@heavyBug: Just don't create your session in a view controller then pass it anywhere. Create the session in the same view controller that will handle the call.

返回
发表文章
devsherif
文章数
1
评论数
6
注册排名
60654