本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
了解 Amazon Chime SDK 事件通知
Amazon Chime SDK 支持向亚马逊 EventBridge、亚马逊简单队列服务 (SQS) 和亚马逊简单通知服务 (SNS) Simple Notification Service (SNS) 发送会议活动通知。
注意
Amazon Chime SDK 会议命名空间默认使用 ChimeSDKMeetings
端点。传统的 Chime 命名空间使用单个终端节点。有关命名空间和端点的更多信息,请参阅本指南前文中的迁移到 Amazon Chime SDK 会议命名空间。
将通知发送到 EventBridge
您可以向发送 Amazon Chime 软件开发工具包事件通知。 EventBridge有关将 Amazon Chime 软件开发工具包与配合使用的详细信息 EventBridge,请参阅《亚马逊 Chime 软件开发工具包管理员指南》中的 “自动使用亚马逊 Chime 软件开发工具包” EventBridge 。有关信息 EventBridge,请参阅 Amazon EventBridge 用户指南。
向 Amazon SQS 和 Amazon SNS 发送通知
你可以使用 CreateMeeting亚马逊 Chime SDK API 参考中的 API 用于向一个亚马逊 SQS 队列和每个会议发送一个亚马逊 SNS 主题的 Amazon Chime SDK 会议活动通知。这可以帮助减少通知延迟。有关 Amazon SQS 权限的更多信息,请参阅 Amazon 简单队列服务开发人员指南。有关 Amazon SNS 的更多信息,请参阅 Amazon Simple Notification Service 开发人员指南。
发送到亚马逊 SQS 和亚马逊 SNS 的通知包含的信息与 Amazon Chime SDK 发送到的通知相同。 EventBridgeAmazon Chime SDK 支持向用于创建会议的 API 区域中的队列和主题发送会议事件通知。事件通知可能未按发生顺序传递。
授予 Amazon Chime SDK 访问 Amazon SQS 和 Amazon SNS 的权限
在 Amazon Chime SDK 通过 Amazon SQS 队列或 Amazon SNS 主题向您发送通知之前,您必须授予 Amazon Chime SDK 向队列或主题的 Amazon 资源名称 (ARN) 发布消息的权限。为此,请将一个 AWS Identity and Access Management (IAM) 策略附加到队列或主题,以授予对 Amazon Chime SDK 的相应权限。有关更多信息,请参阅《Amazon Simple Queue Service 开发人员指南》中的 Amazon SQS 中的身份识别与访问管理以及《Amazon Simple Notification Service 开发人员指南》中的 Amazon SNS 访问控制示例案例。
注意
您的亚马逊 SQS 队列或亚马逊 SNS 主题必须使用与您的 Amazon Chime SDK API 终端节点 AWS 相同的区域。
例 允许 Amazon Chime SDK 将事件发布到 Amazon SQS 队列
以下示例 IAM policy 授予 Amazon Chime SDK 向指定的 Amazon SQS 队列发布会议活动通知的权限。请注意 aws:SourceArn
和 aws:SourceAccount
的条件语句。他们解决了潜在的混淆代理问题。
注意
创建以下策略时,您可以使用
aws:SourceArn
或aws:SourceAccount
。您不需要同时使用这两种方法。这些示例使用
ChimeSDKMeetings
命名空间及相应的终端节点。如果使用Chime
命名空间,则必须使用chime.amazonaws.com
终端节点。
{ "Version": "2008-10-17", "Id": "
example-ID
", "Statement": [ { "Sid": "example-statement-ID
", "Effect": "Allow", "Principal": { "Service": "meetings.chime.amazonaws.com" }, "Action": [ "sqs:SendMessage", "sqs:GetQueueUrl" ], "Resource": "arn:aws:sqs:"eu-central-1
:111122223333
:queueName", "Condition": { "ArnLike": { "aws:SourceArn": "arn:partition
:chime::111122223333
:*" }, "StringEquals": { "aws:SourceAccount": "111122223333
" } } } ] }
此示例显示了一项 Amazon SNS 策略,允许 Amazon Chime SDK 向您的 SNS 主题发送会议事件通知。
{ "Version": "2008-10-17", "Id": "
example-ID
", "Statement": [ { "Sid": "allow-chime-sdk-access-statement-id
", "Effect": "Allow", "Principal": { "Service": "meetings.chime.amazonaws.com" }, "Action": [ "SNS:Publish" ], "Resource": "arn:aws:sns:eu-central-1
:111122223333
:topicName", "Condition": { "ArnLike": { "aws:SourceArn": "arn:partition
:chime::111122223333
:*" }, "StringEquals": { "aws:SourceAccount": "111122223333
" } } } ] }
如果为服务器端加密 (SSE) 启用 Amazon SQS 队列,则必须执行额外步骤。将 IAM 策略附加到关联 AWS KMS 密钥,该策略授予 Amazon Chime SDK 执行加密添加到队列的数据所需的 AWS KMS 操作的权限。
{ "Version": "2012-10-17", "Id": "
example-ID
", "Statement": [ { "Sid": "example-statement-ID
", "Effect": "Allow", "Principal": { "Service": "meetings.chime.amazonaws.com" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "*" } ] }
例 允许 Amazon Chime SDK 将事件发布到 Amazon SNS 主题
以下示例 IAM policy 授予 Amazon Chime SDK 向指定的 Amazon SNS 主题发布会议事件通知的权限。
{ "Version": "2008-10-17", "Id": "
example-ID
", "Statement": [ { "Sid": "allow-chime-sdk-access-statement-id", "Effect": "Allow", "Principal": { "Service": "meetings.chime.amazonaws.com" }, "Action": [ "SNS:Publish" ], "Resource": "arn:aws:sns:eu-central-1
:111122223333
:topicName", "Condition": { "ArnLike": { "aws:SourceArn": "arn:partition:chime::111122223333
:*" }, "StringEquals": { "aws:SourceAccount": "111122223333
" } } } ] }