neteaseCallUIKit

概述

插件概述

网易云信音视频呼叫(呼叫组件 NERtcCallKit)是网易云信推出的含 UI 组件,您只需要几行代码,就可以快速实现音视频呼叫,在 App 中添加包括呼叫、接通、拒接、以及通话中音频和视频的开关控制功能,并包含呼叫的 UI 界面。

呼叫组件基于云信信令、音视频通话 2.0 和 IM 即时通讯产品封装的融合性场景组件,简化了呼叫流程,将呼叫功能以 UI 组件化的形式提供给客户,提高接入效率、降低使用成本。

呼叫组件(NERtcCallKit)支持的功能如下表所示。

功能
描述
自定义 UI 开发者可以自行设计通话和呼叫页面 UI。
音视频呼叫 App 通过此功能通知被叫用户呼叫请求,呼叫请求类型包括音频和视频呼叫。
音视频通话 接通后可依照呼叫类型进行实时通话。
音视频控制 通话过程中可以控制本端音频或视频的开关,以及摄像头方向等。
话单 每次通话结束后都会收到对应的话单消息,标记本次通话是否接通以及通话时间、类型等数据。

限时优惠活动

如果您在用友平台下载了该组件,您可登录云信控制台(用友专属链接)进行开通与管理。

此外通过以上用友平台的专属链接成功注册账号并开通服务的用户,云信将提供特别的优惠价,可在开通账号后联系云信销售或技术支持。

Demo 体验

平台 二维码
Android
iOS

Demo 效果图

技术支持

网易云信提供多种服务,包括客服、技术支持、热线服务、全流程数据监控等,建议扫码添加我们的技术支持,协助接入、测试以及定制需求。

微信咨询 在线咨询 电话咨询
点击在线咨询 4009-000-123

准备工作

1. 申请 AppKey

用户在使用本插件之前需要获取AppKey,AppKey 申请的具体流程请参见 创建应用并获取AppKey

2. 获取账号

本插件使用中需要 account 和 token,具体请参见 注册云信IM账号

3. 开通服务

使用音视频呼叫(呼叫组件)之前,需要开通部分能力,开通的具体流程请参见 开通服务

快速接入

步骤1 配置 AppKey

  • 方式一:在config文件中配置

    名称:neteaseCallUIKit 参数:appid 配置示例:

    <feature name="neteaseCallUIKit">
        <param name="appKey" value="appkey123456" />
    </feature>
    

    字段描述:

    appKey:云信应用对应的 AppKey,获取方式请参见 创建应用并获取AppKey

  • 方式二:通过API接口传入

    传入方式详见下方 initConfig 接口, 该方式会覆盖方式一配置的值。

步骤2 初始化 SDK

调用 initSDK 接口初始化 SDK。

步骤3 登录 IM 账号

调用 login 接口登录 IM 账号。

步骤4 开始呼叫

调用 toCallPage 接口跳转到呼叫页面。

完整步骤

initConfig() -> initSDK() -> login() -> toCallPage()

插件接口

initConfig

配置初始化参数

initConfig({params})

params

appKey:

account:

token:

apnsCername:

  • 类型:String
  • 描述:(可选值)云信 Apns 推送证书名

pkCername:

  • 类型:String
  • 描述:(可选值)云信 PushKit 推送证书名

示例代码

var demo = api.require('neteaseCallUIKit');
demo.initConfig({
    appKey: "appkey123456789",
    account: "123456789",
    token: "123456789",
    apnsCername: "",
    pkCername: ""
});

可用性

  • iOS系统:可提供的 1.0.0 及更高版本
  • Android系统:可提供的 1.1.0 及更高版本

initSDK

初始化音视频呼叫组件

initSDK()

示例代码

var demo = api.require('neteaseCallUIKit');
demo.initSDK()

可用性

  • iOS系统:可提供的 1.0.0 及更高版本
  • Android系统:可提供的 1.1.0 及更高版本

login

登录 IM

login({params}, callback(ret))

params

appKey:

  • 类型:String
  • 描述:云信应用的 AppKey

account:

token:

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int类型;失败登录返回 code(登录成功返回 200)
    msg:'',                     // String 类型;失败登录接口信息
    loginInfo:{                 // 登录信息
        account:"123456",       // String 类型;账号ID
        token:"456789"          // String 类型;账号token
    }
}

示例代码

var demo = api.require('neteaseCallUIKit');
demo.login({
    account: '123465',
    token: '456789'
}, function(ret, err) {
    if (ret.code != 200) {
        var msg = '登录失败\n错误码:' + ret.code + '\n错误信息:' + ret.msg;
        api.toast({
            msg: msg,
            location: 'middle'
        });
    } else {
        api.toast({
            msg: '登录成功',
            location: 'middle'
        });
    }
});

可用性

  • iOS系统:可提供的 1.0.0 及更高版本
  • Android系统:可提供的 1.1.0 及更高版本

logout

登出 IM

logout(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    code:200,                   // Int 类型;登出失败返回 code(登出成功返回 200)
    msg:''                      // String 类型;登出失败信息
}

示例代码

var demo = api.require('neteaseCallUIKit');
demo.logout(function(ret) {
    if (ret.code != 200) {
        var msg = '登出失败\n错误码:' + ret.code + '\n错误信息:' + ret.msg;
        api.toast({
            msg: msg,
            location: 'middle'
        });
    } else {
        api.toast({
            msg: '登出成功',
            location: 'middle'
        });
    }
});

可用性

  • iOS系统:可提供的 1.0.0 及更高版本
  • Android系统:可提供的 1.1.0 及更高版本

toCallPage

跳转到呼叫页面(主叫)

toCallPage({params})

params

remoteUserAccid:

  • 类型:String
  • 描述:被叫 accid,即 account 账号

currentUserAccid:

  • 类型:String
  • 描述:主叫 accid

type:

  • 类型:Int
  • 描述:呼叫类型(1: 音频呼叫, 2: 视频呼叫)

示例代码

var demo = api.require('neteaseCallUIKit');
demo.toCallPage({
    remoteUserAccid:'123456',
    currentUserAccid:'456789',
    type:2
});

可用性

  • iOS系统:可提供的 1.0.0 及更高版本
  • Android系统:可提供的 1.1.0 及更高版本
是否仍需要帮助? 请保持联络!
最后更新于 2024/12/2