Affichage des rapports d'utilisation quotidiens des SMS - Amazon Simple Notification Service

Affichage des rapports d'utilisation quotidiens des SMS

Vous pouvez contrôler vos distributions SMS en vous abonnant à des rapports d'utilisation quotidiens à partir d'Amazon SNS. Pour chaque jour où vous envoyez au moins un SMS, Amazon SNS diffuse un rapport d'utilisation sous forme de fichier CSV au compartiment Amazon S3 spécifié. Il faut compter 24 heures pour que le rapport d'utilisation des SMS soit disponible dans le compartiment S3.

Informations sur le rapport d'utilisation quotidien

Le rapport d'utilisation inclut les informations suivantes pour chaque SMS que vous envoyez à partir de votre compte.

Le rapport n'inclut pas les messages envoyés aux destinataires qui se sont désabonnés.

  • Heure de publication du message (au format UTC)

  • ID de message

  • Numéro de téléphone de destination

  • Type de message

  • Statut de distribution

  • Prix du message (en USD)

  • Référence (un message est fractionné en plusieurs parties s'il est trop long pour constituer un seul message)

  • Nombre total de parties

Note

Si Amazon SNS n'a pas reçu le nombre de parties, nous définissons sa valeur à zéro.

Abonnement à des rapports d'utilisation quotidiens

Pour vous abonner à des rapports d'utilisation quotidiens, vous devez créer un compartiment Amazon S3 avec les autorisations appropriées.

Pour créer un compartiment Amazon S3 pour vos rapports d'utilisation quotidiens

  1. À partir de Compte AWS qui envoie des messages SMS, connectez-vous à laConsole Amazon S3.

  2. Choisissez Créer un compartiment.

  3. Pour Nom du compartiment, nous vous recommandons de saisir un nom unique pour votre compte et votre organisation. Par exemple, utilisez le modèle <my-bucket-prefix>-<account_id>-<org-id>.

    Pour de plus amples informations sur les conventions et les restrictions pour les noms de compartiments, consultez Règles relatives à l'attribution des noms de compartiments dans le Guide de l’utilisateur du service d’Amazon Simple Storage.

  4. Choisissez Create (Créer).

  5. Dans le tableau Tous les compartiments, sélectionnez le compartiment.

  6. Dans l'onglet Autorisations, sélectionnez politique de compartiment.

  7. Dans la fenêtre Éditeur de politique de compartiment, indiquez une politique qui permet au principal du service Amazon SNS d'écrire dans votre compartiment. Pour voir un exemple, consultez Exemple de politique de compartiment.

    Si vous utilisez l'exemple de politique, n'oubliez pas de remplacer my-s3-bucket par le nom de compartiment que vous avez choisi à l'étape 3.

  8. Choisissez Enregistrer.

Pour vous abonner à des rapports d'utilisation quotidiens

  1. Connectez-vous à la console Amazon SNS.

  2. Dans le panneau de navigation, choisissez Messages texte (SMS).

  3. Sur la pageMobile text messaging (SMS) (SMS mobile), dans la section Text messaaging preferences (Préférences de SMS), choisissez Edit (Modifier).

    
                                    Section Préférences de SMS
  4. Sur la page Edit text messaging preferences (Modifier les préférences de SMS) dans la section Details (Détails), spécifiez le Amazon S3 bucket name for usage reports (Nom du compartiment Amazon S3 pour les rapports d'utilisation).

    
                                    Section Détails de la page Modifier les préférences de SMS
  5. Choisissez Enregistrer les modifications.

Exemple de politique de compartiment

La politique suivante permet au principal du service Amazon SNS d'exécuter les actions s3:PutObject, s3:GetBucketLocation et s3:ListBucket.

AWS fournit des outils pour tous les services avec des principaux de service qui ont reçu l'accès aux ressources dans votre compte. Lorsque le principal dans une déclaration de politique d'un compartiment Amazon S3 est un principal de service AWS, vous pouvez utiliser les clés de condition globales aws:SourceArn ou aws:SourceAccount pour vous protéger contre le problème de député confus. Pour limiter la région et le compte à partir desquels le compartiment peut recevoir des rapports d'utilisation quotidiens, utilisez aws:SourceArn comme indiqué dans l'exemple ci-dessous. Si vous ne souhaitez pas limiter les régions qui peuvent générer ces rapports, utilisez aws:SourceAccount pour limiter en fonction du compte qui génère les rapports. Si vous ne connaissez pas l'ARN de la ressource, utilisez aws:SourceAccount.

Utilisez l'exemple suivant qui inclut une protection du député confus lorsque vous créez un compartiment Amazon S3 pour recevoir les rapports quotidiens d'utilisation des SMS d'Amazon SNS.

{ "Version": "2008-10-17", "Statement": [{ "Sid": "AllowPutObject", "Effect": "Allow", "Principal": { "Service": "sns.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::my-s3-bucket/*", "Condition": { "StringEquals": { "aws:SourceAccount": "account_id" }, "ArnLike": { "aws:SourceArn": "arn:aws:sns:region:account_id:*" } } }, { "Sid": "AllowGetBucketLocation", "Effect": "Allow", "Principal": { "Service": "sns.amazonaws.com" }, "Action": "s3:GetBucketLocation", "Resource": "arn:aws:s3:::my-s3-bucket", "Condition": { "StringEquals": { "aws:SourceAccount": "account_id" }, "ArnLike": { "aws:SourceArn": "arn:aws:sns:region:account_id:*" } } }, { "Sid": "AllowListBucket", "Effect": "Allow", "Principal": { "Service": "sns.amazonaws.com" }, "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::my-s3-bucket", "Condition": { "StringEquals": { "aws:SourceAccount": "account_id" }, "ArnLike": { "aws:SourceArn": "arn:aws:sns:region:account_id:*" } } } ] }
Note

Vous pouvez publier des rapports d'utilisation sur des compartiments Amazon S3 appartenant au Compte AWS qui est spécifié dans l'élément Condition de la politique Amazon S3. Pour publier des rapports d'utilisation dans un compartiment Amazon S3 qu'un autre Compte AWS possède, consultez Comment puis-je copier des objets S3 à partir d'un autre Compte AWS?.

Exemple de rapport d'utilisation quotidien

Une fois que vous êtes abonné à des rapports d'utilisation quotidiens, Amazon SNS place chaque jour un fichier CSV avec les données d'utilisation à l'emplacement suivant :

<my-s3-bucket>/SMSUsageReports/<region>/YYYY/MM/DD/00x.csv.gz

Chaque fichier peut contenir jusqu'à 50 000 enregistrements. Si les enregistrements d'une journée dépassent ce quota, Amazon SNS ajoute plusieurs fichiers.

L'illustration suivante présente un exemple de rapport :

PublishTimeUTC,MessageId,DestinationPhoneNumber,MessageType,DeliveryStatus,PriceInUSD,PartNumber,TotalParts 2016-05-10T03:00:29.476Z,96a298ac-1458-4825-a7eb-7330e0720b72,1XXX5550100,Promotional,Message has been accepted by phone carrier,0.90084,0,1 2016-05-10T03:00:29.561Z,1e29d394-d7f4-4dc9-996e-26412032c344,1XXX5550100,Promotional,Message has been accepted by phone carrier,0.34322,0,1 2016-05-10T03:00:30.769Z,98ba941c-afc7-4c51-ba2c-56c6570a6c08,1XXX5550100,Transactional,Message has been accepted by phone carrier,0.27815,0,1