计算
弹性云服务器 ECS
Flexus云服务
裸金属服务器 BMS
弹性伸缩 AS
镜像服务 IMS
专属主机 DeH
函数工作流 FunctionGraph
云手机服务器 CPH
Huawei Cloud EulerOS
网络
虚拟私有云 VPC
弹性公网IP EIP
虚拟专用网络 VPN
弹性负载均衡 ELB
NAT网关 NAT
云专线 DC
VPC终端节点 VPCEP
云连接 CC
企业路由器 ER
企业交换机 ESW
全球加速 GA
安全与合规
安全技术与应用
Web应用防火墙 WAF
企业主机安全 HSS
云防火墙 CFW
安全云脑 SecMaster
DDoS防护 AAD
数据加密服务 DEW
数据库安全服务 DBSS
云堡垒机 CBH
数据安全中心 DSC
云证书管理服务 CCM
边缘安全 EdgeSec
威胁检测服务 MTD
CDN与智能边缘
内容分发网络 CDN
CloudPond云服务
智能边缘云 IEC
迁移
主机迁移服务 SMS
对象存储迁移服务 OMS
云数据迁移 CDM
迁移中心 MGC
大数据
MapReduce服务 MRS
数据湖探索 DLI
表格存储服务 CloudTable
云搜索服务 CSS
数据接入服务 DIS
数据仓库服务 GaussDB(DWS)
数据治理中心 DataArts Studio
数据可视化 DLV
数据湖工厂 DLF
湖仓构建 LakeFormation
企业应用
云桌面 Workspace
应用与数据集成平台 ROMA Connect
云解析服务 DNS
专属云
专属计算集群 DCC
IoT物联网
IoT物联网
设备接入 IoTDA
智能边缘平台 IEF
用户服务
账号中心
费用中心
成本中心
资源中心
企业管理
工单管理
国际站常见问题
ICP备案
我的凭证
支持计划
客户运营能力
合作伙伴支持计划
专业服务
区块链
区块链服务 BCS
Web3节点引擎服务 NES
解决方案
SAP
高性能计算 HPC
视频
视频直播 Live
视频点播 VOD
媒体处理 MPC
实时音视频 SparkRTC
数字内容生产线 MetaStudio
存储
对象存储服务 OBS
云硬盘 EVS
云备份 CBR
存储容灾服务 SDRS
高性能弹性文件服务 SFS Turbo
弹性文件服务 SFS
云硬盘备份 VBS
云服务器备份 CSBS
数据快递服务 DES
专属分布式存储服务 DSS
容器
云容器引擎 CCE
容器镜像服务 SWR
应用服务网格 ASM
华为云UCS
云容器实例 CCI
管理与监管
云监控服务 CES
统一身份认证服务 IAM
资源编排服务 RFS
云审计服务 CTS
标签管理服务 TMS
云日志服务 LTS
配置审计 Config
资源访问管理 RAM
消息通知服务 SMN
应用运维管理 AOM
应用性能管理 APM
组织 Organizations
优化顾问 OA
IAM 身份中心
云运维中心 COC
资源治理中心 RGC
应用身份管理服务 OneAccess
数据库
云数据库 RDS
文档数据库服务 DDS
数据管理服务 DAS
数据复制服务 DRS
云数据库 GeminiDB
云数据库 GaussDB
分布式数据库中间件 DDM
数据库和应用迁移 UGO
云数据库 TaurusDB
人工智能
人脸识别服务 FRS
图引擎服务 GES
图像识别 Image
内容审核 Moderation
文字识别 OCR
AI开发平台ModelArts
图像搜索 ImageSearch
对话机器人服务 CBS
华为HiLens
视频智能分析服务 VIAS
语音交互服务 SIS
应用中间件
分布式缓存服务 DCS
API网关 APIG
微服务引擎 CSE
分布式消息服务Kafka版
分布式消息服务RabbitMQ版
分布式消息服务RocketMQ版
多活高可用服务 MAS
事件网格 EG
企业协同
华为云会议 Meeting
云通信
消息&短信 MSGSMS
云生态
合作伙伴中心
云商店
开发者工具
SDK开发指南
API签名指南
Terraform
华为云命令行工具服务 KooCLI
其他
产品价格详情
系统权限
管理控制台
客户关联华为云合作伙伴须知
消息中心
公共问题
开发与运维
应用管理与运维平台 ServiceStage
软件开发生产线 CodeArts
需求管理 CodeArts Req
部署 CodeArts Deploy
性能测试 CodeArts PerfTest
编译构建 CodeArts Build
流水线 CodeArts Pipeline
制品仓库 CodeArts Artifact
测试计划 CodeArts TestPlan
代码检查 CodeArts Check
代码托管 CodeArts Repo
云应用引擎 CAE
开天aPaaS
云消息服务 KooMessage
云手机服务 KooPhone
云空间服务 KooDrive

发送消息 (send)

更新时间:2024-08-02 GMT+08:00

描述

发送渠道消息,包括连接,发送输入状态,会话,转人工,断连多种类型消息

接口方法

POST

接口URI

https://域名/apiaccess/ccmessaging/send,例如域名是https://service.besclouds.com

请求说明

表1 请求头参数

序号

名称

参数类型

是否必选

说明

1

ccmessaging-token

string

True

applyToken接口生成的ccmessaging-token

2

x-app-key

string

True

appKey字段,用户标识,在ApiFabric工具上配置

3

Authorization

string

True

鉴权字段,内容格式为: Bearer +tokenByAKSK接口的返回值中AccessToken(Bearer后有空格)

表2 请求体参数

序号

名称

参数类型

是否必选

说明

1

reqBody

sendMsgReq

True

请求体

表3 sendMsgReq参数结构

序号

名称

参数类型

是否必选

说明

1.1

channel

string

True

客户端发送消息的所属渠道类型,如WEB(WEB客服接入渠道)

1.2

content

string

False

消息内容,视mediaType而定,例如mediaType是TEXT,content就是发送的文本内容,文本内容大小不能超过1K;如果是音视频等媒体,content是fileId,mediaType,fileId为/ccmessaging/uploadFileStream接口返回的objectKey,具体入参为"field,mediaType",如图片为"objectKey,jpg",视频为"objectKey,mp4",音频为"objectKey,mp3",位置为"objectKey,txt",文件下载接口会使用此fileId做文件下载用。

如果mediaType值为WEBCARD,content的值为JSON结构转换的字符串,例如JSON固定结构如下:

{"title":"卡片标题","description":"卡片描述","mediaFileId":"卡片媒体文件ID,通过upload接口返回","mediaFileType":"当前仅支持固定值img,img/png,img/jpg,不填类型默认按jpg","redirectUrl":"跳转地址"

},其中redirectUrl和mediaFileId为二选一必填项,其他项不填可以为空值,具体可参考报文样例:向座席发送网页卡片消息。

1.3

controlType

string

True

消息控制类型,如连接(CONNECT),聊天(CHAT),转人工(TRANS2AGENT),用户输入中(INPUT),断开连接(DISCONNECT),已读(READ)

1.4

from

string

True

渠道下发送消息的用户ID,取值范围:1到24位字符串。

1.5

mediaType

string

True

消息媒体类型,如文本类型(TEXT),图片类型(IMAGE),音频类型(AUDIO),视频类型(VIDEO),文件类型(FILE),文件图片(FILE_IMAGE),文件视频(FILE_VIDEO),网页卡片消息(WEBCARD)

1.6

senderNickname

string

False

消息发送者的昵称

1.7

sourceType

string

True

消息来源类型,需配置为:CUSTOMER

1.8

timestamp

string

False

消息发送时间

1.9

to

string

True

渠道配置ID

1.10

userAgent

string

False

用户客户端类型,取自UserAgent

1.11

senderAvatar

string

False

消息发送者的头像,微信渠道传输微信头像URL

1.12

messageId

string

False

用于标识发送的消息用户的唯一值。最大长度为32。值不能包含逗号“,”。

1.13

transData

string

False

json格式数据,连接机器人的时候传给机器人流程。

响应说明

  • 响应状态码: 200
    表4 senMsgRsp参数结构

    序号

    名称

    参数类型

    是否必选

    说明

    1.1

    resultDesc

    string

    False

    返回结果码描述

    根据不同的场景,返回描述不一样:

    • CONNECT连接座席

      如果resultCode返回0:成功

      如果resultCode返回11:Queuing...

      如果resultCode返回12:The current time is not within the working time of the service agents

      如果resultCode返回13:No ccucs address available!或connect failed, none channel config found.

      其他非零错误请参见《CCUCS接口开发指南》中的错误码参考。

    • CONNECT连接机器人

      如果resultCode返回0:connect to robot successfully或process robot multi message successfully。

      如果resultCode返回11:Queuing...

      如果resultCode返回13:Failed to disconnect robot或No ccucs address available!或fail to initialize robot.或connect failed, none channel config found.

    • DISCONNECT断连座席

      如果resultCode返回0:disconnect successfully

      如果resultCode返回11:Queuing...

      如果resultCode返回13:disconnect failed.或disconnect failed, none channel config found.或disconnect failed, session keep touch failed.

    • DISCONNECT断连机器人

      如果resultCode返回0:Disconnect robot successfully

      如果resultCode返回11:Queuing...

      如果resultCode返回13:Failed to disconnect robot.或disconnect failed, none channel config found.或disconnect failed, session keep touch failed.

    • CHAT座席场景

      如果resultCode返回0:sendUserMessage successfully.

      如果resultCode返回3:Incorrect JSON format或content can not be empty或the content Json String must contains mediaFileId or redirectUrl或the content Json String must contains title或Incorrect mediaFileType.

      如果resultCode返回11:Queuing...

      如果resultCode返回13:sendUserMessage failed.或Chat failed because the content is empty.或chat failed, none channel config found.或chat failed, send too quick or session keep touch failed.

    • CHAT机器人场景

      如果resultCode返回0:Failed to disconnect robot 或Send message to robot successfully 或process robot multi message successfully

      如果resultCode返回3:Incorrect JSON format或content can not be empty或the content Json String must contains mediaFileId or redirectUrl或the content Json String must contains title或Incorrect mediaFileType

      如果resultCode返回11:Queuing...

      如果resultCode返回13:connect failed或Chat failed because the content is empty.或chat failed, none channel config found.或chat failed, send too quick or session keep touch failed.

    • TRANS2AGENT场景

      如果resultCode返回13:转人工失败,找不到渠道配置transfer to agent failed, none channel config found.

      如果resultCode返回13:转人工失败,会话已失效。fail to transfer from robot to agent,session keep touch failed.

      如果resultCode返回13:转人工失败,当前已经是人工服务。fail to transfer from robot to agent,it has been agent service.

      如果resultCode返回11:Queuing...

      如果resultCode返回12:当前非座席工作时间!The current time is not within the working time of the service agents.

      如果resultCode返回13:转人工失败, 无法连接CCUCS。fail to transfer from robot to agent,connect to ccucs failed.

      如果resultCode返回13:断开机器人连接失败。Failed to disconnect robot.

      如果resultCode返回13:当前无可用座席。No agents available currently.

      如果resultCode返回0:transfer from robot to agent success.

    • INPUT场景

      如果resultCode返回0:sendUserMessage successfully.

      如果resultCode返回11:Queuing...

      如果resultCode返回13:发送输入状态失败,找不到渠道配置。send inputStatus failed, none channel config found.

      如果resultCode返回13:现在是机器人服务,此条消息无法发送!This is robot service,this message is prevented!

      如果resultCode返回13:发送用户消息失败!sendUserMessage failed

      如果resultCode返回13: Queuing...

      如果resultCode返回3:发送网页卡片消息成功,但是跳转地址未添加到白名单,座席无法跳转。

      The redirection address is not in the trust list, contact operation staff to add it.

    1.2

    resultCode

    string

    True

    接口返回码,成功为0,非0失败

    1.3

    offlineMsg

    object

    False

    如果离线开关打开,则该值将为true。如果离线开关关闭,AICC将不会返回此对象。

    1.3.1

    isOfflineStatus

    boolean

    False

    用于客户端判断连接失败后用户是否可以发送消息。

    在以下场景中,

    1.用户发送失败(controlType=CONNECT),

    2.用户发送(controlType=CHAT)失败,没有会话,

    3.用户在技能队列中等待时发送(controlType=DISCONNECT)

    1.3.2

    tipText

    string

    False

    当isOfflineStatus为true时,即触发离线模式,消息将被保存。

  • 响应状态码: 400

    错误的请求:请检查请求路径及参数。

  • 响应状态码: 401

    未授权:1.请确认是否购买了相关服务。2.请联系客服人员检查您账号的当前状态。

  • 响应状态码: 404

    请求的内容未找到:请检查请求的路径。

  • 响应状态码: 500

    业务失败:请依次确认您请求中各参数的取值。

错误码

无。

报文样例

  • 场景描述:连接机器人

请求参数:

{
  "content": "",
  "controlType": "CONNECT",
  "from": "session_1619573111751_user_1619573111751",
  "mediaType": "TEXT",
  "senderNickname": "user_1619573111751",
  "sourceType": "CUSTOMER",
  "timestamp": "1619573122352",
  "to": "1011577355744904195",
  "userAgent": null,
  "senderAvatar": null,
  "channel": "WEB"
}

响应参数:

{
    "resultCode": "0",
    "resultDesc": "connect to robot successfully."
}
  • 场景描述:与机器人交谈请求

请求参数:

{
  "content": "版本",
  "controlType": "CHAT",
  "from": "session_1619573111751_user_1619573111751",
  "mediaType": "TEXT",
  "senderNickname": "user_1619573111751",
  "sourceType": "CUSTOMER",
  "timestamp": "1619573123199",
  "to": "1011577355744904195",
  "userAgent": null,
  "senderAvatar": null,
  "channel": "WEB"
}

响应参数:

{
    "resultCode": "0",
    "resultDesc": "Send message to robot successfully"
}
  • 场景描述:机器人转人工请求

请求参数:

{
  "content": "",
  "controlType": "TRANS2AGENT",
  "from": "session_1619573111751_user_1619573111751",
  "mediaType": "TEXT",
  "senderNickname": "user_1619573111751",
  "sourceType": "CUSTOMER",
  "timestamp": "1619573129953",
  "to": "1011577355744904195",
  "userAgent": null,
  "senderAvatar": null,
  "channel": "WEB"
}

响应参数:

{
    "resultCode": "0",
    "resultDesc": "transfer from robot to agent success."
}
  • 场景描述:向座席发送网页卡片消息

请求参数:

{
  "content": "{\"title\":\"测试title 测试title 测试title\",\"description\":\"测试描述 测试描述 测试描述 测试描述\",\"mediaFileId\":\"xxxx-xxxx-xxxx-xxxx-2e171ac78313\",\"mediaFileType\":\"img\",\"redirectUrl\":\"https://www.****.com\"}",
  "controlType": "CHAT",
  "from": "session_1619573111751_user_1619573111751",
  "mediaType": "WEBCARD",
  "senderNickname": "user_1619573111751",
  "sourceType": "CUSTOMER",
  "timestamp": "1619573129953",
  "to": "1011577355744904195",
  "userAgent": null,
  "senderAvatar": null,
  "channel": "WEB"
}

响应参数:

{
    "resultCode": "0",
    "resultDesc": "sendUserMessage successfully."
}
或
{
    "resultCode": "3",
    "resultDesc": "The redirection address is not in the trust list, contact operation staff to add it."
}
  • 场景描述:断连请求

请求参数:

{
  "content": "",
  "controlType": "DISCONNECT",
  "from": "session_1619573842490_user_1619573842490",
  "mediaType": "TEXT",
  "senderNickname": "user_1619573842490",
  "sourceType": "CUSTOMER",
  "timestamp": "1619573854156",
  "to": "1011577355744904195",
  "userAgent": null,
  "senderAvatar": null,
  "channel": "WEB"
}

响应参数:

{
    "resultCode": "0",
    "resultDesc": "Disconnect robot successfully"
}

我们使用cookie来确保您的高速浏览体验。继续浏览本站,即表示您同意我们使用cookie。 详情

文档反馈

文档反馈

意见反馈

0/500

标记内容

同时提交标记内容