Saltare al contenuto principale
Indietro ai plugin
@capgo/capacitor-notifications
Tutorial
@capgo/capacitor-notifications

Notifiche

Invia notifiche push native per iOS e Android da Capgo con ricerca utente, badge, statistiche e controlli di aggiornamento silenzioso

Guida

Tutorial sulle Notifiche

Utilizzo di @capgo/capacitor-notifications

Inviare notifiche push native iOS e Android da Capgo con ricerca utente, badge, tracciamento aperto/foreground, callback di background e controlli di aggiornamento Capgo live in silenzio.

Il plugin è costruito per il flusso di notifiche Capgo. Capgo memorizza i metadati delle credenziali delle piattaforme e i dati di controllo delle campagne in Postgres, mentre lo stato attivo dei dispositivi e gli eventi di consegna sono scritti nel Cloudflare Analytics Engine.

Installa

Questo pacchetto è attualmente in anteprima privata. Capgo deve abilitare l'accesso al pacchetto per il tuo account npm prima che l'installazione funzioni.

Utilizza il Capgo CLI per un setup guidato:

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

Installo manualmente:

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

Configura

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

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

Registra un utente con firma

Mint identityProof dalla tua backend con POST /notifications/recipients/proofpoi registra il dispositivo dopo che il tuo login ha avuto successo.

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

Ascolta gli eventi

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()
  }
})

Configurazione iOS

Abilita Notifiche Push e Modalità di background > Notifiche remote in Xcode.

Invia notifiche remote da 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)
}

Configurazione Android

Esegui npx cap sync androidConfigura le credenziali della piattaforma Android in Capgo, richiedi la autorizzazione per le notifiche su Android 13+ e testa su un dispositivo o emulatore con Google Play services.

Elenco di controllo di debug

  • Esegui npx @capgo/cli@latest notifications setup com.example.app dalla cartella che contiene capacitor.config.*.
  • Cerca il destinatario in Capgo tramite ID cliente esterno.
  • Conferma che il dispositivo ha la piattaforma android o ios e l'autorizzazione è stata concessa.
  • Aggiungi ascoltatori temporanei per registrationChanged, notificationReceived, notificationOpenedInviare una notifica di test dal pannello di controllo. backgroundNotification.
  • Verifica le statistiche per gli eventi in coda, inviati, ricevuti e aperti.
  • Verifica per gli aggiornamenti silenziosi, assicurati che
  • è installato e @capgo/capacitor-updater è abilitato. autoUpdater Riferimento completo

Documentazione: /docs/plugins/notifications/

Keep going from Using @capgo/capacitor-notifications

Se stai utilizzando Utilizzando @capgo/capacitor-notifications per pianificare la messaggistica di push nativa, connettilo con @capgo/capacitor-notifications per i dettagli di implementazione, Debugging per il troubleshooting, @capgo/capacitor-updater per controlli di aggiornamento silenziosi, e Capgo Directory dei plugin nativi per altri plugin nativi.