使用Ejabberd服务器和XMPP客户端iOS实施STUN/TURN/ICE [英] STUN/TURN/ICE implementation with Ejabberd server and XMPP client iOS
问题描述
我在Mac上使用 ejabberd-16.04
和 robbiehanson 中的 XMPPFramework
.
I am using ejabberd-16.04
on my mac and XMPPFramework
from robbiehanson.
它可以正常聊天,没问题.
It works fine for chatting, no problem.
但是现在我想将语音呼叫添加到我的应用程序中.我正在使用 Jingle协议
进行呼叫建立,并且可以直接通信正常使用(即,呼叫者和被呼叫者都在同一网络中).
But now I want to add voice calling into my application.
I am using Jingle Protocol
for call establishment and it works fine for direct communication (i.e. both caller and callee are in same network).
我面临的问题是跨网络的,我想为此NAT客户实现 Jingle ICE
.
The problem I am facing is for cross-network and I want to implement Jingle ICE
for this, NATed clients.
1谁能告诉我如何启用和使用 ejabberd服务器
上的STUN/TURN模块以及客户端的相同内容.
1.1 Iam还遇到 urn:xmpp:extdisco:2
用于外部服务发现的问题.
1 Can any one tell me how can I enable and use STUN/TURN module on ejabberd server
and same thing at client side.
1.1 Iam also facing problems with urn:xmpp:extdisco:2
for external service discovery.
2是否有用于XMPP的库,该库实现了iOS的 Jingle-ICE
?
2 Is there any library for XMPP which implements Jingle-ICE
for iOS?
推荐答案
ejabberd的社区版本包括STUN和TURN. https://docs.ejabberd.im/admin/guide/configuration/#stun-and-turn 您需要同时为STUN和TURN配置SRV记录,以便客户端发现STUN/TURN正常工作. http://wiki.xmpp.org/web/SRV_Records#STUN_SRV_records
The community version of ejabberd includes STUN and TURN. https://docs.ejabberd.im/admin/guide/configuration/#stun-and-turn You'll need to configure SRV records for both STUN and TURN in order for client discovery of STUN/TURN to work correctly. http://wiki.xmpp.org/web/SRV_Records#STUN_SRV_records
唯一的重大限制是TURN身份验证不适用于SCRAM密码存储.
The only significant limitation is that TURN Authentication does not work with SCRAM password storage.
这篇关于使用Ejabberd服务器和XMPP客户端iOS实施STUN/TURN/ICE的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!