1.0.19 • Published 8 months ago

react-jssip-ui v1.0.19

Weekly downloads
-
License
-
Repository
-
Last release
8 months ago

项目基于 sip-call(对jssip的二次封装,感谢原作者的贡献)。

安装

npm install react-jssip-ui
yarn add react-jssip-ui

示例

import { SipContactCenter } from 'react-jssip-ui';
import 'react-jssip-ui/dist/style.css';

let sipCall;
export default () => {
  // 拨打电话
  function call(phone) {
    // 其中:
    // 入参,第一个参数为必填,第二个参数为可选的扩展参数
    // 出参,callUUID表示通话的唯一标识,与话单中的uuid一致
    sipCall.call(phone,{"businessId":"自定义参数(最多100个字符)"});
  }
  
  // 检查麦克风
  function micCheck() {
    sipCall.micCheck();
  }
  
  return (
      <SipContactCenter 
        options={{
          host: 'sip.example.com',
          port: '5066',
          proto: false,
          extNo: '8889',
          extPwd: '8889'
      }} 
        onRegister={(sip) => (sipCall = sip)}
      ></SipContactCenter>
    )
}

文档说明

提供如下方法:

函数调用方式说明
销毁SDKcleanSDK()
检查麦克风micCheck()异步接口,若麦克风异常会回调MIC_ERROR事件
注册register()
取消注册unregister()
呼叫请求call(phone,extraParam={})phone为外呼号码,extraParam为可选的扩展参数(可以不传)
挂断电话hangup()
应答接听answer()
保持hold()
取消保持unhold()
转接通话transfer(phone)
按键sendDtmf(tone)按键或二次拨号

以下对几个特殊的方法进行说明:

初始化options参数

参数说明是否必填
host服务器地址必填项
port服务器端口必填项
protobool类型 true/false,使用wss或者ws协议不填,默认为ws协议
extNo分机账号必填项
extPwd分机密码必填项
stateEventListener状态回调函数方法 参照文档最下方stateEventListener详细说明需注入状态回调
autoRegisterbool类型 true/false,initSDK调用后是否自动注册不填默认为false

状态回调(stateEventListener)

前端注入状态回调函数,通过状态回调 控制页面按钮显示

stateEventListener回调参数为 event, data

Event事件列表返回值状态说明
MIC_ERROR{msg: xxxx}麦克风检测异常
ERROR{msg: xxxx}错误异常
CONNECTED{localAgent: '1001'}连接成功
DISCONNECTED无返回值websocket连接失败
REGISTERED无返回值注册成功
UNREGISTERED无返回值取消注册
REGISTER_FAILED{msg: xxxx}注册失败
INCOMING_CALL/OUTGOING_CALL{direction: 'inbound', otherLegNumber: '138xxxxxxxx', 'callId': 'xxxxxxx'} 说明:direction为呼叫方向:inbound呼入,outbound呼出;otherLegNumber:第三方呼叫记录呼入振铃/外呼响铃
IN_CALL无返回值通话中
HOLD无返回值保持中
CALL_ENDCallEndEvent通话结束

CallEndEvent

属性必须类型说明
answeredboolean是否接通(以后端为准)
originatorstring发起方(挂断方):local本地(自己),remote远程(对方)
causestring挂断原因
codenumber当originator=remote,且answered=false时存在
1.0.19

8 months ago

1.0.18

8 months ago

1.0.17

8 months ago

1.0.16

8 months ago

1.0.15

8 months ago

1.0.14

9 months ago

1.0.9

9 months ago

1.0.11

9 months ago

1.0.10

9 months ago

1.0.13

9 months ago

1.0.12

9 months ago

1.0.8

9 months ago

1.0.7

9 months ago

1.0.6

9 months ago

1.0.5

9 months ago

1.0.3

9 months ago

1.0.2

9 months ago

1.0.0

9 months ago