1.2.16 • Published 2 years ago

wdjsdk v1.2.16

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

WEB-SDK-js

安装

npm 安装

npm i wdjsdk

API

constructor 实例化

let signal = new signalling(userId)

  • userId:调度员ID。
  • <返回>:signalling 实例

    new 的时候自动调用

duplex 语音通话

signal.duplex(calleed)

  • calleed:被叫用户的userId
  • <返回>:当前的语音通话 duplex

返回的 duplex 有挂断方法 hangUp

groupCall 组呼

signal.groupCall(groupId)

  • groupId:被叫群组
  • <返回>:当前的组呼 groupCall

返回的 groupCall 有挂断方法 hangUp、话权申请、话权释放

videoPull 视频上拉

signal.videoPull(calleed,videoElement)

  • calleed:被叫用户的userId
  • videoElement:html的video标签,视频将在这个标签中播放
  • <返回>:当前的视频上拉 videoPull

返回的 videoPull 有挂断方法 hangUp

videoCall 视频通话

signal.videoCall(calleed,videoElement)

  • calleed:被叫用户的userId
  • videoElement:html的video标签,视频将在这个标签中播放
  • <返回>:当前的视频通话 videoCall

返回的 videoCall 有挂断方法 hangUp

voiceAskFor 话权申请

groupCall.voiceAskFor() or signal.voiceAskFor(groupNo)

voiceRelease 话权释放

groupCall.voiceRelease() or signal.voiceRelease(groupNo)

hangUp 主动挂断

通过被叫id挂断

signal.hangUp(userId|groupId)

giveUp 主动取消

用法和hangUp一致,发起呼叫后在对面未接听前可以调用此方法取消呼叫。

signal.giveUp(userId|groupId)

videoHandle 对端挂断时的video标签的处理

signal.videoHandle

  • video 需要被处理的video标签

signal.videoHandle = (video)=>{....}

audioHandle 对端音频挂断时的回调

signal.audioHandle

  • calleed 被叫用户的userId

signal.audioHandle = (calleed)=>{....}

onConnect

  • 被叫用户的userId 接通时的监听。

signal.onConnect = (calleed)=>{console.log('接通')}

onCalled

当有普通用户(终端)向调度员(web端)发起呼叫时,的监听

  • called 终端发起呼叫时带1的一些信息

signal.onCalled = (called)=>{.....}

called 包含reqtype属性和一些方法

  • id 表示发起呼叫的用户的id
  • reqType 表示发起呼叫的类型,用数字表示
    • 6:视频上拉
    • 4:视频通话
    • 1:全双工语音通话
  • reject() 调用此方法表示拒绝接听
  • accpet(video) 调用此方法表示接听,如果是视频通话和视频上拉类型,需要传一个video标签作为参数

onGiveUp

(终端)取消呼叫时的监听事件

  • calledId 终端的用户id

signal.onGiveUp = (calledId)=>{......}

message 即时消息处理

signal.message(functionList)

functionList 是一个包含多个function的对象,具体属性如下

functionList = {
online:function(params){

}
switchGroup:function(params){

}
refresh:function(params){

}
groupChange:function(params){

}
SOS:function(params){

}
}

接下来对每个函数的参数进行详解

online 上下线通知

  • online:一个包含所有上线人员的数组
  • offline:一个包含所有下线人员的数组 online 和 offline 属性只会出现一个

functionList = {
online:function(params){
console.log(params.online)
//改变上下线状态
if(params.online){
changeOnlineStatus(params.online)
}else{
changeOfflineStatus(params.offline)
}
}
......
}

switchGroup 终端切组通知

  • termId:用户id
  • jion:附着的组
  • deJoin:去附着的组 termId 属性必然存在,jionGroup 和 deJoin 至少存在其中一个

functionList = {
switchGroup:function(params){
let { termId , jion , deJoin } = params
if(!(jion || deJoin))throw new Error('消息异常')
if(deJoin){
deJoinGroup(termId , deJoin)
}
if(jion){
jionGroup(termId , jion)
}
}
......
}

refresh 签约数据变更

functionList = {
refresh:function(params){
location.replace(location.href+'?t='+new Date().getTime())
}
......
}

groupChange 群组变化通知

  • operId:
  • groupId:

functionList = {
groupChange:function(params){
let { operId , groupId } = params
switch(operId){
case 'Mod':
getGroupApi(groupId);
break;
case 'Del':
delGroup(groupId);
break;
default:
break;
}
}
......
}

SOS 紧急告警

  • termId:紧急告警用户的Id
  • latitude:纬度
  • longitude:经度
  • id:告警唯一性Id

functionList = {
SOS:function(params){
alert(JSON.stringify(param))
}
......
}

1.2.8

2 years ago

1.2.7

2 years ago

1.2.6

2 years ago

1.2.5

2 years ago

1.2.4

2 years ago

1.2.3

2 years ago

1.2.2

2 years ago

1.2.12

2 years ago

1.2.13

2 years ago

1.2.11

2 years ago

1.2.16

2 years ago

1.2.14

2 years ago

1.2.15

2 years ago

1.1.1

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago