VOIP 语音视频通话 ---总述

VOIP 语音视频通话

实现的功能分两个phase。
phase 1 要实现的功能:
–两个浏览器之间实现视频 语音 文本交流。
phase 2 要实现的功能:
–实现桌面 APP, 网页端, Android APP 端 视频 语音互通。
涉及到的工具(技术栈)

  1. Node.js
    –> 用作 https web server,承载 网页 客户端的 内容。
    –> 选择的理由是 Node.js 是基于 JavaScript的, 这样前后端学习一门语音就OK了,机智如我,O(∩_∩)O哈哈~
  2. freeswitch
    –> 作为 VOIP 的 信令 server。
    –> 本feature使用的通信信令是 SIP。
  3. webrtc
    –> webrtc 为当前实现网页端实时视频通话必选,别无他选。
  4. jssip
    –> 使用 JavaScript 实现的 SIP协议栈。
    –> 信令使用到的是SIP,这个库可以使客户端直接发出 SIP信令。
    VOIP 语音视频通话 ---总述_第1张图片
    工作流程:
  5. 网页 client 1,2 分别从webserver 请求到网页。
  6. client 1 发送链接请求到 SIP server。SIP server 转发到 Client 2.
  7. 两个客户端通过信令交互得知彼此的 IP port 信息(这里比如牵扯到 NAT及防火墙穿透,以后分析)以及 双方支持的媒体属性。
  8. 基于step 3 中协商好的内容就可以进行实时视频语音通信。

phase 2的内容以后会逐渐补充。
接下来会一步一步实现 phase 1 中的功能。

你可能感兴趣的:(VOIP)