AWS SNS странно, когда дело доходит до форматов сообщений. Вы отправляете его как объект JSON? Если да, то вам придется добавить этот атрибут в полезную нагрузку вашего сообщения. В python это похоже на: sns.publish(TargetArn= <your-endpoint>, Message= json.dumps(<your-message-dictionary-object>),MessageStructure = 'json')
Я предполагаю, что системные настройки уведомлений включены на устройстве iOS.
Еще одна полезная вещь - подписаться на неудачи доставки для приложения на приборной панели SNS. Перейти к приложениям -> выбрать приложение -> Действия -> Настроить события -> Отказы служб. Здесь вы можете указать ARN для лямбда-функции, SNS тему (который затем посылает электронную почту к вам) и т.д. Пример электронной почты отказа доставки -
{ «DeliveryAttempts»: 1, «EndpointArn»: "< мобильная конечная ARN>", "EventType": "DeliveryFailure", "FailureMessage": "Платформа лексемы связан с конечной точкой является не действительными", "FailureType": "InvalidPlatformToken", "MessageId":»< some-value> "," Resource ":" < your application arn> "," Service ":" SNS "," Time ":" < some-value> "}
Вы получаете какую-либо ошибку? –
Нет, консоль AWS сообщает, что сообщение отправлено успешно. Устройство говорит, что подписка активна и соответствует ARN в консоли AWS. – JustK
Создайте тему для сбоев и подпишитесь на нее. Некоторые подробности здесь. http://docs.aws.amazon.com/sns/latest/dg/DeliveryPolicies.html – Yonkee