Quickblox——加载聊天页面时拨打/接听电话——Cordova

Posted

技术标签:

【中文标题】Quickblox——加载聊天页面时拨打/接听电话——Cordova【英文标题】:Quickblox--placing/receiving a call while chat page is loaded--- Cordova 【发布时间】:2016-11-15 14:05:14 【问题描述】:

我们正在使用cordova 的代码构建一个用于聊天和音频/视频通话的应用程序。 在您的(quickblox)视频通话示例中,两个用户都必须在视频页面中才能接听彼此的电话, 这意味着如果用户 1 离开视频页面并且用户 2 想给他打电话,那么用户 1 将不会接听电话。 但是在我们的应用程序中,我们需要允许用户在聊天页面中接收呼叫,以便我们自定义您的示例以实现此目标,但是当我们将与视频通话相关的 javascript 文件添加到与聊天相关的文件时,应用程序停止加载聊天记录。 (我认为问题出在“message.js”文件下的“retrieveChatMessages(dialog,beforeDateSent)”函数中) 我们如何解决这个问题?

谢谢

问候

【问题讨论】:

欢迎来到 ***。问题需要包含相关代码,以便任何人都能给您答案。您在问题中提到了一个示例 - 在您的问题中发布该示例,然后发布您已经尝试实现所需行为的内容。 【参考方案1】:

我认为问题出在“message.js”文件下的“retrieveChatMessages(dialog,beforeDateSent)”函数中 - 在日志中应该是一个错误。

视频聊天示例仅用于展示视频和音频通话的可能性。

您可以使用诸如 dialog_id 之类的扩展名、来自哪个用户或您需要的其他参数调用您的对手(或查看会话对象,可能它具有您需要的所有参数)。并且对手使用此扩展对象和会话 (https://quickblox.com/developers/Sample-webrtc-web#Make_a_call) 在 onCallListener 中接收您的呼叫。

那么接下来的逻辑:

user1 调用 user2 - session.call(extension, function(error) ...) user2 有来电到QB.webrtc.onCallListener = function(session, extension) ... 和 user2 为自己显示有关来电的弹出窗口(例如),如果他接受呼叫,则他打开对话框(他从参数中获取),为呼叫构建 UI 并将接受发送给 user1 session.accept(extension)(https://quickblox.com/developers/Sample-webrtc-web#Accept_a_call) ;

如果我没有正确理解,请从控制台显示错误,我们将继续...

【讨论】:

以上是关于Quickblox——加载聊天页面时拨打/接听电话——Cordova的主要内容,如果未能解决你的问题,请参考以下文章

如何实现 Quickblox 视频聊天

无法在 Quickblox Javascript 中接听视频通话

为啥只能在 Android SDK QuickBlox 上进行第一次视频通话?

国外拨打国内电话

如何检测电话何时被接听或拒绝

为啥打对方电话打不通,显示用户正忙