- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
关闭。这个问题需要更多 focused .它目前不接受答案。
想改进这个问题?更新问题,使其仅关注一个问题 editing this post .
7年前关闭。
Improve this question
我一直在学习更多关于 WebRTC、SIP 和 PSTN 以及它们如何协同工作,尤其是在浏览器中接听电话的能力。我在 Twilio 的网站上花了一些时间,我喜欢他们能够让您从 PSTN 接听电话到您的浏览器的方式。
我想了解他们如何能够让某人调用普通的 PSTN 电话号码并将调用定向到网络浏览器。
我碰到了this question并得到了一些了解,但我仍然缺少一些东西。
为了澄清我的问题,让我们采取以下情况:
第一部分
假设我住在伦敦,有自己的 SIP 服务器和 SIP 帐户,并且有一个 PSTN 电话号码,并且该号码映射到 SIP 帐户。现在我希望能够在我的浏览器中接听来自世界各地的电话。当人们调用 PSTN 号码时,电话会通过我的电信提供商。那么这些调用是如何到达我的浏览器的呢?在我可以将调用定向到浏览器之前,我是否必须将我的 SIP 服务器连接到电信提供商系统?
这是否意味着能够将调用定向到浏览器,电信公司系统必须知道对于这个特定的 PSTN 号码,调用必须到达我的 SIP 服务器或类似的东西?
我想知道调用到我的浏览器所发生的所有步骤,包括介于两者之间的软件和(可能是硬件)。
第二部分
Twilio 将本地号码提供给需要的人。我了解 Twilio 与电信公司签署协议(protocol)以获得这些数字。 Twilio 系统是否会在所有这些电信公司系统能够直接调用用户浏览器之前连接到所有这些电信公司系统?
最佳答案
涡流,
我想说您的问题可以分为两种所需的技术解决方案。
首先 - 从 PSTN 接到 WebRTC 的电话
第二 - 浏览器上的来电
接到从 PSTN 到 WebRTC 的调用
这样做需要网关 (GW)。在这个事实中,WebRTC 并没有什么特别之处。将 PSTN 调用接入任何 VoIP 网络(SIP、H.323、专有)将需要终止 PSTN 调用并初始化 VoIP 调用。对于 WebRTC 有一些特殊要求,例如安全性、WebSockets、Opus 9 或 G.711,这是常见的)。
另一个特别之处是 WebRTC 没有指定信令。您可以使用 SIP,但许多只是使用简单的专有信令。这就是为什么许多解决方案创建了一种 GW 和 WebRTC 客户端的端到端解决方案。
浏览器来电
这是一个更复杂的要求,它实际上取决于您拥有的整体应用程序。
如果您的浏览器未运行,则没有简单的方法可以在其上接听来电。解决方案可能是您让用户安装的一些小型应用程序,它会启动浏览器,但您会错过无需安装的优势,但它比完整的客户端安装要好,后者需要比这个小型启动器应用程序更多的更新。
另一种情况是用户正在浏览您的网站,您看到他遇到了麻烦或想买东西(或选择任何其他用例),而您要求他接听来电。这是一个更简单的情况,因为您的 JS 已经在运行。
如前所述,这完全取决于确切的应用程序和场景。
阿米尔
关于sip - 了解 SIP、WebRTC 和 PSTN 如何协同工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21355923/
让我先描述一下我的问题。我将 Sofia SIP 用于电话应用程序,而我使用的 SIP 代理位于 NAT 后面。这意味着来自代理的传入邀请将内部代理 IP(例如 10.0.0.1)作为 Contact
我试图找出 的可能值范围接受 和 接受-联系 header 字段,但我在 RFC 中找不到完整列表。有谁知道他们在哪里?我经常看到 Accept: application/sdp;level=1,
我使用的 SIP 服务器通过端口 5070 监听 SIP/TLS 请求。我正在尝试跟踪和分析为什么我的拨号器没有通过 Wireshark 在网络上注册。 我已经在 Wireshark 的首选项中编辑了
我一直非常坚持解决这个问题,我去过几乎所有谈论这个主题的网站(包括旧的堆栈溢出帖子),现在我正在尝试遵循 Android“官方”文档以便让我的 SIP 客户端在我的 Asterisk 服务器上注册,应
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引起辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the he
我已经从一个 Asterisk(版本 11.2.1)创建了一个 sip 中继,说“A”服务器到另一个 Asterisk 服务器(11.7.0)说“B”,我得到 sip 响应 200 ok。 但是当我开
我几乎设法发起了一个 2 方通话(点击通话):第一个到我的办公室,第二个到我的手机,使用 Michal Niklas 回答(感谢 Michal) Asterisk click to call . 主要
本地和远程标记以及Call-ID的组合用于识别对话。据说Call-ID是一次调用的唯一值。那么为什么 Call-ID 不单独用于识别对话呢? 最佳答案 一句话:“发夹”。 “Hairpinning”是
我想在SIPBYE报头中获取Custom-Order的值。我尝试使用${sip_yee_h_Custom-Order},但它是空的,因为头名称前没有X前缀。。我可以编辑freeswitch sofia
我在使用以下代码时遇到错误。 我已经包含了 Sip 所需的所有 jar ;但是,我仍然不明白为什么会发生这个错误。你能给我解释一下吗? 我的代码类是: import java.net.InetAddr
我有一个 res_mysql.conf 配置为使用从 db.sql 文件重新填充的一些数据库 db。加载转储后,我重新加载配置,我的 SIP 对等点消失了: dev-ast*CLI> sip show
我正在制作 SIP 电话并且必须开发一个功能来支持多个注册。如果手机的主注册服务器关闭,手机应自动注册到辅助注册器,并在主注册器处于事件状态时再次返回主注册器。我的问题是:如何确定主注册商再次活跃起来
我正在尝试实现一个 sip 服务器以连接到 HTML sip 客户端(使用 sipml5 制作)。在我研究这样做的过程中,我遇到了 sip over web-sockets,这可能对我有用,但是,我不
我需要通过 Lua 脚本在 Kamailio 3.3.1 中设置自定义 header 。理论上我可以像这样在配置脚本中设置一个 - append_hf("X-MyHeader: myvalue\r\n
我需要通过 Lua 脚本在 Kamailio 3.3.1 中设置自定义 header 。理论上我可以像这样在配置脚本中设置一个 - append_hf("X-MyHeader: myvalue\r\n
DTMF 用于一些基于 sip 的软电话来处理负载类型。但是我不清楚使用 DTMF 的过程和重要性。开源软件电话,如 Red5phone和 Sipdroid使用 DTMF。任何人都可以解释这个问题或指
我需要一种在使用 Asterisk 调用文件发起调用时添加 SIP header 的方法。 有什么办法可以在通话文件中添加SIP头吗? 我知道我可以使用 Asterisk AGI 完成此操作,但是我找
我目前在连接到我的 SIP 客户端(IVR 语音服务)的对称 NAT 后面存在 SIP 用户代理问题。 我读到 Asterisk 在 sip.conf 中有一个解决方案,我可以在那里设置属性 nat=
已关闭。这个问题是 off-topic 。目前不接受答案。 想要改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 已关闭11 年前。 Improve th
我的客户公司有一个简单的 Web 应用程序 (Python Flask),我需要向它添加电话通知功能。 主要要求是应用程序应该调用用户、播放某个声音文件并接受一些音调输入(“您好!这是来自您的 Web
我是一名优秀的程序员,十分优秀!