Passer à la navigation principale
Retour aux plugins
@capgo/capacitor-notifications
Tutoriel
@capgo/capacitor-notifications

Notifications

Envoyez des notifications push natives iOS et Android à partir de Capgo avec recherche d'utilisateur, badges, statistiques et vérifications de mise à jour silencieuse

Guide

Tutoriel sur les notifications

Utiliser @capgo/capacitor-notifications

Envoyer des notifications push natives iOS et Android à partir de Capgo avec recherche d'utilisateur, badges, suivi en avant-plan/ouvert, rappels en arrière-plan et vérifications silencieuses de mise à jour en direct Capgo.

Le plugin est conçu pour le pipeline de notification Capgo. Capgo stocke les métadonnées de la plateforme et les données de contrôle de campagne dans Postgres, tandis que l'état actif des appareils et les événements de livraison sont écrits dans l'Cloudflare Engine d'analyse.

Installer

Utilisez le Capgo CLI pour un guide de configuration :

npx @capgo/cli@latest notifications setup com.example.app

Installation manuelle :

npm install @capgo/capacitor-notifications @capgo/capacitor-updater
npx cap sync

Configurer

import { CapgoNotifications } from '@capgo/capacitor-notifications'

await CapgoNotifications.configure({
  appId: 'com.example.app',
  autoUpdater: true,
  updateInstallMode: 'next',
})

Inscrire un utilisateur signé

Mint identityProof à partir de votre backend avec POST /notifications/recipients/proofpuis inscrire le dispositif après que votre connexion réussit.

await CapgoNotifications.register({
  externalId: 'customer-user-123',
  identityProof,
  tags: ['paid'],
  attributes: { plan: 'team' },
  consent: true,
})

Écouter les événements

await CapgoNotifications.addListener('notificationReceived', (notification) => {
  console.log('Received', notification)
})

await CapgoNotifications.addListener('notificationOpened', (event) => {
  console.log('Opened', event.notification.id)
})

await CapgoNotifications.addListener('backgroundNotification', async (event) => {
  try {
    console.log('Background payload', event.notification.data)
  } finally {
    await event.finish()
  }
})

Configuration iOS

Activer Notifications Push et Modes d'arrière-plan > Notifications à distance dans Xcode.

Transmettre les notifications à distance depuis ios/App/App/AppDelegate.swift:

func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable: Any], fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) {
    NotificationCenter.default.post(name: Notification.Name("CapgoNotificationsRemoteNotification"), object: userInfo)
    completionHandler(.newData)
}

Configuration Android

Exécuter npx cap sync androidConfigurez les informations de plateforme Android dans Capgo, demandez la permission de notification sur Android 13+ et testez sur un appareil ou un émulateur avec Google Play services.

Liste de vérification de débogage

  • Exécuter npx @capgo/cli@latest notifications setup com.example.app à partir du dossier qui contient capacitor.config.*.
  • Recherchez le destinataire dans Capgo par l'ID client externe.
  • Confirmez que l'appareil a la plateforme android ou ios et la permission est accordée.
  • ajoutez des écouteurs temporaires pour registrationChanged, notificationReceived, notificationOpened, et backgroundNotification.
  • Envoyez une notification de test à partir de la table de bord.
  • Vérifiez les statistiques pour les événements en attente, envoyés, reçus et ouverts.
  • Pour les vérifications de mise à jour silencieuses, vérifiez @capgo/capacitor-updater est installé et autoUpdater est activé.

Référence complète

Continuez à partir de l'utilisation de @capgo/capacitor-notifications

Si vous utilisez L'utilisation de @capgo/capacitor-notifications pour planifier le messagerie de poussée native, connectez-l’avec @capgo/capacitor-notifications pour les détails d'implémentation, Débogage pour le dépannage, @capgo/capacitor-updater pour les contrôles de mise à jour silencieuses, et Capgo Répertoire de plugins pour d'autres plugins natives.