Classe NowPushService : Android

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 2 minutes de lecture
  • La classe NowPushService fournit des fonctions qui activent l’interaction avec le service de notification push.

    Tableau 1. Propriétés
    Nom Description
    configuration Configuration du service à associer au service.

    Type de données : NowServiceConfiguration

    NowPushService : handlePush(remoteMessage : RemoteMessage, successCallback : Consumer<NowPushPayload>, errorCallback : Consumer<Throwable>)

    Traite une demande de notification push.

    Remarque :
    Actuellement, le seul type de notification push implémenté est NowPushVirtualAgent. Tout autre type de notification push transmis renvoie un objet NotSupportedPushError .
    Tableau 2. Paramètres
    Nom Type Description
    Message à distance Message à distance Notification telle que reçue par com.google.firebase.messaging.FirebaseMessagingService.onMessageReceived. Pour plus d’informations, voir Recevoir des messages dans une application Android.
    Rappel de réussite Consommateur <NowPushPayload> Rappel pour renvoyer le traitement NowPushPayload à.
    Rappel d’erreur Consommateur <jetable> Rappel pour renvoyer l’erreur levée. Si l’erreur NotSupportedPushError est générée, le type de notification n’est pas pris en charge par le Kit de développement logiciel (SDK) mobile et doit être traitée en dehors du cadre de travail du Kit de développement logiciel (SDK) mobile.
    Tableau 3. Renvoie
    Type Description
    Aucun

    Cet exemple montre comment surcharger onMessageReceived() et transmettre le RemoteMessage via à NowPushService. Si NowPushService reconnaît le type de notification, il traite la demande et renvoie l’objet de notification que l’application doit gérer. Sinon, il lève la valeur NotSupportedPushError.

    override fun onMessageReceived(remodeeMessage: RemoteMessage){
      pushService.handlePush(remoteMessage, { push ->
        when (push) {
          is NowPushVirtualAgent → handleVirtualAgentPush(push)
        }, { error ->
            Log.e(TAG, "Unknown push", error)
            handleAppPushNotification(remoteMessage)
        })
    }

    NowPushService : registerPushToken(pushToken : chaîne, pushApp : chaîne, successCallback : runnable, errorcallback : Consumer<Throwable>)

    Enregistre un jeton unique Firebase avec l’instance ServiceNow utilisée pour identifier les notifications push pour l’appareil actuel Android et l’application spécifiée.

    Pour que l’instance génère des notificationsAndroid, l’appareil ServiceNow reçoit des notifications de l’application, ce jeton doit être enregistré.

    Tableau 4. Paramètres
    Nom Type Description
    pushToken (en anglais seulement) Chaîne Firebase Jeton récupéré par com.google.firebase.messaging.FirebaseMessaging.getToken ou com.google.firebase.messaging.FirebaseMessagingService.onNewToken.
    application push Chaîne Nom de l’application push tel que spécifié dans la table Application push sur l’instance associée ServiceNow .
    Rappel de réussite Exécutable Rappel exécuté lorsque l’enregistrement du jeton est réussi.
    errorCallback (en anglais seulement) Consommateur <jetable> Rappel exécuté lorsque l’enregistrement du jeton échoue.
    Tableau 5. Renvoie
    Type Description
    Aucun

    Cet exemple enregistre un jeton push pour l’appareil actuel Android et l’application « PushAppName ».

    FirebaseMessaging.getInstance().token.addOnCompleteListener { task ->
      val token = task.result
    
      if (!task.isSuccessful || token == null) {
        throw Exception("Unable to fetch token"))
      }
    
      pushService.registerPushToken(token, "PushAppName", {
        Log.v(TAG, "Successfully registered push token")
      }, { e ->
        Log.e(TAG, "Error registering push", e)
      })
    }

    NowPushService : unregisterPushToken(pushToken : chaîne, pushApp : chaîne, successCallback : exécutable, errorCallback : Consumer<Throwable>)

    Annule l’inscription du jeton push spécifié Firebase auprès de l’instance associée ServiceNow .

    Tableau 6. Paramètres
    Nom Type Description
    pushToken (en anglais seulement) Chaîne Firebase jeton pour annuler l’inscription. Récupéré par com.google.firebase.messaging.FirebaseMessaging.getToken ou com.google.firebase.messaging.FirebaseMessagingService.onNewToken.
    application push Chaîne Nom de l’application push associée au jeton à désinscrire. Ces informations sont stockées dans la table Application push de l’instance associée ServiceNow .
    Rappel de réussite Exécutable Rappel exécuté lorsque l’annulation de l’inscription du jeton est réussie.
    erro rCallback Consommateur <jetable> Rappel exécuté lorsque la désinscription du jeton échoue.
    Tableau 7. Renvoie
    Type Description
    Aucun

    Cet exemple de code montre comment annuler l’inscription d’un jeton push, par exemple lorsque l’utilisateur se déconnecte de l’application.

    pushService.unregisterPushtoken(token, "PushAppName", {
      Log.v(TAG, "Successfully unregistered push token")
    },  { e ->
      Log.e(TAG, "Error unregistering push", e)
    })