Atributos de aplicativo móvel do Amazon SNS - Amazon Simple Notification Service

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Atributos de aplicativo móvel do Amazon SNS

O Amazon Simple Notification Service (Amazon SNS) oferece suporte para o registro em log do status de entrega das mensagens de notificação por push. Depois de configurar os atributos do aplicativo, as entradas de registro serão enviadas ao CloudWatch Logs para mensagens enviadas do Amazon SNS para endpoints móveis. O registro de status de entrega de mensagens proporciona um melhor insight operacional, por exemplo:

  • Saiba se uma mensagem de notificação por push foi entregue do Amazon SNS para o serviço de notificações por push.

  • Identifique a resposta enviada do serviço de notificações por push para o Amazon SNS.

  • Determinar o tempo de permanência da mensagem (o tempo entre o carimbo de data e hora da publicação e antes do envio para um serviço de notificações por push).

Para configurar os atributos do aplicativo para o status de entrega de mensagens, você pode usar os AWS Management Console kits de desenvolvimento de AWS software (SDKs) ou a API de consulta.

Configurando atributos de status de entrega de mensagens usando o AWS Management Console

  1. Faça login no console do Amazon SNS.

  2. No painel de navegação, aponte para Mobile (Dispositivos móveis), em seguida escolha Push notifications (Notificações por push).

  3. Na seção Aplicativos da plataforma, escolha o aplicativo que contém os endpoints para os quais você deseja receber CloudWatch registros.

  4. Escolha Application Actions (Ações do aplicativo) e, em seguida, selecione Delivery status (Status de entrega).

  5. Na caixa de diálogo Delivery Status (Status da entrega), escolha Create IAM Roles (Criar funções do IAM).

    Você será redirecionado para o console do IAM.

  6. Escolha Permitir para dar ao Amazon SNS acesso de gravação para usar CloudWatch os registros em seu nome.

  7. Agora, de volta à caixa de diálogo Status de entrega, insira um número no campo Porcentagem de sucesso na amostra (0-100) para a porcentagem de mensagens bem-sucedidas enviadas para as quais você deseja receber CloudWatch registros.

    nota

    Depois de configurar os atributos do aplicativo para o status de entrega de mensagens, todas as entregas de mensagens com falha geram CloudWatch registros.

  8. Finalmente, escolha Save Configuration (Salvar configuração). Agora você poderá visualizar e analisar os CloudWatch registros que contêm o status de entrega da mensagem. Para obter mais informações sobre o uso CloudWatch, consulte a CloudWatchdocumentação.

Exemplos de registros de status CloudWatch de entrega de mensagens do Amazon SNS

Depois de configurar os atributos de status de entrega de mensagens para um endpoint do aplicativo, CloudWatch os registros serão gerados. Exemplos de logs, no formato JSON, são exibidos da seguinte forma:

SUCCESS

{ "status": "SUCCESS", "notification": { "timestamp": "2015-01-26 23:07:39.54", "messageId": "9655abe4-6ed6-5734-89f7-e6a6a42de02a" }, "delivery": { "statusCode": 200, "dwellTimeMs": 65, "token": "Examplei7fFachkJ1xjlqT64RaBkcGHochmf1VQAr9k-IBJtKjp7fedYPzEwT_Pq3Tu0lroqro1cwWJUvgkcPPYcaXCpPWmG3Bqn-wiqIEzp5zZ7y_jsM0PKPxKhddCzx6paEsyay9Zn3D4wNUJb8m6HXrBf9dqaEw", "attempts": 1, "providerResponse": "{\"multicast_id\":5138139752481671853,\"success\":1,\"failure\":0,\"canonical_ids\":0,\"results\":[{\"message_id\":\"0:1422313659698010%d6ba8edff9fd7ecd\"}]}", "destination": "arn:aws:sns:us-east-2:111122223333:endpoint/FCM/FCMPushApp/c23e42de-3699-3639-84dd-65f84474629d" } }

FAILURE

{ "status": "FAILURE", "notification": { "timestamp": "2015-01-26 23:29:35.678", "messageId": "c3ad79b0-8996-550a-8bfa-24f05989898f" }, "delivery": { "statusCode": 8, "dwellTimeMs": 1451, "token": "examp1e29z6j5c4df46f80189c4c83fjcgf7f6257e98542d2jt3395kj73", "attempts": 1, "providerResponse": "NotificationErrorResponse(command=8, status=InvalidToken, id=1, cause=null)", "destination": "arn:aws:sns:us-east-2:111122223333:endpoint/APNS_SANDBOX/APNSPushApp/986cb8a1-4f6b-34b1-9a1b-d9e9cb553944" } }

Para obter uma lista de códigos de resposta do serviço de notificação por push, consulte Códigos de resposta da plataforma.

Configurando atributos de status de entrega de mensagens com o AWS SDKs

Eles AWS SDKsfornecem APIs em vários idiomas o uso de atributos de status de entrega de mensagens com o Amazon SNS.

O seguinte exemplo Java mostra como usar a API SetPlatformApplicationAttributes para configurar atributos de aplicativo para status de entrega de mensagens para as mensagens de notificação por push. Você pode usar os seguintes atributos para o status de entrega de mensagens: SuccessFeedbackRoleArn, FailureFeedbackRoleArn e SuccessFeedbackSampleRate. Os FailureFeedbackRoleArn atributos SuccessFeedbackRoleArn e são usados para dar ao Amazon SNS acesso de gravação para usar CloudWatch Logs em seu nome. O atributo SuccessFeedbackSampleRate é para especificar a porcentagem de taxa de amostra (0-100) de mensagens bem-sucedidas. Depois de configurar o FailureFeedbackRoleArn atributo, todas as entregas de mensagens com falha geram CloudWatch registros.

SetPlatformApplicationAttributesRequest setPlatformApplicationAttributesRequest = new SetPlatformApplicationAttributesRequest(); Map<String, String> attributes = new HashMap<>(); attributes.put("SuccessFeedbackRoleArn", "arn:aws:iam::111122223333:role/SNS_CWlogs"); attributes.put("FailureFeedbackRoleArn", "arn:aws:iam::111122223333:role/SNS_CWlogs"); attributes.put("SuccessFeedbackSampleRate", "5"); setPlatformApplicationAttributesRequest.withAttributes(attributes); setPlatformApplicationAttributesRequest.setPlatformApplicationArn("arn:aws:sns:us-west-2:111122223333:app/FCM/FCMPushApp"); sns.setPlatformApplicationAttributes(setPlatformApplicationAttributesRequest);

Para obter mais informações sobre o SDK para Java, consulte Conceitos básicos do AWS SDK for Java.

Códigos de resposta da plataforma

A seguir, uma lista de links para os códigos de resposta do serviço de notificação por push:

Serviço de notificação por push Códigos de resposta
Amazon Device Messaging (ADM) Consulte Response Format (“Formato de resposta”) na documentação do ADM.
Serviço de notificação push da Apple (APNs) Consulte a resposta HTTP/2 de APNs em Comunicação com APNs no Guia de programação de notificações locais e remotas.
Firebase Cloud Messaging (FCM) Consulte Códigos de respostas de erros de mensagens downstream na documentação do Firebase Cloud Messaging.
Microsoft Push Notification Service for Windows Phone (MPNS) Consulte Códigos de resposta do Serviço de notificação por push para Windows Phone 8 na documentação de desenvolvimento do Windows 8.
Windows Push Notification Services (WNS) Consulte "Códigos de resposta" em Solicitação e cabeçalhos de resposta do Serviço de notificação por push (Aplicativos de tempo de execução do Windows) na documentação de desenvolvimento do Windows 8.