集成 Linkus Web SDK Core
Linkus Web SDK Core 提供核心的通话功能 (不带 UI 组件),本文介绍如何将 Linkus Web SDK Core 集成到 Web 项目。
前提条件
Demo & 源码
在正式集成之前,我们推荐你体验 Linkus Web SDK Core 的 React Demo,并查阅 项目源码 以了解 Linkus Web SDK Core 的整体运行框架及流程。
支持的模块化格式
Linkus Web SDK Core 支持 UMD 、CJS、ESM 及 IIFE
四种模块化格式,你可以根据实际需求选择所需的格式。
注: 如果你想要较小的 SDK 体积,或现有项目支持
ESM,建议导入 ESM 使用。
步骤一、引入 Linkus Web SDK Core
- 前往 Linkus Web SDK Core 的 GitHub 仓库,下载 Linkus Web SDK Core。
- 使用以下任意一种方式将 Linkus Web SDK Core 引入至 Web 项目。
- 使用 npm 安装 Linkus Web SDK
Core
npm install ys-webrtc-sdk-core
- 使用 script 标签方式引入 Linkus Web SDK
Core
<script src="./ys-webrtc.umd.js"></script>
- 使用 npm 安装 Linkus Web SDK
Core
步骤二、初始化 Linkus Web SDK Core
使用 init 方法对 Linkus Web SDK Core 进行初始化。初始化成功后会得到两个实例化后的 Operator
对象和一个方法。
名称 | 类型 | 说明 |
---|---|---|
PBXOperator | 对象 | 包含 PBX 相关的方法和参数,如通话记录查询、用户账号登出等。 |
PhoneOperator | 对象 | 包含通话相关的方法及参数,如发起呼叫、接听通话、结束通话等。 |
destroy | 方法 | 用于销毁 Linkus Web SDK Core。 |
- 方法
-
init({ params//具体参数参见下表 })
- 参数
-
参数 类型 是否必填 说明 username string 是 分机号或邮箱地址。 secret string 是 用户的 Linkus SDK 登录签名。 pbxURL URL | string 是 PBX 的访问地址,需要包含使用协议以及对应的端口。如:https://192.168.1.1:8088 或 https://yeastar.example.com.。 enableLog boolean 否 是否启用日志输出并将错误日志上报至 PBX。 取值范围:true
:启用false
:禁用
注: 此功能默认启用。reRegistryPhoneTimes number 否 指定可重新注册 SIP UA 的次数,默认无限制。 userAgent WebPC" | "WebClient 否 Asterisk 系统中的用户代理 (User Agent),用于标识正在使用该系统的客户端。 默认值为 WebClient。
deviceIds { cameraId?: string; microphoneId?: string;} 否 指定音视频输入设备的 ID,包含摄像头 ID 及麦克风 ID。 disableCallWaiting boolean 否 是否禁用呼叫等待。 取值范围:true
:禁用呼叫等待,PBX 设置的呼叫等待时间不生效,且 PBX 只处理单路通话。false
:启用呼叫等待。
- 示例代码
-
- 使用 npm 安装并初始化 Linkus SDK
Core。
import { init, on } from 'ys-webrtc-sdk-core'; init({ username: '1000', secret: 'sdkshajgllliiaggskjhf', pbxURL: 'https://192.168.1.1:8088' }) .then((operator) => { // 获得 PhoneOperator实例、PBXOperator 实例和 destroy 方法 const { phone, pbx, destroy } = operator; }) .catch((error) => { console.log(error); });
- 使用 script 标签方式导入并初始化 Linkus SDK
Core。
<script src="./ys-webrtc.umd.js"></script> <script> // 加载成功后通过YSWebRTC对象进行初始化 YSWebRTC.init({ username: '1000', secret: 'sdkshajgllliiaggskjhf', pbxURL: 'https://192.168.1.1:8088', }) .then((operator) => { // 获得 PhoneOperator和PBXOperator实例和destroy方法 const { phone, pbx, destroy } = operator; }) .catch((error) => { console.log(error); }); </script>
- 使用 npm 安装并初始化 Linkus SDK
Core。