Interface NowChatSdkCallbacks : Android

  • Rversion finale: Zurich
  • Mis à jour 31 juil. 2025
  • 3 minutes de lecture
  • L’interface NowChatSdkCallbacks fournit des fonctions qui permettent aux applications hôtes de configurer ou de gérer des actions à partir du NowChatSDK.

    Tableau 1. Propriétés
    Nom Type Description
    isFileCollectionBlocked Booléen Marqueur indiquant si l’application hôte doit empêcher NowChat d’ouvrir le sélecteur de fichier.
    Valeurs valides :
    • true : empêche le sélecteur de fichiers de s’ouvrir.
    • false : permet au sélecteur de fichier de s’ouvrir.
    isGalleryCollectionBlocked Booléen Marqueur indiquant si l’application hôte doit empêcher NowChat d’ouvrir la galerie de photos.
    Valeurs valides :
    • true : Empêche l’ouverture de la galerie de photos.
    • faux : Autoriser l’ouverture de la galerie de photos.
    isLocationCollectionBlocked Booléen Marqueur indiquant si l’application hôte doit empêcher NowChat d’accéder au positionnement de géolocalisation.
    Valeurs valides :
    • true : empêche l’accès au positionnement de géolocalisation.
    • faux : Ne pas empêcher l’accès au positionnement de géolocalisation.
    isPhotoCollection bloqué Booléen Marqueur indiquant si l’application hôte doit empêcher NowChat d’accéder à la caméra.
    Valeurs valides :
    • true : empêcher l’accès à la caméra.
    • faux : Ne pas empêcher l’accès à la caméra.

    NowChatSdkCallbacks : didEndSessionWithId(sessionId : chaîne)

    Appelé lorsque l’écran de messagerie instantanée est fermé et que la session de messagerie instantanée se termine.

    Remarque :
    Vous devez définir la fonctionnalité souhaitée pour ce rappel en remplaçant la fonction, car l’implémentation par défaut écrit simplement le message « La session de messagerie instantanée $sessionId terminée » dans le journal.
    Tableau 2. Paramètres
    Nom Type Description
    sessionId Chaîne Sys_id de la session qui s’est terminée.

    Table : Session de conversation [sys_cs_session]

    Tableau 3. Renvoie
    Type Description
    Aucun

    L’exemple de code suivant montre où placer votre code pour remplacer la fonctionnalité par défaut.

    class SampleNowChatSDKCallbacks : NowChatSdkCallbacks {
      override fun didEndSessionWithId(sessionId: String) {
        Log.i("NowChat", "Chat session $sessionId ended.")
      }
    
    //override other methods
    
    }

    NowChatSdkCallbacks : loadUri(uri : Uri, contexte : Contexte)

    Gère l’URI spécifié, par exemple son ouverture dans une vue Web, un onglet personnalisé ou un navigateur externe.

    Tableau 4. Paramètres
    Nom Type Description
    uri URI URI à ouvrir.
    contexte Contexte Contexte d’application.
    Tableau 5. Renvoie
    Type Description
    Aucun

    L’exemple de code suivant montre comment appeler cette fonction.

    class SampleNowChatSDKCallbacks : NowChatSdkCallbacks {
      override fun loadUri(uri: Uri, context: Context) {
    
        // Open the uri in a webview
        val webview = WebView(context)
        webview.loadUrl(uri.toString())
      }
    
      // Override other methods
    }

    NowChatSdkCallbacks : onExit(exitCode : NowChatExitCode)

    Définit le code de résultat à renvoyer lorsque Now Chat est quitté.

    Ce rappel est appelé lorsque la messagerie instantanée en plein écran est fermée et que l’utilisateur est renvoyé à l’application hôte.

    Tableau 6. Paramètres
    Nom Type Description
    exitCode NowChatExitCode Motif de la sortie de NowChat.
    Valeurs valides :
    • ChatPluginNotInstalledError : module d’extension de messagerie instantanée non installé sur l’instance.
    • SessionInitializationError : impossible d’initialiser la session avec l’instance.
    • UserExit : l’utilisateur a quitté à l’aide du bouton haut ou du bouton retour
    • Inconnu : une raison inconnue.
    Tableau 7. Renvoie
    Type Description
    Aucun

    L’exemple de code suivant montre comment appeler cette fonction.

    class SampleNowChatSDKCallbacks : NowChatSdkCallbacks {
    
      override fun onExit(exitCode: NowChatExitCode) {
        when (exitCode) {
          NowChatExitCode.UserExit -> Log.i("NowChat", "User exited using the up button or back button")
          NowChatExitCode.SessionInitializationError -> Log.i("NowChat", "Unable to initialize session with instance")
          NowChatExitCode.ChatPluginNotInstalledError -> Log.i("NowChat", " Chat plugin not installed on instance.")
          NowChatExitCode.Unknown -> Log.i("NowChat", "User exited for Unknown reason")
        }
      }
    
      // Override other methods
    }

    NowChatSdkCallbacks : provideProgressView(context : Context)

    Renvoie la vue à afficher lorsque les données de l’interface utilisateur NowChat sont en cours de chargement ; Généralement, une barre de progression indéterminée configurée.

    Tableau 8. Paramètres
    Nom Type Description
    contexte Contexte Contexte d’application à utiliser pour créer la vue.
    Tableau 9. Renvoie
    Type Description
    Afficher Vue que le service NowChat utilise lors du chargement.

    L’exemple de code suivant montre comment appeler cette fonction.

    class SampleNowChatSDKCallbacks : NowChatSdkCallbacks {
      override fun provideProgressView(context: Context): View? {
        return ProgressBar(context).apply {
          indeterminateTintList = ColorStateList.valueOf(
            MaterialColors.getColor(
              context,
              android.R.attr.colorPrimary,
              Color.BLACK)
          )
        }
    
        // Override other methods
      }
    }