1.0.19 • Published 9 months ago

react-jssip-ui v1.0.19

Weekly downloads
-
License
-
Repository
-
Last release
9 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

9 months ago

1.0.18

9 months ago

1.0.17

9 months ago

1.0.16

9 months ago

1.0.15

9 months ago

1.0.14

10 months ago

1.0.9

10 months ago

1.0.11

10 months ago

1.0.10

10 months ago

1.0.13

10 months ago

1.0.12

10 months ago

1.0.8

10 months ago

1.0.7

10 months ago

1.0.6

10 months ago

1.0.5

10 months ago

1.0.3

10 months ago

1.0.2

10 months ago

1.0.0

10 months ago