> ## Documentation Index
> Fetch the complete documentation index at: https://documentation.onesignal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SingleStore

> Synchronisez les événements personnalisés de SingleStore vers OneSignal pour déclencher des parcours automatisés et des campagnes de messagerie personnalisées basées sur le comportement des utilisateurs.

export const DATA_TYPE_0 = "event data"

export const PLATFORM_0 = "SingleStore"

export const COLUMN_HEADER_0 = "SingleStore Column"

export const PROPERTIES_DESCRIPTION_0 = "Event metadata as JSON"

## Aperçu

L'intégration OneSignal + SingleStore permet la synchronisation des événements personnalisés de votre base de données SingleStore vers OneSignal pour déclencher des campagnes de messagerie automatisées et des parcours basés sur le comportement des utilisateurs.

SingleStore est une base de données SQL distribuée conçue pour l'analytique en temps réel et les applications haute performance.

***

## Prérequis

* Accès aux [Event Streams](/docs/en/event-streams) pour les événements de message sortants (Les limitations de forfait et les dépassements s'appliquent)
* Accès aux [Événements personnalisés](/docs/en/custom-events) pour la synchronisation des événements entrants (Les limitations de forfait et les dépassements s'appliquent)
* [Forfait de compte mis à jour](https://onesignal.com/pricing) (non disponible sur les applications gratuites)

### SingleStore

* **SingleStoreDB Cloud** ou **SingleStoreDB v7.1+**
* **Utilisateur de base de données** avec les permissions appropriées
* **Tables d'événements** contenant des données comportementales structurées
* **Connectivité réseau** de OneSignal vers votre cluster SingleStore

***

## Configuration

<Steps>
  <Step title="Créer un utilisateur dédié pour OneSignal">
    Créez un compte utilisateur dédié avec un mot de passe fort et unique :

    ```sql theme={null}
    -- Create census user with the ability to sign in with a password
    CREATE USER CENSUS IDENTIFIED BY '<strong-unique-password>';
    ```
  </Step>

  <Step title="Accorder les permissions aux données d'événements">
    Fournissez un accès en lecture seule aux schémas contenant vos données d'événements :

    ```sql theme={null}
    -- Grant read-only access to schema with event data
    GRANT SELECT ON analytics.* TO CENSUS;

    -- Repeat for additional schemas if needed
    GRANT SELECT ON events.* TO CENSUS;
    ```

    <Info>
      Si vous avez plusieurs schémas contenant des données d'événements, répétez l'instruction `GRANT SELECT` pour chaque schéma.
    </Info>
  </Step>

  <Step title="Se connecter à OneSignal">
    Dans OneSignal, allez dans **Data > Integrations** et cliquez sur **Add Integration**.

    Sélectionnez **SingleStore** et fournissez les détails de connexion suivants :

    * **Host:** Votre point de terminaison de cluster SingleStore
    * **Port:** 3306 (par défaut)
    * **Database:** Votre nom de base de données
    * **Username:** `CENSUS`
    * **Password:** Le mot de passe de l'étape 1
  </Step>
</Steps>

***

### Mappage des données d'événement

Mappez vos {DATA_TYPE_0} {PLATFORM_0} au format des événements personnalisés de OneSignal :

| Champ OneSignal | {COLUMN_HEADER_0} | Description                     | Requis |
| --------------- | ----------------- | ------------------------------- | ------ |
| `name`          | `event_name`      | Identifiant de l'événement      | Oui    |
| `external_id`   | `user_id`         | Identifiant de l'utilisateur    | Oui    |
| `timestamp`     | `event_timestamp` | Quand l'événement s'est produit | Non    |
| `properties`    | `event_data`      | {PROPERTIES_DESCRIPTION_0}      | Non    |

### Exemple de schéma de table d'événements

```sql theme={null}
-- Example SingleStore event table
CREATE TABLE analytics.user_events (
    event_id BIGINT AUTO_INCREMENT PRIMARY KEY,
    event_name VARCHAR(100) NOT NULL,
    user_id VARCHAR(255) NOT NULL,
    event_timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    event_data JSON,
    session_id VARCHAR(255),
    device_type VARCHAR(50)
);
```

### Mode de requête SQL

Écrivez des requêtes SQL personnalisées pour transformer vos données d'événements :

```sql theme={null}
-- Example: Recent high-value events
SELECT
    event_name,
    user_id,
    event_timestamp,
    event_data
FROM analytics.user_events
WHERE event_timestamp >= DATE_SUB(NOW(), INTERVAL 7 DAY)
    AND JSON_EXTRACT_STRING(event_data, 'value') > '100'
ORDER BY event_timestamp DESC;
```

***

## Configuration réseau avancée

OneSignal peut se connecter avec succès aux instances SingleStore qui utilisent des contrôles de réseau avancés, notamment des contraintes de région et des listes d'autorisation d'adresses IP.

Pour plus d'informations sur la configuration de l'accès réseau, contactez votre administrateur SingleStore ou le support OneSignal.

***

## Limitations

* Les requêtes d'analytique en temps réel peuvent impacter les performances du cluster pendant les périodes de trafic élevé
* Les opérations JSON doivent être optimisées pour l'exécution distribuée

***

## FAQ

### Puis-je me connecter à plusieurs schémas SingleStore ?

Oui, vous pouvez accorder à l'utilisateur CENSUS l'accès à plusieurs schémas en exécutant l'instruction `GRANT SELECT` pour chaque schéma contenant des données d'événements.

### OneSignal prend-il en charge SingleStore Cloud ?

Oui, OneSignal prend en charge à la fois SingleStoreDB Cloud et les installations SingleStoreDB v7.1+ sur site.
