Sto creando un'app per iOS e per le notifiche push utilizziamo il Simple Notification Service (SNS) di Amazon.Formato messaggio JSON in stile APNS in Python da utilizzare con Amazon SNS
SNS è meraviglioso, ma la documentazione è piuttosto scarsa. Sto utilizzando boto, libreria Python di Amazon, e ho capito come inviare testo normale notifiche push:
device_arn = 'MY ENDPOINT ARN GOES HERE'
plain_text_message = 'a plaintext message'
sns.publish(message=plain_text_message,target_arn=device_arn)
Tuttavia, ciò che non è chiaro dalla documentazione è come creare un servizio di push di notifica di Apple (APNS) messaggio. Devo inviare un suono e un badge insieme alla notifica push, ma non riesco a capire come formattare il JSON per il messaggio.
Ecco la mia ipotesi migliore finora:
message = {'default':'default message', 'message':{'APNS_SANDBOX':{'aps':{'alert':'inner message','sound':'mySound.caf'}}}}
messageJSON = json.dumps(message,ensure_ascii=False)
sns.publish(message=messageJSON,target_arn=device_arn,message_structure='json')
Quando ho eseguito questo codice, però, tutto quello che vedo sulla notifica è "messaggio predefinito" - il che significa che Amazon SNS respinto formato del mio messaggio, e visualizzato lo default
invece.
Come faccio a formattare questo JSON correttamente?
Sto usando il C# SDK e la chiave mancante per me, oltre a JSON, il contenuto di APS è stato quello di impostare MessageStructure = "json" ... una volta che ho fatto tutto ciò andava bene. THX – kingdango
Ho adattato questo a GCM, che stavo avendo problemi con. Ha funzionato come un fascino. Incollare il mio codice per riferimento: –