基于webrtc的视频通话时webrtc的接口调用流程

场景:

  1、A call B

  2、B answer

  3、A connected with B

共同的步骤:

  A 和 B 都需要初始化webrtc模块,创建peerconnectionfactory

步骤1中A的状态

  1、通过peerconnectionfactory创建peerconnection实例

  2、调用peerconnection.createOffer

  3、PeerConnection.Observer.onCreateSuccess(final SessionDescription origSdp)

  4、发送sdp到B

  5、后面就是收集icecandidate,发送将手机的icecandidate信息发送到B,然后就是各种状态的改变,

    这些状态主要是:1、IceGatheringState  2、SignalingState  3、IceConnectionState

步骤2中B的步骤

  1、B在收到A发送的sdp之后,B创建peerconnection实例

  2、B将收到的sdp设置到peerconnection实例中

  3、PeerConnection.Observer.onSetSuccess()中调用peerconnection.createAnswer

  4、PeerConnection.Observer.onCreateSuccess(final SessionDescription origSdp) 发送sdp报文给A

  5、通步骤1中的5

步骤3中A和B

  1、A和B收到对方发送的icecandidate,设置到自己对应的peerconnection实例中

  2、找到合适的icecandidate然后,建立连接

为了简化问题,中间省略了很多细节,有问题请留言 576487833

时间: 2024-08-08 14:24:43

基于webrtc的视频通话时webrtc的接口调用流程的相关文章

php编程之短信发送接口调用流程的实现

对于一个交互型网站来说,需要用户来登录注册使用,那么一般网站的技术人员肯定需要实现注册时的短信发送功能,但是这个功能很多技术人员发现在添加的过程中有许多问题,要么是无法接收,要么就是时间慢等等原因,对于这个问题,下面就跟大家说一下如何快速有效的实现. 本文主要讲解的是如何利用m.5c.com.cn短信平台发送短信的过程中遇到的问题及接口调用流程实现. 1.打开php.ini,找到extension=php_openssl.dll,将前面的分号去掉,重启服务器.若此配置已打开,跳过这一步. 2.发

php编程语言中利用邮件发送接口调用流程

对于如何利用smtp类发送邮件的过程,对于很多技术初学者都是不太理解的,通常会在编程过程中遇到许多问题,有些甚至不太清楚接口的调用流程,那么对于这种情况话,下面就跟大家讲解一下关于php编程语言中如何利用邮件发送接口调用的流程.实现代码与注释如下:1.打开php.ini,找到extension=php_openssl.dll,将前面的分号去掉,重启服务器.若此配置已打开,跳过这一步.2.发送邮件代码$MailServer = "smtp.163.com"; //SMTP服务器(若不是1

支付宝接口调用流程

爬虫代理加强版和API接口调用流程说明

爬虫代理加强版:通过固定云代理服务地址,建立专线网络链接,代理平台自动实现毫秒级代理IP切换,保证了网络稳定性和速度,避免爬虫客户在代理IP策略优化上投入精力.API格式:PI链接提取格式API就是url链接,用户的程序需要支持API的读取,定期从url中获取代理IP的相关信息,格式如下:(1)默认支持文本125.123.126.50:25503125.123.126.50:25503125.123.126.50:25503125.123.126.50:25503(2)json格式(在API链接

第三方接口调用异常补偿机制实现实例记录

背景: 我们的组件(简称A),在业务链中属于数据支撑节点.其中与组件B存在接口同步数据的直接关系(API接口直接调用进行数据交互) 问题: 我们的上游有另一个组件C(带有界面),调用A(us)进行数据的变更操作,此时需要A调用B服务接口进行同步,问题出在这里,C调用 A通常速度比较快,比较稳定,但是A调用B经常超时或者失败,网络原因or 组件B自己的设计原因吧,反正是推不动 方案:经沟通考察,这条数据的变更在可接受的时间范围只要最终一致即可,于是首先,我们先将事物中的调用B服务的一系列逻辑抽出来

WebRTC 点对点视频通话系统

WebRTC 点对点视频通话系统     主要功能: 1.基于websocket的在线用户列表: 2.用websocket作为信令通道,构建WebRTC视频通话. github:https://github.com/graceup/webrtc 开发IDE:MyEclipse 8.6 工程编码方式:UTF-8 环境要求: 1.Tomcat 要求为7.0以上的版本 注意: 部署时,需要将js/config.js文件中"ws://localhost:8080/"改为"ws://服

关于基于Linphone的视频通话Android端开发过程中遇到的问题

关于基于Linphone的视频通话Android端开发过程中遇到的问题 运用开源项目Linphone的SDK进行开发,由于是小组进行开发,我主要负责的是界面部分. 由于当时是初学Android开发,对前端界面没什么研究,对于项目管理也没什么研究,使用了很多控件的定义,进行了大量的重复工作,而且需要对于自己的命名具有极深的记忆,否则就会因为一时记忆失误造成巨大的问题. 尽管在开发时,在此方面投注了极大的注意力,但还是遇到了此方面的问题,浪费了大量的时间. 而后了解到各种设计模式,例如MVC, MV

PHP 使用 curl_* 系列函数和 curl_multi_* 系列函数进行多接口调用时的性能对比

在页面中调用的服务较多时,使用并行方式,即使用 curl_multi_* 系列函数耗时要小于 curl_* 系列函数. 测试环境 操作系统:Windows 10 x64 Server:Apache 2.4.18 PHP:5.6.19 MySQL:5.7.11 cURL:7.47.1 测试数据库选择 MySQL 官方网站的样本数据库 sakila,下载地址:http://dev.mysql.com/doc/index-other.html 测试页面需要调用 3 个 api: getActorInf

基于Axis1.4的webservice接口开发(接口调用)

一.webservice接口代码参考上一篇博客: http://www.cnblogs.com/zhukunqiang/p/7125668.html 二.代码部分 1.新建Web Project工程,取名为axiswebserviceClint,并导入Axis1.4所需jar包(将jar包粘贴到lib目录). 2.新建webservice接口调用类: package com.no8.clint; import java.net.URL; import javax.xml.rpc.ServiceE