內容目录

上一个主题

消息格式

下一个主题

留言接口

本页

警告

2014.08.13 版后已移除: 不再提供排队接口。对接的 APP 不必关心排队的状态,只需收发消息即可,不管消息是否来自排队之后的人工输入,还是来自排队前的机器产生文本。

排队接口

请求人工服务

该接口由 全媒体系统提供 。当收到了客户需要进行人工服务的时候,APP应调用该接口告知全媒体系统。

访问地址

Path:/api/<version>/<appid>/staffService/demand
Method:POST

请求数据

使用HTTP请求的消息体记录要发送的消息。采用JSON格式。其属性有:

  • user_id
    数据类型:str

    [必须]

    请求人工服务的客户的ID

  • skill
    数据类型:str

    [可选]

    人工服务请求排队的技能

    注意

    skillspec_name 两个参数必须且只能提供其中的一个

  • spec_name
    数据类型:str

    [可选]

    如果要接入指定的客服进行对话,用这个参数指定其工号。

    注意

    skillspec_name 两个参数必须且只能提供其中的一个

  • queue_timeout
    数据类型:int
    默认值:45

    [可选]

    最大排队时间(秒)

  • ring_time
    数据类型:int
    默认值:45

    [可选]

    最大的人工响应等待时间(秒)

  • max_chat_time
    数据类型:int

    [必须]

最大对话时间(秒)

  • ext_params
    数据类型:str

    [可选]

附加参数

  • data
    数据类型:str

    [可选]

附加数据,可用于附带诸如业务类型、客户地理位置之类的数据。

警告

在发起一个人工服务请求之后,收到该请求的结果之前,APP应禁止同一个user再次发起新的人工服务排队请求。

回复数据

参见 返回码

人工服务请求结果

该接口由 APP 提供 。当全媒体收到了人工服务请求后,将对该请求进行排队,当排队结束,全媒体系统应调用该接口告知APP排队结果。

访问地址

Path:/<path_prefix>/staffService/result
Method:POST

请求数据

使用HTTP请求的消息体记录要发送的消息。采用JSON格式。

如果排队成功,全媒体系统找到了一个坐席来为客户进行服务,那么,请求数据的格式形如:

{
    "worknum":"1001",
    "display_name":"张三",
    "skill":"BaiDian",
    "skill_name":"白电"
}

其属性含义是:

  • worknum
    数据类型:str

    被排队选中的坐席的工号

  • display_name
    数据类型:str

    被排队选中的坐席的显示名

  • skill
    数据类型:str

    排队技能

  • skill_name
    数据类型:str

    排队技能显示名

如果排队失败或者出现错误,则请求数据形如:

{
    "errcode": 404,
    "errmsg": "指定的坐席工号不存在"
}

其格式参照返回码定义,参见 返回码 一节

回复数据

参见 返回码

查看人工服务会话信息

该接口由 全媒体系统提供 。APP可调用该接口获得人工对话的会话信息。

访问地址

Path:/api/<version>/<appid>/staffService/<service_id>
Method:GET

Path 变量

  • service_id
    数据类型:str

    [必须]

    要查看的人工服务会话的ID

回复数据

如果返回错误,返回值参见 返回码

如果执行成功,返回值形如:

{
    members: [{
        type: 0,
        id: cm0395o34j5,
        display_name: "李先生",
        worknum: null,
    }, {
        type: 1,
        id: mc038n343es,
        display_name: "张三",
        worknum: "1001",
    }]
}

members 属性值是一个数组,它表示会话中的成员。数组的每一个成员都表示一个坐席或者客户的信息。

成员的属性有:

  • type
    数据类型:int

    成员类型

    数值 成员类型
    0 客户
    1 坐席
  • id
    数据类型:str

    客户ID。如果是坐席,则是坐席在全媒体系统的IM模块中的ID。

  • worknum
    数据类型:str

    坐席工号

  • display_name
    数据类型:str

    坐席或者客户的显示名

退出人工服务会话

该接口由 全媒体系统提供 。当客户退出人工服务时,APP应调用该接口通知全媒体系统。

访问地址

Path:/api/<version>/<appid>/staffService/exit
Method:POST

请求数据

使用HTTP请求的消息体记录要发送的消息。采用JSON格式。

其属性有:

  • user_id
    数据类型:str

    要退出的人工服务会话的客户的ID

  • service_id
    数据类型:str

    要退出的人工服务会话的ID

回复数据

参见 返回码

退出人工服务会话通知

该接口由 APP 提供 。当各种原因导致客户或者坐席离开人工服务会话时,全媒体系统应用该接口通知APP。

访问地址

Path:/<path_prefix>/staffService/exited
Method:POST

请求数据

使用HTTP请求的消息体记录要发送的消息。采用JSON格式。其属性有:

  • service_id
    数据类型:str

    人工服务会话的ID

  • type
    数据类型:int

    退出成员的类型

    数值 成员类型
    0 客户
    1 坐席
  • id
    数据类型:str

    退出客户的ID。如果退出的是坐席,则是坐席在全媒体系统的IM模块中的ID。

  • worknum
    数据类型:str

    退出的坐席的工号

回复数据

参见 返回码

人工服务会话结束通知

该接口由 APP 提供 。当各种原因导致人工服务会话结束时,全媒体系统应用该接口通知APP。

访问地址

Path:/<path_prefix>/staffService/disposed
Method:POST

请求数据

使用HTTP请求的消息体记录要发送的消息。采用JSON格式。其属性有:

  • service_id
    数据类型:str

    人工服务会话的ID

回复数据

参见 返回码