体育万博app下载_manbetx客户端网页版_bet万博网站

1、体育万博app下载_manbetx客户端网页版_bet万博网站说明

1.1、实时音频、实时视频和拨打落地电话均通过相同的接口进行调用 

  遵循相同的业务流程。不同的业务通过呼叫接口参数CallType进 

  行区分,VIDEO_CALL视频、VOICE_CALL音频。 

1.2、接口逻辑 

接口调用是采取异步调用的方式。所有的呼叫相关接口的调用结果通过回调接口ECVoipCallBackInterface中的方法onCallEvents来接受服务端返回的各种状态。

 1.3、业务流程    

  •  客户A呼叫客户B发起请求 
  •  云通讯服务端收到A请求并把请求转发给B 
  •  客户B收到请求并应答 
  •  云通讯服务端收到B应答并转发A 
  •  A收到应答,通话建立。 
  • 2、代码示例

    音频呼叫

    我们假设Tony音频呼叫John,则代码如下: 

  • char **outCallid;
  • outCallid = new char *;
  • MakeCall((const char**)outCallid, EC_VOICE_CALL, "John账号");
  • 视频呼叫 

    我们假设Tony视频呼叫John,此时代码和音频呼叫相同,区别是呼叫类型需要传入VIDEO_CALL,并且在呼叫前需要设置本地和对方的视频view,代码如下:

  • SetVideoView( remoteView, localView);
  • char **outCallid;
  • outCallid = new char *;
  • MakeCall((const char**)outCallid, EC_VIDEO_CALL, "John账号");
  •  假设John侧客户端调起来音频或者视频呼入的界面,界面上有“接受”和“拒接”两个按钮; 

  • John点击“接受”按钮,调用AcceptCall: 
  • AcceptCall ("来电的callid"); 
  • John点击“拒绝”按钮,音视频拒绝的代码是一致的,调用的代码是: 
  • ReleaseCall("来电的callid", 175603);
  • 处理回调事件

    Tony在呼叫John的过程中,会有若干状态返回,都在回调onCallEvents中处理,其监听的设置已经在sdk初始化的SetVoIPCallBackFuction中设置过。代码示例如下: 

  • -(void) onCallEvents(const ECVoIPCallMsg * call)
  • {
  •  if( Global::m_pMain )
  •  {
  •  Global::m_pMain->MainCallEventsResult(reason, call);
  •  }}
  • 设置美颜 

    Tony和John的通话过程中,想设置美颜功能,则都可以调用如下代码: 

  • SetBeautyFilter (true);
  • 取消设置美颜 

    Tony和John的通话过程中,想设置美颜功能,则都可以调用如下代码:

  • SetBeautyFilter (false);
  • 结束通话 

    Tony和John的通话过程中,任何一方想结束呼叫,则都可以调用如下代码:

  • ReleaseCall("来电的callid", 0);