SWX系列接口说明

1       接口说明

网关作为client,CRM作为server,通过websocket建立通讯,实现坐席功能。数据格式采用JSON。

加密方式为“自定义字段+timestamp+server_name”做MD5计算通过token带回。服务器只需重新计算比对token值即可。

1.1   注册crm

l  请求方向         网关->CRM

l  接口URL          ws://host:port/CC/WebSocket        在网关配置界面可配

l  发送内容         无

1.2   心跳保持

l  请求方向         网关->CRM

l  发送内容         {}

l  参数说明         每5秒发送一次

1.3   Crm发送外呼指令

  1. 请求方向         CRM->网关
  2. 发送内容

{

“Action”: “API_Originate”,

“ActionID”: “test;1235”,

“CalledNum“: “13800138000“,

“SeatNum“: “8001“,

“Account“: “053188888888“,

}

  1. 参数说明

参数名

含义

说明

Action

命令字

API_Originate

CalledNum

被叫号码

SeatNum

座席号码

Account

计费信息

1.4   弹屏通知

  1. 请求方向         网关->CRM
  2. 发送内容

{

"type": 3,

"server_id": 1,

"server_name": "sdas",

"ssl": false,

"timestamp": "20180105164815",

"token": "D183B0AEDDF86A3CE0FA00A9BA565FD0",

"data": {

"Event": "Popup",

"Privilege": "api,all",

"CallerNum": "13616549910",

"SeatNum": "9000"

}

}

  1. 参数说明

参数名

含义

说明

server_name

公司简写

如sdas,在网关配置页面中配置

ssl

是否加密

false为明文

Event

事件类型

Popup

CallerNum

主叫号码

SeatNum

主席号码

1.5   发送话单

l  请求方向         网关->CRM

l  发送内容

{

"type": 3,

"server_id": 1,

"server_name": "sdas",

"ssl": false,

"timestamp": "20180105164815",

"token": "D183B0AEDDF86A3CE0FA00A9BA565FD0",

"data": {

"Event": "Cdr",

"Privilege": "api,all",

"src": "9000",

"srctech": "SIP/9000",

"dst": "13616549910",

"dsttech": "SWX/1",

"start": "2017-12-04 05:56:20",

"answer": "2017-12-04 05:56:20",

"end": "2017-12-04 05:56:25",

"billsec": "5",

"disposition": "NO ANSWER",

"accountcode": "test;1234",

"recordurl": ""

"direction":"in"

"amaflags":"BILLING"

"uniqueid": "1523418461.3",

"dstcallerid": "8002"

}

}

l  参数说明

参数名

含义

说明

server_name

公司简写

如sdas,在网关配置页面中配置

ssl

是否加密

false为明文

Event

事件类型

Cdr

src

呼叫来源

srctech

来源类型

SWX/1..n,n为通道数,最大值为8

SIP/分机号

dst

呼叫目的地

dsttech

目的地类型

SWX/1..n,n为通道数,最大值为8

SIP/分机号

start

开始时间

answer

摘机时间

end

结束时间

billsec

通话时长

recordurl

录音文件地址

/sdas/2017/11/25/8008. 13863982739.83101251.1511486227.295100.mp3

accountcode

计费信息

外呼时CRM传入,原样带回

direction

呼叫方向

lo:本地呼叫(分机呼叫分机)

in:中继呼入

out:中继呼出

amaflags

计费信息

OMIT:不计费

BILLING:计费

uniqueid

唯一ID

dstcallerid

最终分机号

最终到达的分机号

1.6   发送短信

l  请求方向         CRM->网关

l  发送内容

{

“Action”: “SWXSendMSM”,

“ActionID”: “test;1235”,

“Channel“: “1“,

“Number“: “13800138000“,

“Message“: “你好,yuio1235*&(“,

“Encode”:”0”

}

参数名

含义

说明

Action

命令名

SWXSendMSM

Channel

通道选择

选择从哪个通道发出(1-8)

Number

发送目的地

目的地号码

Message

短信内容

Encode

编码格式

0:UCS2;   1:7bit

1.7   短信成功报告

l  请求方向         网关->CRM

l  发送内容

{

"type": 3,

"server_id": 1,

"server_name": "sdas",

"ssl": false,

"timestamp": "20180105164815",

"token": "D183B0AEDDF86A3CE0FA00A9BA565FD0",

"data": {

"Event": "SWXSMSSendOK",

"Privilege": "api,all",

"Channel": "1".

}

}

参数名

含义

说明

Event

事件类型

SWXSMSSendOK

Device

通道

哪个通道发送成功(1-8)

1.8   接收短信

l  请求方向         网关->CRM

l  发送内容

{

"type": 3,

"server_id": 1,

"server_name": "sdas",

"ssl": false,

"timestamp": "20180105164815",

"token": "D183B0AEDDF86A3CE0FA00A9BA565FD0",

"data": {

"Event": "SWXNewSMS",

"Privilege": "api,all",

"Channel": "1",

"From": "13800451234",

"LineCount": "2",

"MessageLine0": "你好",

"MessageLine1": "test",

}

}

参数名

含义

说明

Event

事件类型

SWXNewSMS

Channel

通道

哪个通道发送成功

From

短信来源

LineCount

短信行数

MessageLine

第几行短信

1.9    查看通道状态

l  请求方向         CRM->网关

l  发送内容

{

“Action”: “SWXShowDevices”,

“ActionID”: “test;1235”,

}

参数名

含义

说明

Action

命令名

SWXShowDevices

ActionID

命令ID

返回值带回

1.10         通道状态返回

l  请求方向         网关->CRM

l  发送内容

{

"type": 3,

"server_id": 1,

"server_name": "sdas",

"ssl": false,

"timestamp": "20180105164815",

"token": "D183B0AEDDF86A3CE0FA00A9BA565FD0",

"data": {

"Event": "SWXDeviceEntry",

"ActionID": "test;1235",

"Privilege": "api,all",

"Device": "swx1",

"Channel": "1",

"RSSI": "31",

"CCID": "XXXXXX",

"IMEI": "XXXXXX",

“COPS”:

“PIN”:

“State”:

}

}

参数名

含义

说明

Event

事件类型

SWXDeviceEntry

Channel

通道

通道号 1-8

ActionID

命令ID

与SWXShowDevices下发相同

Device

通道名

可不关心

RSSI

信号强度

0-31

CCID

SIM CCID

IMEI

模块IMEI值

COPS

运营商

PIN

SIM卡pin状态

N/a

State

通道状态

NoSIM SIM卡为检测

Idle     通道空闲

Dialing 正在呼出

Moring  对方震铃

Talking  通话中

Incoming  呼入

SIMPin     需要PIN码

Init         模块初始化

1.11        设置系统时间

l  请求方向         CRM->网关

l  发送内容

{

“Action”: “API_SetSystemTime”,

"ActionID": "010990",

“SystemTime“: “2018-03-09 10:10:10“,

}

参数名

含义

说明

Action

命令名

API_SetSystemTime

ActionID

命令ID

用于区分命令序号

SystemTime

系统时间

支持时间格式为YYYY-MM-DD hh:mm:ss

 

返回值

{

"type": 3,

"server_id": 1,

"server_name": "sdas",

"ssl": false,

"timestamp": "20180105164815",

"token": "D183B0AEDDF86A3CE0FA00A9BA565FD0",

"data": {

“Response”: “Success”,

"ActionID": "010990",  //同命令下发的ActionID

“Message“: “xxxxxxx“,

}

}

1.12        查询通道状态

l  请求方向         CRM->网关

l  发送内容

{

“Action”: “SWXShowChannelsState”,

"ActionID": "010990",

}

参数名

含义

说明

Action

命令名

SWXShowChannelsState

ActionID

命令ID

用于区分命令序号

返回值

{

"type": 3,

"server_id": 1,

"server_name": "sdas",

"ssl": false,

"timestamp": "20180105164815",

"token": "D183B0AEDDF86A3CE0FA00A9BA565FD0",

"data": {

"Response": "Success",

"ActionID": "12334",

"Channel1": "NoSIM",

"Channel2": "NoSIM",

"Channel3": "NoSIM",

"Channel4": "NoSIM",

"Channel5": "Idle",

"Channel6": "NoSIM",

"Channel7": "NoSIM",

"Channel8": "NoSIM",

"ChannelCount": "8",

}

}

参数名

含义

说明

Response

Success

ActionID

命令ID

用于区分命令序号

ChannelCount

通道数

8

Channel[n]

通道状态

NoSIM SIM卡为检测

Idle     通道空闲

Dialing 正在呼出

Moring  对方震铃

Talking  通话中

Incoming  呼入

SIMPin     需要PIN码

Init         模块初始化

1.13        查询通道信号

l  请求方向         CRM->网关

l  发送内容

{

“Action”: “SWXShowChannelsRSSI”,

"ActionID": "010990",

}

参数名

含义

说明

Action

命令名

SWXShowChannelsRSSI

ActionID

命令ID

用于区分命令序号

返回值

{

"type": 3,

"server_id": 1,

"server_name": "sdas",

"ssl": false,

"timestamp": "20180105164815",

"token": "D183B0AEDDF86A3CE0FA00A9BA565FD0",

"data": {

"Response": "Success",

"ActionID": "12334",

"Channel1": "31",

"Channel2": "31",

"Channel3": "31",

"Channel4": "31",

"Channel5": "31",

"Channel6": "31",

"Channel7": "31",

"Channel8": "31",

"ChannelCount": "8",

}

}

参数名

含义

说明

Response

Success

ActionID

命令ID

用于区分命令序号

ChannelCount

通道数

8

Channel[n]

通道状态

0-31,31为信号最强

1.14        坐席状态变化通知

l  请求方向         网关->CRM

l  发送内容

{

"type": 3,

"server_id": 1,

"server_name": "sdas",

"ssl": false,

"timestamp": "20180105164815",

"token": "D183B0AEDDF86A3CE0FA00A9BA565FD0",

"data": {

"Event": "API_ExtensionStatus",

"Exten": "8001",

"Status": "Idle"

}

}

参数名

含义

说明

Exten

坐席号

Status

当前状态

NOT_INUSE=就绪

INUSE=占用

BUSY=置忙

INVALIED= 不可用

UNAVAILABLE=振铃

RINGING=振铃

RINGINUSE=振铃

ONHOLD=通道保持

PAUSED=暂停(只对队列成员有用)

1.15        排队成员添加

l  请求方向         网关->CRM

l  发送内容

{

"type": 3,

"server_id": 1,

"server_name": "sdas",

"ssl": false,

"timestamp": "20180105164815",

"token": "D183B0AEDDF86A3CE0FA00A9BA565FD0",

"data": {

"Event": "API_QueueCallerJoin",

"Queue": “test",

"IncomingCaller": "13813569912"

}

}

参数名

含义

说明

Action

命令名

API_QueueCallerJoin

Queue

队列名

队列成员的名字

IncomingCaller

等待的主叫号码

13813569912

1.16        排队成员离开

主叫为座席接听或者主叫主动放弃推出等待队列都会有该事件。

l  请求方向         网关->CRM

l  发送内容

{

"type": 3,

"server_id": 1,

"server_name": "sdas",

"ssl": false,

"timestamp": "20180105164815",

"token": "D183B0AEDDF86A3CE0FA00A9BA565FD0",

"data": {

"Event": "API_QueueCallerLeave",

"Queue": “test",

"IncomingCaller": "13813569912"

}

}

参数名

含义

说明

Action

命令名

API_QueueCallerLeave

Queue

队列名

队列成员的名字

IncomingCaller

等待的主叫号码

13813569912

1.17        排队成员放弃等待

l  请求方向         网关->CRM

l  发送内容

{

"type": 3,

"server_id": 1,

"server_name": "sdas",

"ssl": false,

"timestamp": "20180105164815",

"token": "D183B0AEDDF86A3CE0FA00A9BA565FD0",

"data": {

"Event": "API_QueueCallerLeave",

"Queue": “test",

”HoldTime“:”100”,

"IncomingCaller": "13813569912"

}

}

参数名

含义

说明

Action

命令名

API_QueueCallerLeave

Queue

队列名

队列成员的名字

HoldTime

等待时长

单位为秒

IncomingCaller

等待的主叫号码

13813569912

1.18        队列分机振铃

l  请求方向         网关->CRM

l  发送内容

{

"type": 3,

"server_id": 1,

"server_name": "sdas",

"ssl": false,

"timestamp": "20180105164815",

"token": "D183B0AEDDF86A3CE0FA00A9BA565FD0",

"data": {

"Event": "API_QueueMemberRinging",

"Queue": “test",

”Memeber“:”8000”,

"IncomingCaller": "13813569912"

}

}

参数名

含义

说明

Action

命令名

API_QueueMemberRinging

Queue

队列名

队列成员的名字

Member

队列成员

IncomingCaller

等待的主叫号码

13813569912

1.19        队列分机无应答

l  请求方向         网关->CRM

l  发送内容

{

"type": 3,

"server_id": 1,

"server_name": "sdas",

"ssl": false,

"timestamp": "20180105164815",

"token": "D183B0AEDDF86A3CE0FA00A9BA565FD0",

"data": {

"Event": "API_QueueMemberNoAnswer",

"Queue": “test",

”Memeber“:”8000”,

“RingTime”:”100”,

"IncomingCaller": "13813569912"

}

}

参数名

含义

说明

Action

命令名

API_QueueMemberNoAnswer

Queue

队列名

队列成员的名字

Member

队列成员

RingTime

振铃时长

在该分机上的振铃时长,单位为秒

IncomingCaller

等待的主叫号码

13813569912

1.20        队列分机应答

l  请求方向         网关->CRM

l  发送内容

{

"type": 3,

"server_id": 1,

"server_name": "sdas",

"ssl": false,

"timestamp": "20180105164815",

"token": "D183B0AEDDF86A3CE0FA00A9BA565FD0",

"data": {

"Event": "API_QueueMemberAnswer",

"Queue": “test",

”Memeber“:”8000”,

“RingTime”:”100”,

“HoldTime”:”50”,

"IncomingCaller": "13813569912"

}

}

参数名

含义

说明

Action

命令名

API_QueueMemberAnswer

Queue

队列名

队列成员的名字

Member

队列成员

HoldTime

总共等待时长

单位秒

RingTime

振铃时长

在该分机上的振铃时长,单位为秒

IncomingCaller

等待的主叫号码

13813569912

1.21        队列成员置忙控制

用于暂停队列中的成员继续接听电话

l  请求方向         CRM->网关

l  发送内容

{

“Action”: “API_QueueMemberPause”,

“ActionID”: “test;1235”,

“Extension“: “8000“,

“Queue“: “test“,

“Paused“: “true“,

}

参数名

含义

说明

Action

命令名

API_QueueMemberPause

ActionID

命令ID

Extension

分机号

如8000 8001

Queue

队列名

Paused

是否置忙

true表示置忙,false表示置闲

返回值

{

"type": 3,

"server_id": 1,

"server_name": "sdas",

"ssl": false,

"timestamp": "20180105164815",

"token": "D183B0AEDDF86A3CE0FA00A9BA565FD0",

"data": {

“Response”: “Success”, // 失败为Error

"ActionID": "test;1235",  //同命令下发的ActionID

“Message“: “xxxxxxx“,

}

}

1.22        队列成员添加

l  请求方向         CRM->网关

l  发送内容

{

“Action”: “API_QueueMemberAdd”,

“ActionID”: “test;1235”,

“Extension“: “8000“,

“Queue“: “test“,

“Paused“: “false“,

}

参数名

含义

说明

Action

命令名

API_QueueMemberPause

ActionID

命令ID

Extension

分机号

如8000 8001

Queue

队列名

Paused

添加时是否置忙

true表示置忙,false表示置闲

返回值

{

"type": 3,

"server_id": 1,

"server_name": "sdas",

"ssl": false,

"timestamp": "20180105164815",

"token": "D183B0AEDDF86A3CE0FA00A9BA565FD0",

"data": {

“Response”: “Success”, // 失败为Error

"ActionID": "test;1235",  //同命令下发的ActionID

“Message“: “xxxxxxx“, //返回消息

}

}

1.23        队列成员删除

l  请求方向         CRM->网关

l  发送内容

{

“Action”: “API_QueueMemberRemove”,

“ActionID”: “test;1235”,

“Extension“: “8000“,

“Queue“: “test“,

}

参数名

含义

说明

Action

命令名

API_QueueMemberRemove

ActionID

命令ID

Extension

分机号

如8000 8001

Queue

队列名

返回值

{

"type": 3,

"server_id": 1,

"server_name": "sdas",

"ssl": false,

"timestamp": "20180105164815",

"token": "D183B0AEDDF86A3CE0FA00A9BA565FD0",

"data": {

“Response”: “Success”, // 失败为Error

"ActionID": "test;1235",  //同命令下发的ActionID

“Message“: “xxxxxxx“, //返回消息

}

}

转载于:https://www.cnblogs.com/aimod/p/9430143.html

SWX PBX系列接口说明相关推荐

  1. 【Wwise】PrepareEventPrepareBank系列接口研究

    Prepare系列接口的意义是:用一个就拿一个,用两个就拿两个,绝不多拿(media文件颗粒度极小,不会出现即便用不到,但依旧持续存在在内存中) PrepareBank,PrepareEvent的设计 ...

  2. 接口缺方法调用时报错_TypeScript真香系列——接口篇

       戳蓝字「前端技术优选」关注我们哦! 接口带来了什么好处 好处One -- 过去我们写 JavaScript JavaScript 中定义一个函数,用来获取一个用户的姓名和年龄的字符串: cons ...

  3. JMeter基础系列:接口响应时间

    1 简介 插件文档:https://jmeter-plugins.org/wiki/Start/ 插件管理器安装:https://blog.csdn.net/Xin_101/article/detai ...

  4. 软件测试实战教程系列—接口测试用例和报告模板|收藏版

    文章目录 接口测试为什么会如此重要呢? 接口测试的必要性 获取接口相关信息 接口测试的流程 接口文档 是接口测试的参照,至少包括: 接口测试用例设计 接口测试用例模板 (可根据项目实际情况设计增减) ...

  5. VS2010中的各类文件作用[.sln,.suo,.vcxproj,.vcxproj.filters,.vcxproj.user]

    .sln 相当于VC6中 .dsw .vcxproy 相当于VC6中 .dsp .suo 相当于VC6中 .ncb .vcxproj.filters 用于项目下文件的虚拟目录 .vcxproj.use ...

  6. C#中的ICollection接口

    一.集合类: 1.1 ICollection接口 前面我们学习了数组,这是.net Framework定义的最基本的集合类型,除过数组外,.net Framework还另外定义了很多集合类型以满足编程 ...

  7. 使用.Net访问Office编程接口

    在这篇文章里面,我将向大家介绍如何在.Net中访问Office所公开的编程接口.其实,不管是使用哪种具体的技术来针对Office进行开发(比如VSTO,或者用C#编写一个Office Add-in,或 ...

  8. 打开editor的接口讨论

    [打开editor的接口讨论]         先来看一下workbench吧,workbench从静态划分应该大致如下:                     从结构图我们大致就可以猜测出来,wo ...

  9. Spring4.x(5)--ApplicationContext接口

    ApplicationContext接口 在使用Spring的时候,我们经常需要先得到一个ApplicationContext对象,然后从该对象中获取我们配置的Bean对象.ApplicationCo ...

最新文章

  1. 编译可在Android上运行的qemu user mode
  2. 单例模式 之 单例模式——懒汉模式
  3. msyql show命令(转)
  4. mysql表主键类型_mysql表结构主键类型
  5. 网页Request Headers请求头和Response Headers响应头
  6. 【原型设计】第四节:Axure RP9 交面交互的使用说明 01 打开链接交互效果
  7. 处理页面动态加载数据
  8. java.util.LinkedHashMap cannot be cast to
  9. 组态王gprs虚拟服务器,GPRS/CDMA 网络通过组态王软件虚拟串口(IO/设备)实现无线远程...
  10. 个税计算器-springboot开发实现
  11. Android蓝牙通讯
  12. 网络 DNS 解析与CDN加速
  13. 全网最全!彻底弄透Java处理GMT/UTC日期时间
  14. 5个最好的WordPress电子商务插件比较 - 2018年
  15. 【springboot】SMS短信通实现手机验证码
  16. 第十一届蓝桥杯 b组
  17. linux驱动管道,Xilinx Linux 如何理解V4L2的管道驱动程序
  18. Excel-制作各国历年GDP动态图
  19. 对郭天祥老师的一些知识点的解读
  20. 什么是多态?为什么要使用多态?什么时候用多态?多态是如何实现的?使用多态有什么好处?

热门文章

  1. java开发常用文件后缀
  2. 【深圳专场】从安防监控到害虫识别,目标检测核心技术全揭秘
  3. System.out.Print();快捷键 intellij idea public static void main(String[] args)
  4. java 解析m3u8的实例_使用java线程池批量下载m3u8。合并mp4.
  5. 鼠标的移入、移出事件与css中的hover伪类
  6. Halcon算子总结
  7. 【自动驾驶-3D目标检测】3DSSD:基于点的3D单级目标检测器
  8. 我擦!发红包遇到了微信抖动!
  9. java 404页面_SpringBoot全局异常处理与定制404页面的方法
  10. SCADA和DCS、PLC的区别