Interface NowChatSdkCallbacks - Android

  • Versão de lançamento: Zurich
  • Atualizado 31 de jul. de 2025
  • 3 min. de leitura
  • . NowChatSdkCallbacks A interface fornece funções que permitem retornos de chamada para que as aplicações host configurem ou manipulem ações do NowChatSDK.

    Tabela 1. Propriedades
    Nome Tipo Descrição
    IsFileCollectionBloqueado Booliano Sinalizador que indica se a aplicação host deve impedir que o NowChat abra o seletor de arquivos.
    Valores válidos:
    • Verdadeiro: Impede que o seletor de arquivos seja aberto.
    • Falso: Permite que o seletor de arquivos seja aberto.
    IsGalleryCollectionBloqueado Booliano Sinalizador que indica se a aplicação host deve impedir que o NowChat abra a galeria de fotos.
    Valores válidos:
    • Verdadeiro: Impede que a galeria de fotos seja aberta.
    • Falso: Permite que a galeria de fotos seja aberta.
    IsLocationCollectionBloqueado Booliano Sinalizador que indica se a aplicação host deve impedir o NowChat de acessar o posicionamento de geolocalização.
    Valores válidos:
    • Verdadeiro: Impede o acesso ao posicionamento de geolocalização.
    • Falso: Não impede o acesso ao posicionamento de geolocalização.
    IsPhotoCollection bloqueado Booliano Sinalizador que indica se a aplicação host deve impedir o NowChat de acessar a câmera.
    Valores válidos:
    • Verdadeiro: Impede o acesso à câmera.
    • Falso: Não impede o acesso à câmara.

    NowChatSdkCallbacks - didEndSessionWithId(SessionID: Cadeia de caracteres)

    Chamado quando a tela de bate-papo é fechada e a sessão de bate-papo termina.

    Nota:
    Você deve definir a funcionalidade desejada para este retorno de chamada substituindo a função, pois a implementação padrão simplesmente grava a mensagem "Sessão de bate-papo encerrada". no log.
    Tabela 2. Parâmetros
    Nome Tipo Descrição
    sessionId Cadeia de caracteres Sys_id da sessão encerrada.

    Tabela: Sessão de conversa [sys_cs_session]

    Tabela 3. Retornos
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra onde colocar seu código para substituir a funcionalidade padrão.

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

    NowChatSdkCallbacks - loadUri(URI: URI, Contexto: Contexto)

    Manipula o URI especificado, como abri-lo em uma webview, guia personalizada ou navegador externo.

    Tabela 4. Parâmetros
    Nome Tipo Descrição
    URI URI URI a ser aberto.
    contexto Contexto Contexto da aplicação.
    Tabela 5. Retornos
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como chamar esta função.

    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)

    Define o código de resultado a ser retornado quando o NowChat é encerrado.

    Este retorno de chamada é chamado quando esse bate-papo em tela cheia é encerrado e o usuário retorna para a aplicação host.

    Tabela 6. Parâmetros
    Nome Tipo Descrição
    exitCode NowChatExitCode Motivo para sair do NowChat.
    Valores válidos:
    • ChatPluginNotInstalledError: Plug-in de bate-papo não instalado na instância.
    • SessionInitializationError: Não é possível inicializar a sessão com a instância.
    • UserExit: O usuário saiu usando o botão para cima ou o botão Voltar
    • Desconhecido: Qualquer motivo desconhecido.
    Tabela 7. Retornos
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como chamar esta função.

    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(Contexto: Contexto)

    Retorna a exibição a ser exibida quando os dados de IU do NowChat estão sendo carregados; normalmente, uma barra de andamento indeterminada configurada.

    Tabela 8. Parâmetros
    Nome Tipo Descrição
    contexto Contexto Contexto da aplicação a ser usado para criar a exibição.
    Tabela 9. Retornos
    Tipo Descrição
    Exibir Exibição que o serviço NowChat usa ao carregar.

    O exemplo de código a seguir mostra como chamar esta função.

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