更新时间:2023-09-27 GMT+08:00

发送消息:sendmessage

场景描述

座席系统可以调用此接口将座席输入的消息内容发送给渠道应用系统,并由渠道应用系统发送给互联网终端用户,终端用户侧的应用需要轮询获取座席侧发送的消息。

接口方法

设置成“POST”。该接口仅支持POST方法,不支持PUT、GET和DELTE等方法。

接口URI

https://ip:port/agentgateway/resource/mediacall/{agentid}/sendmessage

其中,ip为CC-Gateway服务器地址,port为CC-Gateway服务器的HTTPS端口号。

序号

名称

参数类型

是否必选

说明

1

agentid

string

True

座席的工号,取值范围:101~59999。

日志中的方法名

sendMessage

请求说明

  • 消息头
    表1 请求头参数说明

    序号

    名称

    参数类型

    是否必选

    说明

    1

    Content-Type

    string

    True

    消息主体编码方式,缺省值:application/json; charset=UTF-8

    2

    Guid

    string

    True

    静态鉴权(AUTHMODE = 1)签入接口返回的Guid;动态鉴权(AUTHMODE = 2)轮询事件接口返回的Guid。

  • 消息体
    表2 消息体参数说明

    序号

    名称

    参数类型

    是否必选

    说明

    1

    callid

    string

    True

    呼叫标识。

    2

    userid

    string

    False

    用户号码

    3

    data

    Object

    True

    当data为string时,表示发送消息文本内容。

    当安装CC-Gateway时选择平台加密(即/home/elpis/tomcat/webapps/agentgateway/WEB-INF/config/basic.properties中的MULTIMEDIA_SECMODE参数设置为1),消息内容小于1.9KBytes(约600个汉字)。

    当安装CC-Gateway时选择业务侧加密

    (即/home/elpis/tomcat/webapps/agentgateway/WEB-INF/config/basic.properties中的MULTIMEDIA_SECMODE参数设置为0),消息内容小于3.8KBytes(约1200个汉字)。

    公有云场景下,该内容为JSON转化而成的String字符串,JSON的格式如表3所示。

    表3 data中的JSON格式说明

    序号

    名称

    参数类型

    是否必选

    说明

    1

    from

    string

    True

    渠道id,即企业在租间配置中心 > 接入配置 > 渠道配置中添加渠道的“配置ID”

    2

    to

    string

    True

    用户号码,企业自行指定,通常为接收方的标识。

    3

    channel

    string

    True

    消息渠道,选项如下:

    • WEB
    • WECHAT
    • TWITTER
    • FACEBOOK
    • 5G
    • EMAIL
    • VOICE
    • LINE
    • WHATSAPP
    • SMS
    • INSTAGRAM
    • TELEGRAM

    4

    controlType

    string

    True

    控制类型,固定值为CHAT

    5

    mediaType

    string

    True

    媒体类型。

    可选值如下:

    • TEXT:文本类型
    • IMAGE:图片
    • AUDIO:音频
    • VIDEO:视频
    • LOCATE:位置
    • EMOTICONS:表情
    • CARD:卡片
    • MULTICARD:轮播卡片
    • EMAIL:邮件
    • WHATSAPPTEMPLATE:whatsApp模板
    • RICHTEXT:富文本
    • WEBCARD:网页卡片消息
    • SMSTEMPLATE:短信模板消息
    • LOCATION:位置(TELEGRAM)
    • DOCUMENT:文档
    • COBROWSESITE:网页协同地址

    6

    messageCode

    string

    True

    本条消息的唯一编码,如uuid

    7

    mediaFileType

    string

    False

    媒体文件类型,发送文件时使用可选项如下:

    • 如果“mediaType”“IMAGE”,可选项为jpg、png和jpeg
    • 如果“mediaType”“AUDIO”,可选项为mp3、aac、m4a和mp4
    • 如果“mediaType”“EMOTICONS”,可选项为gif
    • 如果“mediaType”“DOCUMENT”,可选项为doc、docx、pdf、zip和RTF

    8

    senderNickname

    string

    True

    座席昵称

    企业自行定义即可。

    9

    senderAvatar

    string

    True

    座席头像,由企业自行指定。

    10

    sendTime

    string

    True

    发送时间戳。

    11

    content

    string

    True

    消息内容。 可直接填写为发送的消息内容,也可以填写第三方系统可解析的消息格式。

    12

    contentType

    string

    False

    消息类型。

    • 1:本地文件,座席从本地选择并发送的文件。
    • 不传或为0:非本地文件,指来自多媒体库的文件。

      使用该选项,需要求文件事先通过租间的配置中心 > 资源管理 > 在线交谈多媒体库上传。

    13

    userId

    string

    True

    用户标识。企业自行定义,可与“to”参数使用相同的值。

响应说明

表4 消息体参数说明

序号

名称

参数类型

说明

1

retcode

string

消息发送结果。

  • 0:成功
  • 非0:失败

2

message

string

描述

触发事件

错误结果码

  • 106-001
  • 106-002
  • 106-007
  • 106-011
  • 106-013
  • 106-014

报文样例

  • 消息头
    Content-Type:application/json; charset=UTF-8
    Guid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.AgentGateway1
  • 请求参数
    公有云场景:
    {
        "callid": "1552524689-16797284",
        "userid": "88880043",
        "data": "{\"from\":\"202301032048582419\",\"to\":\"1672709693442874044\",\"channel\":\"WEB\",\"controlType\":\"CHAT\",\"mediaType\":\"TEXT\",\"messageCode\":\"b72d414f-97ca-4897-bc9f-a727ad92ff12\",\"content\":\"<p>这里是座席发送的消息</p>\",\"senderNickname\":\"座席\",\"senderAvatar\":\"DefaultAvatar\",\"sendTime\":1678109503317,\"userId\":\"1672709693442874044\"}",
        "content": "这里是座席发送的消息"
    }

  • 响应参数
    {
        "message": "success",
        "retcode": "0"
    }