# 《分布式IM系统》大后端平台-视频通话-第01节:视频通话呼叫发起流程设计和实现

作者:冰河
星球:http://m6z.cn/6aeFbs (opens new window)
博客:https://binghe.gitcode.host (opens new window)
文章汇总:https://binghe.gitcode.host/md/all/all.html (opens new window)
源码获取地址:https://t.zsxq.com/0dhvFs5oR (opens new window)
课程视频:https://t.zsxq.com/172TU6qN1 (opens new window)

沉淀,成长,突破,帮助他人,成就自我。

  • 本节难度:★★☆☆☆
  • 本节重点:对视频呼叫发起的流程进行设计和实现,从源码级别掌握视频呼叫发起的流程,重点理解用户发起视频呼叫的流程,以及视频呼叫发起的流程在整个分布式IM即时通讯系统中的流转过程,结合自身实际项目思考,将本节学到的知识灵活应用到自身实际项目中。
  • 课程视频:https://t.zsxq.com/172TU6qN1 (opens new window)

大家好,我是冰河~~

之前在分布式IM即时通讯系统立项时,有不少小伙伴就反馈说:冰哥,这个分布式IM即时通讯系统支持语音和视频吗?说实话,我最开始做这个分布式IM即时通讯系统时,最初的想法就是做文本消息,带着大家从零设计和研发整个分布式IM即时通讯系统,并将前后端全部打通后部署。不过看到小伙伴们都有比较强烈的意愿在分布式IM即时通讯系统中加入语音和视频的功能,那咱也必须给大家安排上。

# 一、前言

截止到目前,分布式IM即时通讯系统的整个后端服务已经支持文本、图片、文件、语音消息了。也就是说,大家可以基于整个分布式IM即时通讯系统的后端服务来测试发送文本消息、图片消息、文件消息和语音消息了。从这节开始,我们就要在分布式IM即时通讯系统中加入视频功能了。

对于视频功能来说,我们会逐步在分布式IM即时通讯系统中实现视频通话呼叫发起流程,视频通话呼叫取消流程,视频通话呼叫失败流程,视频通话呼叫接受流程,视频通话呼叫拒绝流程,视频通话呼叫挂断流程、视频通话candidate流程和视频通话获取iceservers流程。本节,我们就先设计和实现视频通话发起的流程。

# 二、本节诉求

对视频呼叫发起的流程进行设计和实现,从源码级别掌握视频呼叫发起的流程,重点理解用户发起视频呼叫的流程,以及视频呼叫发起的流程在整个分布式IM即时通讯系统中的流转过程,结合自身实际项目思考,将本节学到的知识灵活应用到自身实际项目中。

# 三、流程设计

视频通话呼叫发起的流程如图1-1所示。


可以看到,整体流程还是比较简单的,主要涉及到用户及其好友、消息微服务、分布式缓存、即时通讯SDK、消息中间件、即时通讯后端服务等,具体流程参考图例即可。

# 查看完整文章

加入冰河技术 (opens new window)知识星球,解锁完整技术文章与完整代码