【发布时间】:2017-02-16 00:35:15
【问题描述】:
我正在尝试使用 Amazon 的 Ruby SDK 为不同平台(即 APNS 和 GCM(Apple 和 Android 设备))发送带有附加属性的推送通知,但我找不到使用 SDK 发送记录消息结构的方法API。
要为 GCM 和 APNS 发送具有不同负载的消息,我发现的文档建议使用以下结构:
{
"APNS": {
"aps": {
"alert": "someone set us up the bomb"
}
},
"GCM": {
"data": {
"message": "we get signal"
}
}
}
我希望 SNS 能够正确地将特定于平台的有效负载发送到正确的平台端点,但发送到例如 android 设备的消息也包括 APNS 有效负载 - 它包括完整的消息正文。
这是我发送消息的方式:
sns = AWS::SNS::Client.new
sns.publish(
target_arn: endpoint_arn,
message: {
GCM: ...,
APNS: ...
}.to_json
)
可用的文档,特别是关于 ruby sdk 的文档,似乎并不那么详细。我认为有效载荷应该根据端点平台正确分布的假设是否不正确?有没有更好的方法来实现我想要做的事情?
【问题讨论】:
标签: android ios ruby amazon-web-services amazon-sns