> ## 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.

# Configuration d'application Windows

> Guide complet pour intégrer les notifications push OneSignal dans votre application Universal Windows Platform (UWP) en utilisant le service de notification push Windows (WNS) et l'API REST de OneSignal

# Configuration d'application Windows

## Exigences

Avant de configurer OneSignal pour votre application Windows, assurez-vous d'avoir :

* **Application Universal Windows Platform (UWP)** - OneSignal ne prend actuellement en charge que les applications UWP
* **Inscription d'application Microsoft Store** - Requise pour obtenir le SID de package et la clé secrète
* **Compte OneSignal** - Compte gratuit avec application et paramètres de plateforme configurés

<Info>OneSignal ne prend actuellement pas en charge le SDK Windows App (WinUI 3). Si votre application utilise le SDK Windows App au lieu d'UWP, veuillez contacter `support@onesignal.com` pour des conseils sur les [options de migration](https://learn.microsoft.com/en-us/windows/apps/windows-app-sdk/migrate-to-windows-app-sdk/guides/notifications).</Info>

## Configurer votre application et plateforme OneSignal

### Étape 1 : Configurer votre compte OneSignal

Si votre équipe a déjà un compte OneSignal, [demandez un accès administrateur](./manage-team-members) pour configurer les paramètres de plateforme. Sinon, [créez un compte gratuit](https://onesignal.com) pour commencer.

### Étape 2 : Créer ou configurer votre application OneSignal

OneSignal vous permet de configurer plusieurs plateformes (iOS, Android, Huawei, Amazon, Windows) au sein d'une seule application pour la messagerie multi-plateforme.

#### Créer une nouvelle application

1. Cliquez sur **Nouvelle application/site web** depuis votre tableau de bord
2. Choisissez un nom d'application reconnaissable et un nom d'organisation
3. Sélectionnez **Windows (UWP)** comme plateforme
4. Cliquez sur **Suivant : Configurer votre plateforme**

<Frame caption="Création d'une nouvelle application OneSignal avec la plateforme Windows">
  <img src="https://mintcdn.com/onesignal/tNi1OgLc_p9hiq7_/images/docs/13e619dc5fd638b4d9adf5505ddd645de431dc963dbeeac923462060c030ce7c-Screenshot_2025-04-07_at_3.48.57_PM.png?fit=max&auto=format&n=tNi1OgLc_p9hiq7_&q=85&s=77c331bb0aea78c3f5d96ed065e14d1f" width="2344" height="1544" data-path="images/docs/13e619dc5fd638b4d9adf5505ddd645de431dc963dbeeac923462060c030ce7c-Screenshot_2025-04-07_at_3.48.57_PM.png" />
</Frame>

#### Ajouter une plateforme à une application existante

1. Sélectionnez votre application existante
2. Naviguez vers **Paramètres > Push et intégrés**
3. Cliquez sur **Ajouter une plateforme** et sélectionnez **Windows (UWP)**

<Frame caption="Configuration de votre application OneSignal et sélection de la plateforme Windows">
  <img src="https://mintcdn.com/onesignal/jFWn5xzleD8du3j6/images/docs/5cfafd284e02ae310a7e2a973d58d858e36d59bd54a7c58c3dc5da5ff5946721-Screenshot_2025-04-07_at_3.51.19_PM.png?fit=max&auto=format&n=jFWn5xzleD8du3j6&q=85&s=2059055133014853ce9d5a62fb7c9bbc" width="2428" height="1960" data-path="images/docs/5cfafd284e02ae310a7e2a973d58d858e36d59bd54a7c58c3dc5da5ff5946721-Screenshot_2025-04-07_at_3.51.19_PM.png" />
</Frame>

### Étape 3 : Configurer des plateformes supplémentaires (optionnel)

Si vous construisez une application multi-plateforme, configurez des plateformes supplémentaires maintenant :

* **Android** : [Configurer les identifiants Firebase](./android-firebase-credentials)
* **iOS** : [Jeton p8 (recommandé)](./ios-p8-token-based-connection-to-apns) ou [Certificat p12](./ios-p12-generate-certificates)
* **Amazon** : [Générer une clé API](./generate-an-amazon-api-key)
* **Huawei** : [Autoriser OneSignal](./authorize-onesignal-to-send-huawei-push)

Cliquez sur **Enregistrer et continuer** après avoir saisi les identifiants pour chaque plateforme.

### Étape 4 : Sélectionner le SDK cible

Choisissez **Windows UWP** comme SDK cible et cliquez sur **Enregistrer et continuer**.

<Frame caption="Sélectionnez le SDK Windows UWP pour accéder à la documentation spécifique à la plateforme">
  <img src="https://mintcdn.com/onesignal/tNi1OgLc_p9hiq7_/images/docs/13775481f708ed06086e4f6cfd4892a7e47970b669757212f62b2f508c0d1ab7-Screenshot_2025-04-07_at_3.57.27_PM.png?fit=max&auto=format&n=tNi1OgLc_p9hiq7_&q=85&s=2509168f647aef9dc29e59805d0cec21" width="3162" height="1886" data-path="images/docs/13775481f708ed06086e4f6cfd4892a7e47970b669757212f62b2f508c0d1ab7-Screenshot_2025-04-07_at_3.57.27_PM.png" />
</Frame>

### Étape 5 : Enregistrer votre ID d'application

**Critique :** Copiez et stockez en toute sécurité votre ID d'application OneSignal - vous en aurez besoin pour les appels API et l'inscription des utilisateurs.

<Frame caption="Enregistrez votre ID d'application et invitez les membres de l'équipe qui ont besoin d'accès">
  <img src="https://mintcdn.com/onesignal/YOTSrtBSoqdrJ37A/images/docs/45dc4f796e919a3da95ab0f3cba25be49091fe56c0a97b159dc12dd16702d734-Screenshot_2025-04-07_at_3.59.42_PM.png?fit=max&auto=format&n=YOTSrtBSoqdrJ37A&q=85&s=6c14c2a05be8a4474e22a52aaa7d76da" width="2710" height="1846" data-path="images/docs/45dc4f796e919a3da95ab0f3cba25be49091fe56c0a97b159dc12dd16702d734-Screenshot_2025-04-07_at_3.59.42_PM.png" />
</Frame>

Facultativement, invitez des membres de l'équipe en cliquant sur **Inviter**, puis cliquez sur **Terminé** pour continuer.

## Configuration de la plateforme Windows

### Obtenir les identifiants Microsoft Store

Étant donné que OneSignal utilise le service de notification push Windows (WNS), vous aurez besoin d'identifiants depuis le Microsoft Store :

1. **Publier sur Microsoft Store** - Votre application doit être enregistrée dans le Microsoft Store (même si elle n'est pas disponible publiquement)
2. **Obtenir le SID de package et la clé secrète** - Suivez [le guide détaillé de Microsoft](https://learn.microsoft.com/en-us/azure/notification-hubs/notification-hubs-windows-store-dotnet-get-started-wns-push-notification#create-an-app-in-windows-store) pour récupérer ces identifiants
3. **Configurer la plateforme OneSignal** :
   * Naviguez vers **Paramètres > Windows (UWP)** dans votre tableau de bord OneSignal
   * Collez votre SID de package et votre clé secrète
   * Cliquez sur **Enregistrer** pour activer la plateforme

<Frame caption="Configurez les identifiants de la plateforme Windows dans le tableau de bord OneSignal">
  <img src="https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/b83d13b-Screenshot_2023-03-21_at_12.02.58_PM.png?fit=max&auto=format&n=56ctKxZSV4m5VEkn&q=85&s=aac1ef94751db6f307284a86a455b6cf" width="1842" height="940" data-path="images/docs/b83d13b-Screenshot_2023-03-21_at_12.02.58_PM.png" />
</Frame>

> **Attention :** Le SID de package et la clé secrète ne sont disponibles qu'après l'enregistrement de votre application auprès du Microsoft Store. Vous ne pouvez pas tester les notifications push localement sans ces identifiants.

## Intégration du SDK

### Comprendre l'architecture

OneSignal ne fournit pas de SDK UWP dédié. Au lieu de cela, vous intégrerez en utilisant :

1. **Service de notification push Windows (WNS)** - Service push natif de Microsoft
2. **API REST OneSignal** - Pour la gestion des utilisateurs et l'envoi de messages
3. **URI de canal de notification** - Agit comme le jeton d'appareil pour les notifications push

Pour une compréhension complète de WNS, consultez [la documentation WNS de Microsoft](https://docs.microsoft.com/en-us/windows/uwp/design/shell/tiles-and-notifications/windows-push-notification-services--wns--overview).

### Inscrire les utilisateurs aux notifications push

#### Étape 1 : Demander un canal de notification

Suivez le guide de Microsoft pour [créer un canal de notification](https://learn.microsoft.com/en-us/windows/apps/design/shell/tiles-and-notifications/request-create-save-notification-channel). L'URI de canal retourné par WNS sert de jeton d'appareil.

```csharp theme={null}
// Exemple : Obtention de l'URI du canal de notification
var channel = await PushNotificationChannelManager.CreatePushNotificationChannelForApplicationAsync();
string channelUri = channel.Uri; // Ceci est votre jeton pour OneSignal
```

#### Étape 2 : Créer un enregistrement utilisateur OneSignal

Appelez l'API [Create user](/reference/create-user) de OneSignal pour enregistrer l'appareil :

**Paramètres requis :**

* `subscription.type` : `"WindowsPush"`
* `subscription.token` : L'URI du canal de l'étape 1

**Paramètres recommandés :**

* `identity.external_id` : Identifiant unique pour l'utilisateur (par ex., ID utilisateur de votre système)
* `properties` : Toutes propriétés utilisateur personnalisées pour le ciblage

```json theme={null}
{
  "identity": {
    "external_id": "your-user-id-123"
  },
  "subscriptions": [
    {
      "type": "WindowsPush",
      "token": "https://cloud.notify.windows.com/?token=..."
    }
  ],
  "properties": {
    "tags": {
      "user_type": "premium",
      "app_version": "1.2.0"
    }
  }
}
```

> **Attention :** Les URI de canal peuvent expirer et changer. Implémentez une logique pour actualiser l'URI de canal périodiquement et mettre à jour l'enregistrement utilisateur OneSignal lorsqu'il change.

### Gérer les changements d'URI de canal

Les URI de canal WNS peuvent expirer. Implémentez l'événement `PushNotificationReceived` pour détecter quand vous devez actualiser :

```csharp theme={null}
channel.PushNotificationReceived += OnPushNotificationReceived;

// Vérifier si l'URI du canal a changé
if (channel.Uri != storedChannelUri) {
    // Mettre à jour l'enregistrement utilisateur OneSignal avec le nouvel URI
    await UpdateOneSignalUser(channel.Uri);
}
```

## Envoi de notifications push

### Utilisation du tableau de bord OneSignal

1. Naviguez vers **Messages > Push** dans votre tableau de bord OneSignal
2. Créez une nouvelle notification push
3. Sélectionnez votre plateforme Windows
4. Configurez le contenu de votre message et le ciblage
5. Envoyez immédiatement ou planifiez pour plus tard

### Utilisation de l'API OneSignal

Envoyez des notifications par programmation en utilisant l'API [Create notification](/reference/create-message) :

```json theme={null}
{
  "app_id": "your-onesignal-app-id",
  "contents": {"en": "Your notification message"},
  "headings": {"en": "Notification Title"},
  "include_external_user_ids": ["your-user-id-123"],
  "channel_for_external_user_ids": "push"
}
```

Pour des options de messagerie détaillées et un ciblage avancé, consultez [Envoi de messages push](./push).

## Étapes suivantes et meilleures pratiques

### Tester votre intégration

1. **Tester la création de canal de notification** - Assurez-vous que votre application crée et maintient avec succès un canal WNS
2. **Vérifier l'inscription des utilisateurs** - Confirmez que les utilisateurs sont correctement enregistrés dans votre tableau de bord OneSignal
3. **Envoyer des notifications de test** - Utilisez le tableau de bord OneSignal pour envoyer des messages de test
4. **Gérer les événements de notification** - Implémentez une gestion appropriée pour les événements de notification reçue, ouverte et rejetée

### Problèmes courants et solutions

**L'URI de canal ne fonctionne pas**

* Vérifiez que votre SID de package et votre clé secrète sont correctement configurés
* Assurez-vous que votre application est correctement enregistrée auprès du Microsoft Store
* Vérifiez que l'URI de canal n'a pas expiré

**Les utilisateurs ne reçoivent pas de notifications**

* Confirmez que l'enregistrement utilisateur OneSignal a été créé avec succès
* Vérifiez que la plateforme Windows est correctement configurée dans OneSignal
* Vérifiez que les notifications ne sont pas bloquées par les paramètres de notification Windows

**Problèmes d'intégration de l'API**

* Validez que votre ID d'application OneSignal est correct
* Assurez-vous que vous utilisez les bons points de terminaison API et l'authentification
* Examinez les codes de réponse de l'API et les messages d'erreur pour le dépannage

### Considérations de production

* Implémentez une gestion appropriée des erreurs pour tous les appels API OneSignal
* Configurez la surveillance des échecs d'actualisation de l'URI de canal
* Envisagez d'implémenter la mise en file d'attente hors ligne pour les appels API pendant les problèmes réseau
* Planifiez la mise à l'échelle de l'inscription des utilisateurs pendant les périodes de forte utilisation de l'application

Pour une assistance supplémentaire et des conseils d'implémentation avancés, contactez le support OneSignal ou explorez notre [documentation API complète](/reference/rest-api-overview).
