Comment résoudre l'erreur concernant un paramètre non valide que je reçois dans Amazon SNS en réponse à des appels d'API ?

Date de la dernière mise à jour : 23/06/2021

Je reçois un message d'erreur concernant un paramètre non valide dans Amazon Simple Notification Service (Amazon SNS) en réponse à des appels d'API

Brève description

Si vous recevez l'erreur suivante :

InvalidParameter - Error message: Invalid parameter: Attributes Reason: Platform credentials are invalid

Suivez les étapes de la section Résolution des erreurs d'identification de la plateforme.

Si vous recevez l'erreur suivante :

"message": "Invalid parameter: The MessageGroupId parameter is required for FIFO topics" even if the customer has provided MessageGroupId

Suivez les étapes de la section Résolution des erreurs FIFO.

Si vous recevez l'erreur suivante :

Couldn't set text messaging attributes.
Error code: InvalidParameter - Error message: Invalid parameter:

Suivez les étapes de la section Résolution des erreurs de la messagerie texte (SMS).

Si vous recevez l'erreur suivante :

Couldn't delete subscription.
Error code: InvalidParameter - Error message: Invalid parameter: SubscriptionArn Reason: An ARN must have at least 6 elements, not 1

Suivez les étapes de la section Résolution des erreurs de suppression d'abonnement.

Solution

Résolution des erreurs d'identification de la plateforme

Important : avant de suivre les étapes suivantes, vérifiez le type de certificat de fournisseur dans votre compte Apple Developer. Téléchargez ensuite le certificat.

1.    Ouvrez la console Amazon SNS.

2.    Dans le panneau de navigation, sélectionnez Push Notifications (Notifications Push).

3.    Sélectionnez Create platform application (Créer une application de plateforme).

4.    Pour Application name (Nom de l'application), saisissez le nom de l'application.

5.    Pour Push notification platform (Plateforme de notification Push), sélectionnez Apple iOS/VoIP/Mac.

6.    Dans la section Apple Credentials (Informations d'identification Apple), cochez la case Used for development in sandbox (Utilisé pour le développement en environnement de test [sandbox]) si vous utilisez un certificat de type Sandbox (Environnement de test [sandbox]).

Important : vous ne devez pas cocher cette case si vous utilisez un certificat de type Sandbox & Production (Environnement de test [sandbox] et production). Dans le cas contraire, vous recevez une erreur.

7.    Pour Push certificate type (Type de certificat Push), sélectionnez votre type de certificat.

8.    Sélectionnez Choose file (Choisir un fichier), puis sélectionnez le certificat à partir duquel vous souhaitez charger des informations d'identification.

9.    Sélectionnez Create platform application (Créer une application de plateforme).

Résolution des erreurs FIFO

Vérifiez que vous utilisez le kit SDK AWS pour JavaScript dans le navigateur ou le kit SDK AWS pour JavaScript dans Node.js version 2.777.0 ou ultérieure.

Vous pouvez recevoir des erreurs FIFO provenant d'Amazon SNS liées à un MessageGroupID non valide ou à un MessageDeduplicationId non valide, même si les ID sont fournis lors de la demande d'API. Les attributs FIFO d'Amazon SNS sont disponibles uniquement pour les nouvelles versions du kit SDK. Pour plus d'informations, consultez Changelog for AWS SDK for JavaScript.

Résolution des erreurs de la messagerie texte (SMS)

1.    Ouvrez la console Amazon SNS.

2.    Dans le panneau de navigation, sélectionnez Text messaging SMS (Messagerie texte [SMS]).

3.    Pour Text messaging preferences (Préférences de messagerie texte), sélectionnez Edit (Modifier).

4.    Pour Account spend limit – Optional Parameter (Limite de dépenses du compte – Paramètre facultatif), saisissez la valeur numérique 1. Cette valeur par défaut est la limite de dépenses mensuelle en USD. Vous pouvez demander une augmentation de la limite de dépenses du compte si vous souhaitez que la limite mensuelle soit supérieure à 1 USD.

Remarque : par défaut, chaque compte Amazon SNS dispose d'un quota de dépenses à hauteur de 1 USD dans chaque région AWS. Une erreur s'affiche dans la console Amazon SNS lorsque la valeur est supérieure à 1.

5.    Sélectionnez Save changes (Enregistrer les modifications).

Résolution des erreurs de suppression d'abonnement

Cette erreur s'affiche lorsque vous tentez de supprimer un abonnement dont le statut est PendingConfirmation (En attente de confirmation). Pour supprimer un abonnement, l'API Unsubscribe (Désabonnement) d'Amazon SNS est appelée, ce qui nécessite un SubscriptionARN (ARN d'abonnement). Si vous utilisez la console pour supprimer l'abonnement, la console Amazon SNS sélectionne automatiquement le paramètre SubscriptionARN (ARN d'abonnement) dans l'abonnement sélectionné. Pour un abonnement dont le statut est PendingSubscription (En attente d'abonnement), la console n'affiche pas SubscriptionId (ID d'abonnement). Par conséquent, la console utilise PendingConfirmation (En attende de confirmation) comme SubscriptionId (ID d'abonnement). Ensuite, les appels d'API échouent et retournent une erreur.

Pour un abonnement dont le statut est Pending confirmation (En attente de confirmation) :

1.    Ouvrez la console Amazon SNS.

2.    Dans le panneau de navigation, sélectionnez Topics (Rubriques), puis sélectionnez votre rubrique.

3.    Sélectionnez la rubrique possédant l'abonnement dont le statut est Pending Confirmation (En attente de confirmation), puis sélectionnez l'abonnement dont le statut est Pending Confirmation (En attente de confirmation).

4.    Sélectionnez Request confirmation (Demander une confirmation).

Une notification d'abonnement est envoyée au point de terminaison pour confirmer l'abonnement.

5.    Copiez l'URL d'abonnement à partir de la notification. Cette URL doit être similaire à la suivante :

https://sns.us-east-1.amazonaws.com/confirmation.html?TopicArn=arn:aws:sns:your-aws-region:your-account-number:your-topic-name&Token=your-token&Endpoint=your-endpoint

6.    Dans le menu de navigation d'Amazon SNS, sélectionnez Subscriptions (Abonnements), puis sélectionnez votre abonnement.

7.    Sélectionnez Confirm subscription (Confirmer l'abonnement).

8.    Collez l'URL d'abonnement obtenue à l'étape 5 dans la boîte de dialogue, puis sélectionnez Confirm subscription (Confirmer l'abonnement).

9.    Sélectionnez votre abonnement, puis choisissez Delete (Supprimer).

Pour un abonnement dont le statut est Deleted (Supprimé) :

Vérifiez le point de terminaison sur lequel le lien de désabonnement a été choisi. Une fois le désabonnement effectué, le point de terminaison reçoit une autre notification similaire à la suivante :

Your subscription to the topic below has been deactivated:
arn:aws:sns:Your-AWS-Region:Your-Account-Number:Your-Topic-Name

If this was in error or you wish to resubscribe, click or visit the link below:
Resubscribe

Please click on the resubscribe link present in the notification. This will confirm the subscription. On success, please select the specific subscription and click on Delete button.

-ou-

Attendez trois jours pour que l'abonnement soit supprimé. Par défaut, Amazon SNS supprime automatiquement les abonnements dont le statut est PendingConfirmation (En attente de confirmation) sous trois jours. 


Cet article vous a-t-il été utile ?


Besoin d'aide pour une question technique ou de facturation ?