本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
启用持续聊天
客户通常会开始聊天,然后离开对话并稍后返回继续聊天。这可能会在几天、几个月甚至几年的时间内发生很多次。要支持此类长时间聊天,您可以启用持续聊天。
通过持续聊天,客户可以利用前传的上下文、元数据和笔录来恢复之前的对话。客户在返回聊天时无需重复内容,客服可以访问整个对话历史记录。
聊天补液
要设置持续聊天,当您调用 StartChatContactAPI 创建新的聊天联系人时,需要在StartChatContact
API 的SourceContactId
参数contactId
中提供前一个聊天联系人。这会调用一个名为聊天回复的过程:从以前的聊天联系人中提取聊天记录,然后显示出来。
重要
只有已结束的聊天会话才能重新进入新的聊天会话。
Amazon Connect支持两种类型的补液:
-
ENTIRE_PAST_SESSION
:启动新的聊天会话并对过去聊天会话中的所有聊天片段进行补充。 -
FROM_SEGMENT
:开始新会话并从指定的过去的聊天段中恢复水分。
例如,显示这些不同补液模式的用例,请参见 使用案例示例。
RelatedContactId
新联系人可以通过与现有联系人建立关联 RelatedContactId。此新联系人包含相关联系人的联系人属性的副本。
有关如何在联系人记录中建模的更多信息,请参阅联系人记录数据模型。RelatedContactId
对于持续聊天,则RelatedContactId
描绘了contactId
过去的源聊天补液。
如何启用持续聊天会话
要启用持续聊天,请在 StartChatContactAPI 中指定PersistentChat
请求参数。
注意
要进行持续聊天,请确保您的实例的聊天记录的 S3 存储桶包含过去联系人的记录。
持续聊天不支持使用多个聊天记录存储桶或更改Amazon Connect生成的聊天记录文件名。
使用案例示例
例如,客户开始聊天会话:
-
代理 a1 接受聊天,客户和代理 a1 之间开始对话。这是在当前聊天会话中创建的第一个联系人。例如,
contactId
C1 可能是 11111111-aaaa-bbbb-111111-1111111111111。 -
然后,代理 a1 将聊天转移到代理 a2。这会创建另一个联系人。例如,
contactId
C2 可能是 2222222-aaaa-bbbb-222222222222-222222222。 -
代理人 a2 结束聊天。
-
客户会被转到断开联系流程进行聊天后调查,从而创建另一个联系人。例如,
contactId
C3 可能是 33333333-aaaa-bbbb-3333-3333333333333。 -
显示聊天后调查,聊天会话结束。
-
稍后,客户回来并想恢复他们过去的聊天会话。
此时,客户可能有两种不同的用例。以下是客户可以使用的持续聊天用例,以及您如何配置Amazon Connect以提供这些用例。
使用案例1
客户想继续他们过去的聊天会话,但他们想隐藏聊天后的调查。您可以使用以下配置来提供这种体验。
请求:
PUT /contact/chat HTTP/1.1 Content-type: application/json { "Attributes": { "string" : "string" }, "ContactFlowId": "string", "InitialMessage": { "Content": "string", "ContentType": "string" }, "InstanceId": "string", ... // other chat fields // NEW Attribute for persistent chat "PersistentChat" : { "SourceContactId":"2222222-aaaa-bbbb-2222-222222222222222" "RehydrationType":"FROM_SEGMENT" } }
配置
-
SourceContactId = 2222222-aaaa-bbb-222222222222222(C2 的contactId)
-
RehydrationType = "
FROM_SEGMENT
"
预期行为
-
此配置从指定的过去结束的联系人 C2(例如 2222222-aaaaa-bbb-22222222-22222222-2222222)启动持续聊天会话。
过去的聊天会话记录 C2(2222222-aaaa-bbbb-22222222-222222222)和 C1(1111111111-aaaa-bbb-11111111-111111111)的记录可在当前的持续聊天会话中访问。请注意,聊天区段 C3(33333333-aaaa-bbbb-3333-33333333333)已从持续聊天会话中删除。
-
在这种情况下,StartChatContact响应将 C2(2222222-aaaaa-bbbb-222222222222-222222222)作为 “ContinuedFromContactId” 返回。
-
这个持续
RelatedContactId
的聊天会话是 2222222-aaaa-bbbb-22222222-22222222222 (C2)。
使用案例2
客户希望继续过去的聊天会话并查看过去整个互动的记录(他们不想隐藏聊天后的调查)。您可以使用以下配置来提供这种体验。
注意
对于ENTIRE_PAST_SESSION
补液类型,将上次聊天会话的第一次接触(初次contactId
)指定为SourceContactId
属性。
请求:
PUT /contact/chat HTTP/1.1 Content-type: application/json { "Attributes": { "string" : "string" }, "ContactFlowId": "string", "InitialMessage": { "Content": "string", "ContentType": "string" }, "InstanceId": "string", ... // other chat fields // NEW Attribute for persistent chat "PersistentChat":{ "SourceContactId":"11111111-aaaa-bbbb-1111-1111111111111" // (first contactId C1) "RehydrationType":"ENTIRE_PAST_SESSION" } }
配置
-
SourceContactId =
11111111-aaaa-bbbb-1111-1111111111111
(C1) -
RehydrationType = “E
NTIRE_PAST_SESSION
”
预期行为
-
这将从最近结束的聊天联系人 (C3) 开始持续的聊天会话。可以在当前的持续聊天会话中访问过去的聊天会话 C3、C2 和 C1 的记录。
-
在这种情况下,StartChatContact响应返回 33333333-aaaa-bbbb-3333-3333333333333 (C3) 作为 “ContinuedFromContactId”。
-
这个持续
RelatedContactId
的聊天会话是 33333333-aaaa-bbbb-3333-3333333333333 (C3)
注意
聊天链接为累积链接。聊天会话关联后,它们会继续。
例如,如果属于过去聊天会话的联系人 (contactId
C2) 链接到另一个过去聊天会话中的联系人 (contactId
C1),则通过链接 C2 创建的新持久聊天会话也会导致 C1 的隐式链接。新的持续聊天会话将具有以下链接:C3 → C2 → C1
过去的 contactId(持续聊天会话从中继续)在 StartChatContactAPI 响应的ContinuedFromContactId
字段中公开。它也出现在联系人联系记录的RelatedContactId字段中
如何访问过去的聊天联系人记录以进行持续聊天
访问过去的聊天记录以进行持续聊天,使用现有的NextToken
分页模型。如果过去的聊天消息存在,则GetTranscript对新启动的持续聊天会话的初始调用NextToken
在响应中包含 a。 NextToken
必须用于访问过去的聊天记录,并在随后的GetTranscript通话中ScanDirection
将BACKWARD
设置为以获取过去的聊天消息。
如果有多条过去的聊天消息,则GetTranscript返回一条新的聊天记录,NextToken
并且可以重复相同的过程以获取更多过去的聊天记录。
不支持:使用StartPosition
和contactId
过滤器进行持续聊天
Amazon Connect不支持在GetTranscript通话中使用StartPosition
和contactId
筛选来自过去聊天的脚本项目属性。