2017-04-25 2 views
0

Je dois envoyer une notification push SNS à plusieurs périphériques passant la matrice de jetons de périphérique à l'aide de aws-sdk-go lib.Envoi d'un message de notification push SNS à plusieurs périphériques

Actuellement, je suis d'envoyer le message push à SNS en utilisant ces étapes:

Création du point final:

pl, err := svc.CreatePlatformEndpoint(&sns.CreatePlatformEndpointInput{ 
    PlatformApplicationArn: aws.String(topic), 
    Token: aws.String(n.DeviceToken), // just one device token 
}) 

Envoi du message à point final:

params := &sns.PublishInput{ 
    Message:   aws.String(payload), 
    TargetArn:  aws.String(*pl.EndpointArn), 
    MessageStructure: aws.String("json"), 
} 

Je ne l'ai pas vu un moyen d'envoyer un message push à plusieurs appareils en utilisant une seule requête. C'est possible?

Comme cet exemple pour illustrer:

pl, err := svc.CreatePlatformEndpoint(&sns.CreatePlatformEndpointInput{ 
    PlatformApplicationArn: aws.String(topic), 
    Token: []aws.String{token01, token02, token03}, //array of device tokens 
}) 
+0

Cela semble plus de cas pour tirer plutôt que de pousser. Si vous appuyez sur, vous devez faire une boucle et faire individuellement. – kosa

+1

Vous pouvez abonner chaque point de terminaison à un sujet, puis envoyer le message au sujet, ou simplement faire ce que je fais et force brute envoyer un message par périphérique. – Krum

Répondre

0

Solution: Je résolu la création d'un sujet, inscrivez-vous les dispositifs dans ce sujet et d'envoyer le message push sur le sujet.