本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Amazon Connect 中启用消息流式传输后,使用亚马逊SNS有效负载
成功启用消息流后,您可能需要筛选消息,以便将其发送给目标参与者:座席、客户或所有人。
要按参与者进行筛选,请阅读特定的SNS标题属性 MessageVisibility
— — 以确定邮件是仅限客户、仅限代理还是全部发送。
-
仅发送给客户:对于面向客户的所有代码,客户端需要筛选出发送给客户的消息,并建立以下逻辑将消息转发给他们。
if ( ( MessageVisibility == CUSTOMER || MessageVisibility == ALL) && ParticipantRole != CUSTOMER )
-
仅发送给座席:
if ( ( MessageVisibility == AGENT || MessageVisibility == ALL) && ParticipantRole != AGENT )
您还可以SNS通过构建自定义订阅筛选策略来利用 Amazon 中的筛选功能。这会将消息筛选逻辑从SNS主题订阅者转移到SNS服务本身。
有效负载中的消息属性
以下是对 Amazon SNS 负载中每个消息属性的描述:
-
InitialContactId
:聊天的初始联系人 ID。 -
ContactId
:聊天的当前联系人 ID。如果聊天或 queue-to-queue联系流程中有新的代理,则InitialContactId
和ContactId
可能会有所不同。 -
ParticipantRole
:发送消息的参与者。 -
InstanceId
:Amazon Connect 实例 ID。 -
AccountId
: AWS 账户 ID。 -
Type
:可能的值:EVENT
、MESSAGE
。 -
ContentType
:可能的值:application/vnd.amazonaws.connect.event.typing
、application/vnd.amazonaws.connect.event.participant.joined
、application/vnd.amazonaws.connect.event.participant.left
、application/vnd.amazonaws.connect.event.transfer.succeeded
、application/vnd.amazonaws.connect.event.transfer.failed
、application/vnd.amazonaws.connect.message.interactive
、application/vnd.amazonaws.connect.event.chat.ended
等。 -
MessageVisibility
:可能的值:AGENT
、CUSTOMER
、ALL
。
SNS有效载荷示例
{ "Type" : "Notification", "MessageId" : "ccccccccc-cccc-cccc-cccc-ccccccccccccc", "TopicArn" : "arn:aws:sns:us-west-2:009969138378:connector-svc-test", "Message" : "{\"AbsoluteTime\":\"2021-09-08T13:28:24.656Z\",\"Content\":\"help\",\"ContentType\":\"text/plain\",\"Id\":\"333333333-be0d-4a44-889d-d2a86fc06f0c\",\"Type\":\"MESSAGE\",\"ParticipantId\":\"bbbbbbbb-c562-4d95-b76c-dcbca8b4b5f7\",\"DisplayName\":\"Jane\",\"ParticipantRole\":\"CUSTOMER\",\"InitialContactId\":\"33333333-abc5-46db-9ad5-d772559ab556\",\"ContactId\":\"33333333-abc5-46db-9ad5-d772559ab556\"}", "Timestamp" : "2021-09-08T13:28:24.860Z", "SignatureVersion" : "1", "Signature" : "examplegggggg/1tEBYdiVDgJgBoJUniUFcArLFGfg5JCvpOr/v6LPCHiD7A0BWy8+ZOnGTmOjBMn80U9jSzYhKbHDbQHaNYTo9sRyQA31JtHHiIseQeMfTDpcaAXqfs8hdIXq4XZaJYqDFqosfbvh56VPh5QgmeHTltTc7eOZBUwnt/177eOTLTt2yB0ItMV3NAYuE1Tdxya1lLYZQUIMxETTVcRAZkDIu8TbRZC9a00q2RQVjXhDaU3k+tL+kk85syW/2ryjjkDYoUb+dyRGkqMy4aKA22UpfidOtdAZ/GGtXaXSKBqazZTEUuSEzt0duLtFntQiYJanU05gtDig==", "SigningCertURL" : "https://sns.us-west-2.amazonaws.com/SimpleNotificationService-11111111111111111111111111111111.pem", "UnsubscribeURL" : "https://sns.us-west-2.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-west-2:000000000000:connector-svc-test:22222222-aaaa-bbbb-cccc-333333333333", "MessageAttributes" : { "InitialContactId" : {"Type":"String","Value":"33333333-abc5-46db-9ad5-d772559ab556"}, "MessageVisibility" : {"Type":"String","Value":"ALL"}, "Type" : {"Type":"String","Value":"MESSAGE"}, "AccountId" : {"Type":"String","Value":"999999999999"}, "ContentType" : {"Type":"String","Value":"text/plain"}, "InstanceId" : {"Type":"String","Value":"dddddddd-b64e-40c5-921b-109fd92499ae"}, "ContactId" : {"Type":"String","Value":"33333333-abc5-46db-9ad5-d772559ab556"}, "ParticipantRole" : {"Type":"String","Value":"CUSTOMER"} } }