本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在 Amazon Connect 中啟用訊息串流後,使用 Amazon SNS 承載 Amazon Connect
成功啟用訊息串流後,您可能需要篩選訊息才能傳送給預定參與者:客服人員、客戶或全部。
若要依參與者進行篩選,請閱讀特定 SNS 標頭屬性 MessageVisibility
– 以判斷訊息是僅限客戶、僅限客服人員或全部。
-
僅傳送給客戶:對於面向客戶的所有程式碼,客戶端必須篩選出適合客戶的訊息,並建立下列邏輯,將訊息轉寄給客戶。
if ( ( MessageVisibility == CUSTOMER || MessageVisibility == ALL) && ParticipantRole != CUSTOMER )
-
如果只要傳送給客服人員:
if ( ( MessageVisibility == AGENT || MessageVisibility == ALL) && ParticipantRole != AGENT )
您也可以建立自訂訂閱篩選政策,利用 Amazon SNS 中的篩選功能。這會將訊息篩選邏輯從 SNS 主題訂閱用戶卸載至 SNS 服務本身。
有效負載中的訊息屬性
以下是 Amazon SNS 承載中每個訊息屬性的說明:
-
InitialContactId
:聊天的初始聯絡人 ID。 -
ContactId
:聊天的目前聯絡人 ID。如果聊天或佇列對佇列聯絡流程中有新的客服人員,則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"}
}
}