Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Pubblicazione di notifiche Amazon SNS con payload specifici della piattaforma
Puoi utilizzare Amazon SNS APIs per inviare messaggi personalizzati con payload specifici della piattaforma ai dispositivi mobili. Console di gestione AWS Per informazioni sull'uso di Amazon SNS APIs, consulta Operazioni API push per dispositivi mobili e inserisci il SNSMobilePush.java file. snsmobilepush.zip
Invio di messaggi in formato JSON
Quando si inviano payload specifici della piattaforma, i dati devono essere stringhe coppia chiave-valore in formato JSON, con virgolette doppie con carattere di escape.
I seguenti esempi mostrano un messaggio personalizzato per la piattaforma FCM .
{ "GCM": "{\"fcmV1Message\": {\"message\": {\"notification\": {\"title\": \"Hello\", \"body\": \"This is a test.\"}, \"data\": {\"dataKey\": \"example\"}}}}" }
Invio di messaggi specifici della piattaforma
Oltre a inviare dati personalizzati come coppie chiave-valore, è possibile inviare coppie chiave-valore specifiche per la piattaforma.
L'esempio seguente mostra l'inclusione dei parametri FCM time_to_live e collapse_key dopo le coppie chiave-valore dei dati personalizzate nel parametro FCM data.
{ "GCM": "{\"fcmV1Message\": {\"message\": {\"notification\": {\"title\": \"TitleTest\", \"body\": \"Sample message for Android or iOS endpoints.\"}, \"data\":{\"time_to_live\": 3600,\"collapse_key\":\"deals\"}}}}" }
Per l'elenco delle coppie chiave-valore supportate in ciascuno dei servizi di notifica push supportati in Amazon SNS, consulta i collegamenti seguenti:
Importante
Amazon SNS ora supporta l'API HTTP v1 Firebase Cloud Messaging (FCM) per l'invio di notifiche push mobili ai dispositivi Android.
26 marzo 2024 — Amazon SNS supporta l'API HTTP v1 FCM per dispositivi Apple e destinazioni Webpush. Ti consigliamo di migrare le tue applicazioni push mobili esistenti all'ultima API HTTP v1 di FCM entro il 1° giugno 2024 per evitare interruzioni delle applicazioni.
-
Riferimento chiave di Payload
nella documentazione APNs -
Firebase Cloud Messaging HTTP Protocol (Protocollo HTTP di Firebase Cloud Messaging)
nella documentazione . -
Invio di un messaggio
nella documentazione
Invio di messaggi a un'applicazione su più piattaforme
Per inviare un messaggio a un'applicazione installata su dispositivi per più piattaforme, come FCM e APNs, devi prima sottoscrivere gli endpoint mobili a un argomento in Amazon SNS e quindi pubblicare il messaggio sull'argomento.
L'esempio seguente mostra un messaggio da inviare agli endpoint mobili sottoscritti su APNs FCM e ADM:
{ "default": "This is the default message which must be present when publishing a message to a topic. The default message will only be used if a message is not present for one of the notification platforms.", "APNS": "{\"aps\":{\"alert\": \"Check out these awesome deals!\",\"url\":\"www.amazon.com\"} }", "GCM": "{\"data\":{\"message\":\"Check out these awesome deals!\",\"url\":\"www.amazon.com\"}}", "ADM": "{\"data\":{\"message\":\"Check out these awesome deals!\",\"url\":\"www.amazon.com\"}}" }
Invio di messaggi a notifiche di avviso o in APNs background
Amazon SNS può inviare messaggi ad APNs annunci alert o background notifiche (per ulteriori informazioni, consulta Pushing Background Updates to Your App nella APNs documentazione
-
Una
alertAPNs notifica informa l'utente visualizzando un messaggio di avviso, riproducendo un suono o aggiungendo un badge all'icona dell'applicazione. -
Una
backgroundAPNs notifica si attiva o indica all'applicazione di agire in base al contenuto della notifica, senza informare l'utente.
Specificazione di valori di intestazione personalizzati APNs
Ti consigliamo di specificare valori personalizzati per l'attributo del messaggio AWS.SNS.MOBILE.APNS.PUSH_TYPE riservato utilizzando l'azione dell'API Amazon Publish SNS o AWS SDKs il. AWS CLI Il seguente esempio di CLI imposta content-available su 1 e apns-push-type su background per l'argomento specificato.
aws sns publish \ --endpoint-url https://sns.us-east-1.amazonaws.com \ --target-arn arn:aws:sns:us-east-1:123456789012:endpoint/APNS_PLATFORM/MYAPP/1234a567-bc89-012d-3e45-6fg7h890123i \ --message '{"APNS_PLATFORM":"{\"aps\":{\"content-available\":1}}"}' \ --message-attributes '{ \ "AWS.SNS.MOBILE.APNS.TOPIC":{"DataType":"String","StringValue":"com.amazon.mobile.messaging.myapp"}, \ "AWS.SNS.MOBILE.APNS.PUSH_TYPE":{"DataType":"String","StringValue":"background"}, \ "AWS.SNS.MOBILE.APNS.PRIORITY":{"DataType":"String","StringValue":"5"}}' \ --message-structure json
Nota
Assicurati che la struttura JSON sia valida. Aggiungi una virgola dopo ogni coppia chiave-valore, tranne l'ultima.
Dedurre l'intestazione del tipo di APNs push dal payload
Se non imposti l'apns-push-type APNs intestazione, Amazon SNS imposta l'intestazione su background o in base alert alla chiave nel dizionario della configurazione content-available del payload in aps formato JSON. APNs
Nota
Amazon SNS è in grado di dedurre solo le intestazioni alert o background, anche se l'intestazione apns-push-type può essere impostata su altri valori.
-
apns-push-typeè impostato sualert.-
Se il dizionario
apscontienecontent-availableimpostato su1e una o più chiavi che attivano le interazioni dell'utente. -
Se il dizionario
apscontienecontent-availableimpostato su0o se la chiavecontent-availableè assente. -
Se il valore della chiave
content-availablenon è un numero intero o un valore booleano.
-
-
apns-push-typeè impostato subackground.-
Se il dizionario
apscontiene solocontent-availableimpostato su1e nessun'altra chiave che attiva le interazioni dell'utente.Importante
Se Amazon SNS invia un oggetto di configurazione non elaborato APNs come notifica solo in background, devi includere
content-availableset to nel dizionario.1apsSebbene sia possibile includere chiavi personalizzate, il dizionarioapsnon deve contenere chiavi che attivino interazioni dell'utente (ad esempio avvisi, badge o suoni).
-
Di seguito è riportato un esempio di oggetto configurazione non elaborato.
{ "APNS": "{\"aps\":{\"content-available\":1},\"Foo1\":\"Bar\",\"Foo2\":123}" }
In questo esempio, Amazon SNS imposta l'apns-push-type APNs intestazione del messaggio su. background Quando Amazon SNS rileva che il dizionario apn contiene la chiave content-available impostata su 1 e non contiene altre chiavi che possono attivare interazioni utente imposta l'intestazione su background.