全部产品

[API]Chat

Chat 接口

描述

根据机器人实例ID与其进行会话。

请求参数

名称

类型

是否必填

描述

Action

String

系统规定参数,取值:Chat

InstanceId

String

机器人实例ID。登录智能对话机器人控制台,左侧面板选择开发者->基本配置,查看机器人示例信息,可获得该实例ID。

Utterance

String

机器人访问者的输入

SessionId

String

会话ID,用于标识一个访问者的会话和保持上下文信息。对于一个新的访问者,首次调用Chat接口时无需传递此字段,机器人会开启一个会话,并在Chat接口的响应中返回该会话的SessionId。对于该访问者的后续轮次的会话,调用Chat接口时传递当前会话的SessionId,机器人即可基于SessionId继续该轮次会话。

KnowledgeId

String

知识库词条的知识标题的ID。若指定此ID,那么机器人会直接返回指定的知识标题指定视角的答案

SenderId

String

访问者ID。用于识别当前会话中的用户

SenderNick

String

当前会话中访问的昵称

Tag

String

可以传递任何内容参数,该参数将会直接在返回结果中透传回来。

Perspective.1

String

视角编码,用于调用同一知识标题下不同视角的答案。在拼装请求参数时,需要以Perspective.1={视角编码}的格式传递参数。如:&Perspective.1=FZJBY3raWr。使用SDK时以SDK中定义的参数为准。目前仅支持一个视角答案的调用。

Recommend

Boolean

默认true,会话API保持出推荐逻辑;如果recommend = false则不出推荐

RecommendNum

Integer

推荐问题数量,1-10,当出推荐的时候才生效,返回不大于RecommendNum的推荐问题数量

返回参数

名称

类型

描述

MessageId

String

本条会话应答消息的ID

SessionId

String

本次会话的ID

Messages

Array of Message

消息的列表

Associate

Array of Associate

推荐信息

Message

名称

类型

描述

Type

String

本条消息的类型 Text=文本,Recommend=知识库关联问题推荐,Knowledge=知识库关联问题

Text

Text

当Type为Text时,此字段包含机器人返回的Text对象

Knowledge

Knowledge

当Type为Knowledge时,此字段包含机器人返回的Knowledge对象

Recommends

Array of Recommend

当Type为Recommend时,此字段包含机器人返回的Recommend的列表

Associate

名称

类型

描述

Title

String

推荐问题

Text

名称

类型

描述

Content

String

文本消息的内容

AnswerSource

String

区分答案类型。ChitChat:系统预置闲聊;USER_DEFINED_CHAT:自定义闲聊;KnowledgeBase:知识库条;BotFramework:任务型;NO_ANSWER:无答案

Knowledge

名称

类型

描述

Id

String

知识库中的知识标题ID

Title

String

知识标题

Summary

String

知识标题的简介

Content

String

知识标题的答案内容

RelatedKnowledges

List

关联知识列表

RelatedKnowledge

名称

类型

描述

KnowledgeId

String

知识关联知识的ID

Title

String

知识的关联知识的标题

Recommend

名称

类型

描述

KnowledgeId

String

知识库中的知识标题的ID

Title

String

知识库中的知识标题

错误码

错误代码

Http状态码

描述

InvalidInstanceId.NotFound

404

指定的InstanceId不存在

InvalidParameter

400

参数不合法

InternalError

500

内部错误

示例

请求示例

https://chatbot.cn-shanghai.aliyuncs.com/?Action=Chat
&InstanceId=<InstanceId>
&Utterance=<Utterance>
&SenderId=<SenderId>
%SenderNick=<SenderNick>
%Perspective.1=<视角编码>
%Tag=xxxxx
&<公共请求参数>

返回示例

XML格式

<ChatResponse>
  <RequestId>F2E2C40D-AB09-45A1-B5C5-EB9F5C4E4E4A</RequestId>
  <MessageId>cbf0a754ad3041fe9f1df91708aaf3b9</MessageId>
  <SessionId>45cf4e6e066f4f27a622c195ac666c43</SessionId>
  <Messages>
    <Message>
      <Type>Text</Type>
      <Text>
        <Content>你好</Content>
        <AnswerSource>ChitChat</AnswerSource>
      </Text>
    </Message>
    <Message>
      <Type>Knowledge</Type>
      <Knowledge>
        <Id>64</Id>
        <Title>Title of knowledge</Title>
        <Summary>Summary of knowledge</Summary>
        <Content>Content of knowledge</Content>
      </Knowledge>
    </Message>
    <Message>
      <Type>Recommend</Type>
      <Recommends>
        <Recommend>
          <KnowledgeId>64</KnowledgeId>
          <Title>Title of knowledge</Title>
        </Recommend>
      </Recommends>
    </Message>
  </Messages>
</ChatResponse>

JSON格式

{
  "RequestId" : "F2E2C40D-AB09-45A1-B5C5-EB9F5C4E4E4A",
  "MessageId" : "cbf0a754ad3041fe9f1df91708aaf3b9",
  "SessionId" : "45cf4e6e066f4f27a622c195ac666c43",
  "Messages" : [
    "Message" : {
      "Type" : "Text",
      "Text" : {
        "Content" : "你好",
        "AnswerSource" : "ChitChat"
      }
    },
    "Message" : {
      "Type" : "Knowledge",
      "Recommends" : {
        "Id" : "64",
        "Title" : "Title of knowledge",
        "Summary" : "Summary of knowledge",
        "Content" : "Content of knowledge"
      }
    },
    "Message" : {
      "Type" : "Recommend",
      "Recommends" : [
        "Recommend" : {
          "KnowledgeId" : "64",
          "Title" : "Title of knowledge"
        }
      ]
    }
  ]
}