AWS SNS如何发送应用程序通知?

时间:2018-01-25 13:43:28

标签: amazon-web-services amazon-sns

我有一个适用于iOS和Android的React Native应用程序,我希望集成AWS SNS。我有一些问题希望有SNS经验的人能够回答。

  1. 根据我的理解,AWS SNS仅仅是使用GCM(Android)和APNS(iOS)的网关
    • 这是对的吗?
  2. 如果以上是正确的,想象一下我有一个仅限Android的应用程序,当我可以直接使用GCM / Firebase时,使用AWS SNS的重点是什么?我甚至可以在iOS上使用Firebase。
  3. 我的应用需要允许单个用户向一个或多个用户发送通知。
    • 我可以使用RESTful API来实现这一目标吗?
    • 或者我需要设置API网关并使用Lambda函数吗?
  4. 如何在SNS上自动存储令牌?
    • 我读到我必须为此集成AWS Cognito,或者使用代理服务器。
  5. 编辑: 我设法编写了一个使用aws-sdk与SNS通信的Node.js服务器。

    与上述问题编号相对应的问题

    1. 仍在寻找答案
    2. 仍在寻找答案
    3. 我编写了一个Node服务器,我想我可以将aws-sdk代码嵌入到我的React Native应用程序中,因为它可以使用Node API
    4. 对于问题#4 - 我使用了createPlatformEndpoint

1 个答案:

答案 0 :(得分:0)

我不是专家,但鉴于你还没有收到答案,我想我会尽力帮助

  1. 您可以将AWS SNS用于send messages via GCM,但它可以做更多,因为它是pub-sub服务:例如,如果可以配置为接收来自AWS SES发送的邮件的电子邮件投诉,然后你得到一个lambda函数或一个队列(SQS)来接收SNS发出的那些动作,允许你对它们采取行动
  2. 仅适用于Android-app我没有理由去理解,即使它也在iOS上,您也可以自己配置在代码中使用if / else发送推送通知。我可以认为这是个人品味的问题,无论你想要在代码中还是在基础结构中进行更多配置(我知道限制可能会变得模糊),但是将它保存在代码中似乎要容易得多。我不会相信我说的一句话
  3.   

    我的应用需要允许单个用户向一个或多个用户发送通知   更多用户。

    如果用户正在向少数用户写入1,例如在短信应用中,我会说更容易在您的应用中定义(和维护)逻辑并迭代群组收件人发送推送通知。

    如果你有几个人会被成千上万的人跟踪并需要写信给他们,你可能会有一个使用SNS主题的案例(每个"热门用户&# 34;可以写 - 可能是通过你自己的api - 到"粉丝订阅的SNS主题;记住你可以创建的max number of topics,因为SNS将负责任何扩展问题(向您的100万粉丝发送推送通知可能需要时间和资源)

    1. 如果您要转到用户SNS,您所说的话,否则通过GCM / FCM发送推送通知就像POST request一样简单。