问题标签 [pjsua2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
703 浏览

pjsip - 当 SIP 服务器发送未经授权的 401 时,PJSUA 未响应包含授权标头的 INVITE

我正在尝试让 PJSUA 在 Raspberry Pi 上运行,以便我可以拨打电话。

我正在使用已知的良好凭据进行身份验证。我在打开 PJSUA 时调用的配置文件中获得了所有身份验证数据:

pjsua --config-file ~/pjsua.conf

~/.pjsua.conf

在 PJSUA 内进行身份验证

加载时,可用命令上方可见以下内容,表明它已正确注册:

但是当我去拨打电话时,INVITE正确地熄灭,由 a401 Unauthorized响应,然后 PJSUA 停止,不响应另一个INVITE包含Authorization标头的响应。

我只是错过了一个可以启动它的配置选项吗?

0 投票
1 回答
984 浏览

c - 检测通话结束 PJSIP

我正在使用 PJSUA/PJSIP 在 Ubuntu 16.04 上编写应用程序。
我需要检测通话何时挂断。有排序call_state()功能吗?

谢谢 !

0 投票
1 回答
333 浏览

ios - Pjsip 应用程序在 pj_thread_register([strName cStringUsingEncoding:NSUTF8StringEncoding], a_thread_desc, &a_thread) 上崩溃;线

2次我需要将外部线程注册到pjsip。当我第一次注册线程以调用 pjsip 注册函数注册到星号服务器时,注册一切顺利,用户也注册到星号服务器。但是当我第二次尝试注册线程以调用 pjsip 的 make_call 函数进行调用时,应用程序在 pj_thread_registe 行上崩溃。请帮我解决这个问题。

0 投票
1 回答
403 浏览

android - 从服务器获得响铃响应后,PJSUA 在 Android 上崩溃

我在 REGISTER reuqest 中将联系人标头中的一些附加信息发送到服务器,一切正常,但是当我尝试处理来电时 - 应用程序在发送 RINGING 响应后崩溃,日志中没有错误。

这是我的注册信息:

附加的东西,如 app-id、pn-type、pn-tok 是通过添加的

当 INVITE 请求到来时,PJSUA 发送 TRYING 响应(SIP 状态 100),然后我向 INVITE 发送 RINGING 状态(180)响应。

这是我的RINGING回复:

然后我在 PJSUA 的 logcat 中又多了两行

并且应用程序立即崩溃,日志中没有任何 PJSUA 消息。

是的,在联系人标题中没有任何附加信息的情况下,一切都可以完美运行。

有没有办法解决这个问题?如果 PJSIP 有限制 - 我可以通过在编译之前设置一些标志来更改它,还是有另一种方法可以在 REGISTER 请求中发送额外的联系信息?

我们使用华为 P8 Lite (Android 6.0) 和 Android Studio 2.3.2,为 Android 编译的 PJSIP v2.6,Asterisk PJSIP 13,但错误也发生在 Aterisk 11 上。

0 投票
0 回答
685 浏览

android - 在 PJSUA2 中处理多个帐户

我正在使用 PJSUA2 库制作一个 Android VoIP 应用程序。有一个 Account 实例,我在登录时调用 account.create(accountConfig) 方法。如果我继续提供错​​误的凭据,则会在同一个帐户实例上重复调用相同的函数。尝试 3 次后,此功能出现异常。

标题:pjsua_acc_add(&pj_acc_cfg, make_default, &id) 代码:70010 说明:指定类型的对象过多 (PJ_ETOOMANY) 位置:../src/pjsua2/account.cpp:700

我该如何处理这个错误?

0 投票
0 回答
263 浏览

c++ - PJSIP - 连接多播 IP 地址(发送/接收 rtp 数据包)

我应该连接多播 IP 地址(239.0.0.2:4000)并以 PCMA 格式(无 sip 协议)发送/接收 rtp 数据包。如果可能,如何在我的应用程序上实现此功能?

此致

0 投票
1 回答
420 浏览

android - 使用TLS时如何在pjsip中的contactheader中的contacturi之后删除sip-id

我可以使用 pjsip 成功注册到我的 sip 服务器。
但是当使用 tls 传输从 pjsip 发送寄存器时,碰巧有额外的字符串附加到联系人标头。

有人可以告诉如何从联系人标题中删除它吗?

这是我的代码。

0 投票
0 回答
376 浏览

android - Pjsua-2,Android - 如何使用 SIP INVITE 请求发送媒体属性?

我正在使用 PJSUA 库为 android 构建一个 VOIP 软电话。我需要发送带有 SIP INVITE 消息的媒体属性,如下所示:a=rtpmap:101 telephone-event/8000 我尝试在 SipMediaType 中进行如下设置,但它不起作用。

任何帮助表示赞赏。提前致谢!

0 投票
1 回答
495 浏览

android - Android PJSIP openh264 使用问题

我正在开发 voip 视频客户端应用程序,女巫使用 PJSIP(PJSUA2) 作为客户端,使用 Elastics(ASTERISK) 作为代理服务器。

我已经根据 pjsip.org 的教程构建了库,并将其改进到我的项目中。

注册\来电处理\音频流工作正常。但我没有视频流。

endpoint.videoCodecEnum() 为空;

来电视频计数=0/索引=-1;

有一个合适的星号日志:Ignoring video stream offer because port number is zero

我的构建细节:

  • 操作系统:Ubuntu 16.04

  • android ndk 降级到 r13b

  • android sdk 工具降级到 r22.0.5

  • openh264 和 pjsua 的构建目标平台是 android-24

  • config_site.h:

    #define PJ_CONFIG_ANDROID 1

    #include < pj/config_site_sample.h >

    #define PJMEDIA_HAS_VIDEO 1

    #define PJMEDIA_HAS_OPENH264_CODEC 1

  • pjsua2 使用 openh264(... 可用性 ... ok)构建,默认使用 libyuv(如教程推荐)用于 armeabi、armeabi-v7a、arm64-v8a 并放置到适当的文件夹

  • 结构:.../app/src/main/

    爪哇/

    jniLibs/

    资源/...

有人面对吗?

0 投票
1 回答
363 浏览

android - 未知使用 FFMPEG 存储大小为“dstFormat”构建 PJSIP 时出错

使用 FFMPEG 为 armeabi 构建 PJSIP 会给我以下输出:

我已经阅读了许多关于 PixelFormat 问题的文章 -> 新版本 FFMPEG 中的 AVPixelFormat(例如我为 PJSIP 构建的一个) - 我的所有 pj 源都根据 AVPixelFormat 进行了更新。

建筑环境:

在 VirtualBox 中运行的 Ubuntu 16.04 LTS 64 位

PJSIP 2.6

FFMPEG 3.0.9

使用标志编译 PJSIP:

#define PJMEDIA_HAS_VIDEO 1

#define PJMEDIA_HAS_FFMPEG 1

NDK 标志:

--with-ffmpeg="${BASE_DIR}/ffmpeg-输出"

ffmpeg-output 文件夹包含以下文件:

  • libavcodec.so
  • libavcodec.so.57
  • libavcodec.so.57.24.102
  • libavdevice.so
  • libavdevice.so.57
  • libavdevice.so.57.0.101
  • libavfilter.so
  • libavfilter.so.6
  • libavfilter.so.6.31.100
  • libavformat.so
  • libavformat.so.57
  • libavformat.so.57.25.100
  • libavutil.so
  • libavutil.so.55
  • libavutil.so.55.17.103
  • libpostproc.so
  • libpostproc.so.54
  • libpostproc.so.54.0.100
  • libswresample.so
  • libswresample.so.2
  • libswresample.so.2.0.101
  • libswscale.so
  • libswscale.so.4
  • libswscale.so.4.0.100

尝试构建不同版本的 FFMPEG 根本不起作用(最后得到相同的错误)

任何帮助将不胜感激。

UPD:在与 ffmpeg 相关的编译器输出的这部分中是否有任何关于 AVPixelFormat 的奇怪内容:

我的意思是这行说“正在检查枚举 AVPixelFormat ... 否”-我需要写任何标志来对 PJSIP 说“你必须使用 AVPixelFormat”吗?