【问题标题】:How to Build and Test PJSIP 2.5.5 for IOS with IPv6 Support如何为支持 IPv6 的 IOS 构建和测试 PJSIP 2.5.5
【发布时间】:2016-09-21 21:33:12
【问题描述】:

我在我的项目中使用 pjsip 2.5.5。 通过添加启用 IPv6 支持 #define PJ_HAS_IPV6 1 在 pj/config_site.h 中。 关注 (https://trac.pjsip.org/repos/wiki/IPv6)。

有了这个,我为 linux 和 mac 构建了。构建成功,我通过调用 PIN 到 PIN 进行测试(使用 --ipv6)。它适用于 IPv6 地址。

现在我为 IOS 构建并使用 cli(telnet) 在模拟器中对其进行测试。 在使用 show (l) 检查帐户列表时 [有关命令的完整列表,请参阅:https://trac.pjsip.org/repos/wiki/PJSUA-CLI?format=pdf]。它只显示 IPv4 帐户(UDP 和 TCP),没有 IPv6 帐户。

我哪里出错了?

是否需要定义任何标志?

如何使用 pjsua 测试 pjsip build with ipv6 for IOS?

【问题讨论】:

  • 在问题中包含您的代码通常是个好主意,而不是作为指向外部站点的链接,因为它们可能会消失。请阅读How to Ask,看看是否可以提供minimal reproducible example
  • 我也面临同样的问题。
  • 您是否尝试过在物理设备而不是模拟器上构建的相同功能?

标签: ios voip ipv6 pjsip


【解决方案1】:

您需要同时创建两个传输,如下所示。

/* Add UDP transport. */
status = pjsua_transport_create(PJSIP_TRANSPORT_UDP, &app_config->udp_cfg, 
&transport_id);
if (status != PJ_SUCCESS) {
    goto error;
}

/* Add UDP6 transport. */
status = pjsua_transport_create(PJSIP_TRANSPORT_UDP6, &app_config->udp_cfg, 
&transport_id);
if (status != PJ_SUCCESS) {
    goto error;
}

对于 TCP 和 TLS,您还需要执行上述操作。

乐于帮助大家:)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-02
    • 2012-06-03
    • 1970-01-01
    • 2017-01-19
    相关资源
    最近更新 更多