首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当推送通知“`ChannelType`”设置为“push”时,AWS的准确行为如何?

当推送通知“`ChannelType`”设置为“push”时,AWS的准确行为如何?
EN

Stack Overflow用户
提问于 2021-08-09 09:39:21
回答 1查看 331关注 0票数 1

我正在评估AWS的定位,以发送推送通知。

参考文件中,它声明ChannelType可以是以下几种之一:

代码语言:javascript
复制
PUSH | GCM | APNS | APNS_SANDBOX | APNS_VOIP | APNS_VOIP_SANDBOX | ADM | SMS | VOICE | EMAIL | BAIDU | CUSTOM | IN_APP

但是,我无法找到上的文档,当我使用值时会发生什么?

我设置了一个沙箱iOS应用程序,如果我将端点注册为APNS_SANDBOX并发送消息,它就能工作。如果我更改为PUSH,请注册它,并发送一条通道类型为PUSH的消息

代码语言:javascript
复制
{
    "MessageConfiguration": {
        "DefaultPushNotificationMessage": {
            "Body": "Hello world",
            "Title": "Test title",
            "Action": "OPEN_APP",
            "SilentPush": false
        }
    },
    "Addresses": {
        "...token...": {
            "ChannelType": "PUSH"
        }
    }
}

我得到了错误响应:

代码语言:javascript
复制
{
    "Message": "No Addresses or Endpoints to send to"
}

如果我使用GET端点API,我确实会看到我的端点注册为PUSH地址:

代码语言:javascript
复制
{
    "ChannelType": "PUSH",
    "Address": "...token...",
    "EndpointStatus": "ACTIVE",
    "OptOut": "NONE",
    "RequestId": "...",
    "EffectiveDate": "2021-08-09T08:57:08.832Z",
    "ApplicationId": "...",
    "Id": "...",
    "CohortId": "51",
    "CreationDate": "2021-07-28T07:56:22.074Z"
}

如果将端点注册为APNS_SANDBOX并在SendMessage中使用PUSH,则会得到相同的错误消息。

EN

回答 1

Stack Overflow用户

发布于 2022-06-14 16:40:26

aws文档中没有任何关于PUSH通道的内容,您可以使用类似于以下内容的user.id

代码语言:javascript
复制
message_request = {
                "MessageConfiguration": {
                    "APNSMessage":
                    {
                        "Action": "OPEN_APP",
                        "RawContent":raw_message_ios

                    },
                    "GCMMessage": {
                        "Action": "OPEN_APP",
                        "RawContent":raw_message_android
                        #"{\"notification\": {\"title\": \"Hello Android World!\",\"body\":\"From PinPoint CLI\"},\"data\":{\"custom\":\"123 Penny Lane\"}}"
                    },
                },
                "Users": {
                    user:{
                        'TitleOverride': ""
                    }
                }
            }

我把这个和send_users_messages一起用

代码语言:javascript
复制
response = self.client.send_users_messages(
                    ApplicationId=self.application_id,
                    SendUsersMessageRequest=message_request
                )
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68709911

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档