1.0.8 • Published 2 years ago

sun-trtc-calling-js v1.0.8

Weekly downloads
-
License
ISC
Repository
-
Last release
2 years ago

腾讯云实时音视频通话 TRTC CALLING SDK

TRTCCalling 组件,是我们基于腾讯云 Web 版的 TRTC SDK信令(TSignalling) SDK 组合而成的一个功能组件,用于支持双人和多人场景下的音视频通话通能。

接入方式

从v0.6.0起,需要手动安装依赖 trtc-js-sdktim-js-sdk 以及 tsignaling

  • 为了减小 trtc-calling-js.js 的体积,避免和接入侧已使用的 trtc-js-sdk 和 tim-js-sdk 以及 tsignaling 发生版本冲突,trtc-js-sdk 和 tim-js-sdk 以及 tsignaling 不再被打包到 trtc-calling-js.js,在使用前您需要手动安装依赖。
  npm i trtc-js-sdk --save
  npm i tim-js-sdk --save
  npm i tsignaling --save
  npm i trtc-calling-js --save
  // 如果是通过node下载的依赖,则使用 import 引入
  import TRTCCalling from 'trtc-calling-js';

// 如果您通过 script 方式使用 trtc-calling-js,需要按顺序 // 手动引入 trtc.js

// 接着手动引入 tim-js.js

// 然后再手动引入 tsignaling.js

// 最后再手动引入 trtc-calling-js.js

let options = { SDKAppID: 0, // 接入时需要将0替换为您的云通信应用的 SDKAppID // 从v0.10.2起,新增 tim 参数 // tim 参数适用于业务中已存在 TIM 实例,为保证 TIM 实例唯一性 tim: tim }; let trtcCalling = new TRTCCalling(options);

### API list

| API                               | 含义               |
| :-------------------------------- | :----------------- |
| new TRTCCalling(params)           | 初始化 SDK         |
| setLogLevel(level)                | 设置日志级别       |
| on(eventName, callback, context)  | 监听事件           |
| off(eventName, callback, context) | 取消监听事件       |
| login(params)                     | 登录               |
| logout()                          | 登出               |
| call(params)                      | 邀请通话           |
| groupCall(params)                 | 邀请群通话         |
| accept(params)                    | 接受通话邀请       |
| reject(params)                    | 拒绝通话邀请       |
| hangup()                          | 挂断               |
| startRemoteView(params)           | 启动远端画面渲染   |
| stopRemoteView(params)            | 停止远端画面渲染   |
| startLocalView(params)            | 启动本地画面渲染   |
| stopLocalView(params)             | 停止本地画面渲染   |
| openCamera()                      | 启动摄像头         |
| closeCamera()                     | 关闭摄像头         |
| setMicMute(isMute)                | 设备麦克风是否静音 |
| setVideoQuality(profile)          | 设置视频质量 |
| switchToAudioCall()               | 视频通话切换语音通话 |
| switchToVideoCall()               | 语音通话切换视频通话 |
| getCameras()                      | 获取摄像头设备列表 |
| getMicrophones()                  | 获取麦克风设备列表 |
| switchDevice()                    | 切换摄像头或麦克风设备 |



### event list
| event                                            | 含义                      |
| :----------------------------------------------- | :------------------------ |
| TRTCCalling.EVENT.INVITED,                       | 收到邀请通知              |
| TRTCCalling.EVENT.REJECT,                        | 被邀用户拒绝通话          |
| TRTCCalling.EVENT.NO_RESP,                       | 被邀用户超时无应答        |
| TRTCCalling.EVENT.LINE_BUSY,                     | 被邀用户正在通话中,忙线  |
| TRTCCalling.EVENT.CALLING_CANCEL,                | 本次通话被取消了          |
| TRTCCalling.EVENT.CALLING_TIMEOUT,               | 本次通话超时未应答        |
| TRTCCalling.EVENT.CALLING_END,                   | 本次通话结束              |
| TRTCCalling.EVENT.USER_ENTER,                    | 用户进入通话              |
| TRTCCalling.EVENT.USER_LEAVE,                    | 用户离开通话              |
| TRTCCalling.EVENT.KICKED_OUT,                    | 重复登录,被踢出          |
| TRTCCalling.EVENT.USER_VIDEO_AVAILABLE,          | 远端用户开启/关闭了摄像头 |
| TRTCCalling.EVENT.USER_AUDIO_AVAILABLE,          | 远端用户开启/关闭了麦克风 |
| TRTCCalling.EVENT.SDK_READY,                     | SDK 进入 ready 状态 |
| TRTCCalling.EVENT.SDK_NOT_READY,                 | SDK 没有 ready 状态 |
| TRTCCalling.EVENT.GROUP_CALL_INVITEE_LIST_UPDATE | 群聊更新邀请列表 |

### Error code
| code               | 错误类型           | 含义                             |
| :----------------- | :---------------- | :------------------------------ |
| 60001              | 方法调用失败        | switchToAudioCall 调用失败        |
| 60002              | 方法调用失败        | switchToVideoCall 调用失败        |
| 60003              | 权限获取失败        | 没有可用的麦克风设备                |
| 60004              | 权限获取失败        | 没有可用的摄像头设备                |
| 60005              | 权限获取失败        | 用户禁止使用设备                   |
| 60006              | 环境检测失败        | 当前环境不支持webRTC              |


### 参考文档
- [腾讯实时音视频 TRTC](https://cloud.tencent.com/document/product/647/16788)
- [腾讯云即时通信 IM](https://cloud.tencent.com/document/product/269/1498)
- [TSignaling API](https://web.sdk.qcloud.com/component/tsignaling/doc/zh-cn/TSignaling.html)
- [TRTCCalling API](https://web.sdk.qcloud.com/component/trtccalling/doc/web/zh-cn/TRTCCalling.html)