Passer au contenu principal

Aperçu

L’intégration OneSignal + Amazon S3 permet la synchronisation automatique des événements personnalisés depuis les fichiers CSV stockés dans votre compartiment S3 directement vers l’API Custom Events de OneSignal. Cela vous permet de déclencher des parcours automatisés et des campagnes de messagerie personnalisées basées sur le comportement réel des utilisateurs stocké dans votre entrepôt de données. Vous pouvez synchroniser des événements tels que des achats, des vues de produits, des changements d’abonnement, ou toute action utilisateur personnalisée pour déclencher automatiquement des séquences d’intégration, des campagnes de réengagement, des messages transactionnels et des promotions ciblées sur les notifications push, les e-mails, les messages intégrés et les SMS.

Prérequis

OneSignal

  • Fonctionnalité Événements personnalisés activée (actuellement en bêta - contactez support@onesignal.com)

Amazon S3

  • Compte AWS avec accès au compartiment S3
  • Permissions IAM pour créer des rôles et des politiques
  • Fichiers CSV avec des données d’événements formatées selon les exigences OneSignal
  • Fichiers délimités par des virgules encodés UTF-8 avec l’extension .csv

Configuration

Préparer vos fichiers CSV d’événements

Votre compartiment S3 doit contenir des fichiers CSV correctement formatés avec des données d’événements que OneSignal peut traiter : Exigences de format de fichier :
  • CSV non compressé, encodé UTF-8, délimité par des virgules avec l’extension de fichier .csv
  • Inclure une ligne d’en-tête (OneSignal utilisera les en-têtes comme noms de champs d’événements)
  • Représenter les valeurs nulles avec la chaîne #N/A
  • Les valeurs contenant des virgules doivent être entourées de guillemets doubles
  • Les valeurs contenant des guillemets doubles doivent être échappées avec un second guillemet double
Structure du fichier : OneSignal traite chaque chemin de dossier comme une source de données unique et considère le nom de fichier comme une version des données dans ce chemin. Lors du traitement des événements, OneSignal sélectionnera toujours les données les plus récentes dans le chemin de dossier sélectionné en fonction de l’horodatage. Lors de la mise à jour des données d’événements dans S3, vous pouvez soit remplacer le fichier existant, soit ajouter une version plus récente. OneSignal traitera les nouveaux événements et les enverra à l’API Custom Events.

Créer un rôle IAM pour OneSignal

OneSignal utilise l’authentification basée sur les rôles pour se connecter à votre compartiment S3, en suivant les meilleures pratiques de sécurité AWS.
1

Créer le rôle IAM

Créez un rôle IAM dans votre compte AWS qui fournit un accès en lecture seule à votre compartiment S3 pour l’ID de compte AWS de OneSignal (341876425553) :
aws iam create-role \
  --role-name OneSignalS3DataImport \
  --assume-role-policy-document '{
    "Version": "2012-10-17",
    "Statement": [{
      "Effect": "Allow",
      "Principal": {"AWS": "arn:aws:iam::341876425553:root"},
      "Action": "sts:AssumeRole"
    }]
  }'
Enregistrez l’ARN de rôle retourné car vous en aurez besoin pour la configuration OneSignal.
2

Accorder les permissions S3

Accordez à votre rôle nouvellement créé un accès en lecture seule à votre compartiment S3 :
aws iam put-role-policy \
  --role-name OneSignalS3DataImport \
  --policy-name OneSignalS3Access \
  --policy-document '{
    "Version": "2012-10-17",
    "Statement": [{
      "Effect": "Allow",
      "Action": [
        "s3:ListBucket",
        "s3:GetObject",
        "s3:GetObjectVersion",
        "s3:GetBucketLocation"
      ],
      "Resource": [
        "arn:aws:s3:::YOUR_BUCKET_NAME",
        "arn:aws:s3:::YOUR_BUCKET_NAME/*"
      ]
    }]
  }'
Remplacez YOUR_BUCKET_NAME par le nom réel de votre compartiment S3.

Configurer la connexion OneSignal S3

1

Accéder aux sources de données

Dans OneSignal, allez dans Data > Integrations et cliquez sur Add Integration.
2

Sélectionner Amazon S3

Choisissez Amazon S3 dans la liste des intégrations disponibles.
3

Saisir les détails de connexion

Fournissez les informations suivantes :
  • Région : La région de votre compartiment S3
  • Nom du compartiment : Le nom de votre compartiment S3
  • ARN de rôle : L’ARN du rôle IAM de l’étape 1
  • Préfixe : Le chemin du dossier contenant vos fichiers CSV d’événements (optionnel)
4

Terminer l'échange de sécurité

OneSignal générera un ID externe unique et l’affichera sur l’écran suivant. Mettez à jour votre rôle IAM pour exiger cet ID externe :
aws iam update-assume-role-policy \
  --role-name OneSignalS3DataImport \
  --policy-document '{
    "Version": "2012-10-17",
    "Statement": [{
      "Effect": "Allow",
      "Principal": {"AWS": "arn:aws:iam::341876425553:root"},
      "Action": "sts:AssumeRole",
      "Condition": {"StringEquals": {"sts:ExternalId": "GENERATED_EXTERNAL_ID"}}
    }]
  }'
Remplacez GENERATED_EXTERNAL_ID par l’ID externe affiché dans le tableau de bord OneSignal.
5

Tester la connexion

Cliquez sur Tester la connexion dans OneSignal pour vérifier que la configuration fonctionne correctement.

Modes de traitement CSV

OneSignal prend en charge deux modes lors de la lecture des fichiers CSV d’événements depuis votre compartiment S3 :

Plus récent (par défaut)

OneSignal traite uniquement le fichier le plus récent dans le préfixe S3 et le groupe de dossiers configurés. Le fichier unique est interprété comme l’ensemble complet d’événements à traiter. Ce mode fonctionne bien lorsque :
  • Un seul fichier contient tous les événements pour une période donnée
  • De nouvelles versions de fichiers sont ajoutées au fil du temps avec des données d’événements mises à jour
  • Vous souhaitez traiter un lot complet d’événements en une seule fois

Fusionner tout

OneSignal prend chaque fichier dans le préfixe S3 et le groupe de dossiers configurés et les fusionne en un seul jeu de données avant de traiter les événements. Ce mode est utile lorsque :
  • Vos données d’événements ont été réparties dans plusieurs fichiers
  • Vous souhaitez traiter des événements provenant de plusieurs sources
  • Les fichiers sont ajoutés de manière incrémentielle avec de nouveaux événements
En mode Fusionner tout, tous les fichiers CSV doivent avoir exactement les mêmes noms de colonnes et le même ordre.

Mappage des données d’événements

Une fois connecté, vous devrez mapper vos colonnes CSV aux champs d’événements personnalisés OneSignal :
1

Examiner les champs détectés

OneSignal détectera automatiquement les colonnes de vos fichiers CSV d’événements et suggérera des mappages.
2

Mapper les champs d'événements requis

Mappez les champs requis pour les événements personnalisés :
  • Nom de l’événement (requis) : Le nom/type de l’événement
  • ID externe (requis) : ID utilisateur externe
  • Horodatage de l’événement (optionnel) : Quand l’événement s’est produit. Sinon, supposé être maintenant.
3

Configurer les paramètres de synchronisation

Définissez votre fréquence de traitement des événements et vos préférences de livraison.

Mappage des données d’événement

Mappez vos au format des événements personnalisés de OneSignal :
Champ OneSignalDescriptionRequis
nameevent_nameIdentifiant de l’événementOui
external_iduser_idIdentifiant de l’utilisateurOui
timestampevent_timestampQuand l’événement s’est produitNon
propertiesevent_dataNon

Limitations

  • Requêtes SQL : Les sources S3 ne prennent pas en charge les requêtes SQL ou les transformations avancées sur les données d’événements
  • Taille du fichier : Les fichiers CSV individuels ne doivent pas dépasser 1 Go
  • Fréquence de mise à jour : L’intervalle de synchronisation minimum est de 15 minutes
  • Types de fichiers : Seuls les fichiers CSV sont pris en charge (pas de JSON, Parquet, etc.)

FAQ

Que se passe-t-il si mon fichier CSV contient des erreurs de formatage ?

OneSignal ignorera les lignes mal formées et fournira des journaux d’erreurs détaillés dans le tableau de bord des intégrations. Les problèmes courants incluent des colonnes requises manquantes, des formats d’horodatage invalides et des nombres de colonnes incohérents.

À quelle fréquence OneSignal vérifie-t-il les nouveaux fichiers ?

OneSignal vérifie votre compartiment S3 en fonction de votre fréquence de synchronisation configurée, avec un intervalle minimum de 15 minutes.

Besoin d’aide ?

Contactez notre équipe d’assistance à support@onesignal.com ou utilisez le chat intégré pour obtenir de l’aide avec la configuration de votre intégration S3.