SaaS 产品的亚马逊SNS通知 - AWS Marketplace

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

SaaS 产品的亚马逊SNS通知

要接收通知,您需要订阅商品创建期间向您 AWS Marketplace 提供的亚马逊简单通知服务 (AmazonSNS) 主题。这些主题提供有关客户产品订阅和合同权利发生更改的通知。这可以让您知道什么时候为特定客户提供和撤销访问权限。

注意

在商品创建过程中,您将收到该SNS主题的实际亚马逊资源名称 (ARN)。例如:arn:aws:sns:us-east-1:123456789012:aws-mp-subscription-notification-PRODUCTCODE

以下亚马逊SNS主题适用于软件即服务 (SaaS) 产品:

  • Amazon SNS 主题:aws-mp-entitlement-notification – 当买家创建新合同、升级、续订或合同到期时,本主题会通知您。这仅适用于定价模式中包含合同(也称为 SaaS 合同带消费的 SaaS 合同(超额))的产品。

  • Amazon SNS 主题:aws-mp-subscription-notification – 当买家订阅或取消订阅产品时,本主题会通知您,其中包括专属优惠的 offer-identifier 和 SaaS 免费试用的免费试用标志。这适用于所有定价模式,包括合同和订阅(也称为 SaaS 订阅SaaS 合同带消费的 SaaS 合同(超额))。

要详细了解您响应这些通知的场景,请参阅以下主题:

Amazon SNS 主题:aws-mp-entitlement-notification

aws-mp-entitlement-notification 主题中的每条消息都采用以下格式。

{ "action": "<action-name>", "customer-identifier": " X01EXAMPLEX", "product-code": "n0123EXAMPLEXXXXXXXXXXXX", }

这些区域有:<action-name> 将永远如此 entitlement-updated

注意
  • 对于权利消息,无论采取何种操作(新建、升级、续订或已过期),消息都是一样的。需要随后调用 GetEntitlement 才能发现更新的内容。

  • 对于带消费的 SaaS 合同(超额),向卖家提供了aws-mp-subscription-notificationSNS主题。这是卖家在增加超额定价时会收到的额外通知。当卖家获得新客户时,卖家会收到一条订阅消息,表明这是新客户,而不仅仅是获得 entitlement-updated(这可能是指任何类型的操作)。

  • 对于 future 日期的协议 (FDAs),此主题在协议开始日期(而不是协议签署日期)启动。它也会在权利发生后续变更时启动,例如协议的取消、更换、续订或到期。

具有合同定价的产品(包括与之签订的合同 pay-as-you-go)必须回复这些消息。有关如何响应的更多信息,请参阅场景:监控用户订阅的更改

Amazon SNS 主题:aws-mp-subscription-notification

aws-mp-subscription-notification 主题中的每条消息都采用以下格式。

{ "action": "<action-name>", "customer-identifier": " X01EXAMPLEX", "product-code": "n0123EXAMPLEXXXXXXXXXXXX", "offer-identifier": "offer-abcexample123", "isFreeTrialTermPresent":"true" }

offer-identifier 仅当优惠为专属优惠 时,通知中才会显示。

isFreeTrialTermPresent 属性会指示买家的订阅是否为免费试用。此属性的JSON值不是布尔数据类型。而是将该值转换为字符串数据类型。有关更多信息,请参阅 SaaS 免费试用。

这些区域有:<action-name> 将因通知而异。可能的操作包括:

  • subscribe-successsubscribe-success 消息表示卖家何时可以开始发送计量记录。如果买家接受了基于协议的报价,则此消息将与新报价一起再次发送。offer-identifier

  • subscribe-fail— 如果生成subscribe-fail消息,即使买家已经从卖家的 SaaS 登录页面过渡到卖家的 SaaS 登录页面,付款也可能失败。 AWS Marketplace 卖家应等待 subscribe-success 消息后再允许消费产品。

  • unsubscribe-pending – 当买家取消订阅时,会先发送一条 unsubscribe-pending 消息。这表明在买家完全取消之前,卖家只有有限的时间(大约一小时)来发送计量记录。

  • unsubscribe-successunsubscribe-success 消息表示取消已完成,之后将不再接受任何计量记录。

注意
  • 如果买家取消订阅,然后在发送最终 unsubscribe-success 消息之前立即成功重新订阅,则不会发送最终 unsubscribe-success 消息,而是发送 subscribe-success 消息。

  • 对于 future 日期的协议 (FDAs),subscribe-success操作将在协议开始日期(而不是协议签署日期)启动。

采用订阅定价(包括与之签订的合同 pay-as-you-go)的产品必须回复这些消息。有关如何响应的更多信息,请参阅以下主题。

为SQS队列订阅主题 SNS

我们建议通过 Amazon SQS 队列订阅所提供的SNS主题。有关创建SQS队列和为队列订阅主题的详细说明,请参阅《亚马逊简单通知服务开发者指南》中的 “为亚马逊SQS队列订阅亚马逊SNS主题”。

注意

您只能订阅 AWS 账户 用于销售产品的用户 AWS Marketplace SNS的主题。但是,您可以将消息转发到其他帐户。有关更多信息,请参阅《亚马逊简单通知服务开发者指南》中的向其他账户中的亚马逊SQS队列发送亚马逊SNS消息

轮询SQS队列以获取通知

在您为SQS队列订阅SNS主题后,消息将存储在中SQS。您需要定义一项服务,以不断轮询该队列,查找消息并相应地处理它们。