Ir para o conteúdo

Guia de referência do Rox.Chat Mobile SDK para aplicativos Android

A revisão corresponde à versão atual do Mobile SDK para Android.

!!! Observação “N.B.” As respostas às perguntas mais comuns são fornecidas em [este artigo] (recommendations-of-usage.md).

Classe Rox

Um conjunto de métodos estáticos que são usados para criar um objeto de sessão e para lidar com notificações push do serviço Rox.Chat.

Método de classe newSessionBuilder()

Método necessário para obter um objeto SessionBuilder, que, por sua vez, é necessário para criar uma instância da classe RoxSession.

Não aceita parâmetros.

Retorna uma instância da classe SessionBuilder necessária para criar uma sessão.

Não lança exceções.

Não requer que outros métodos sejam chamados antes.

Método de classe parseGcmPushNotification(Bundle bundle)

Método usado para converter um objeto que representa uma notificação push para um aplicativo Android em um objeto da classe [RoxPushNotification] (#rox-remote-notification).

Exemplo de uso:

RoxPushNotification pushNotification = Rox.parseGcmPushNotification(intent.getExtras());

O parâmetro bundle é o dado serializado da notificação push. O tipo é Bundle.

Retorna um objeto da classe [RoxPushNotification] (#rox-remote-notification) ou null.

Não lança exceções.

Não requer que outros métodos sejam chamados antes.

Método de classe parseFcmPushNotification(String message)

Método usado para converter uma notificação push em um aplicativo Android em um objeto da classe [RoxPushNotification] (#rox-remote-notification).

Exemplo de uso:

RoxPushNotification pushNotification = Rox.parseFcmPushNotification(remoteMessage.getData().toString());
O parâmetro message é uma notificação push. O tipo é String.

Retorna um objeto da classe [RoxPushNotification] (#rox-remote-notification) ou null.

Não lança exceções.

Não requer que outros métodos sejam chamados antes.

Método de classe getGcmSenderId()

Um método para obter o ID do remetente de notificações push do serviço Rox.Chat, se o serviço GCM for usado para receber notificações push.

Exemplo de uso:

if (intent.getStringExtra(“from”).equals(**Rox.Chat**.getGcmSenderId())) {
      // Processar a notificação push do Rox.Chat.
  } else {
      // Processe a notificação por push do seu aplicativo.
  }

Não aceita parâmetros.

Retorna o ID do remetente das notificações push do serviço Rox.Chat. O tipo é String.

Não lança exceções.

Não requer a chamada prévia de outros métodos.

Método de classe setOnlineStatusRequestFrequencyInMillis(long requestFrequency)

Método usado para definir a frequência das solicitações ao servidor para obter informações atualizadas sobre as operadoras livres no local atual.

O parâmetro requestFrequency é do tipo long, o intervalo de solicitações em milissegundos.

Não lança exceções.

Não retorna nada.

Chamado ao configurar uma sessão por meio do SessionBuilder.

Enumerated type PushSystem

Sistemas de notificação push que podem ser passados como parâmetro para o método de instância SessionBuilder setPushSystem(PushSystem pushSystem).

Case FCM

Corresponde a Firebase Cloud Messaging.

Caso GCM

Corresponde a Google Cloud Messaging.

Caso NONE

Corresponde à situação em que o aplicativo não precisa receber notificações push do serviço Rox.Chat.


Classe SessionBuilder

Uma classe cuja instância é usada para obter uma instância da classe [RoxSession] (#rox-session). Uma instância da classe é obtida usando o método newSessionBuilder() da classe Rox.

Método de classe setContext(Context context)

O método destina-se a passar um contexto de aplicativo ou algum tipo de atividade para uso pelos métodos do SDK. O contexto é necessário para criar e usar o histórico de mensagens armazenado localmente no dispositivo, obter um token para enviar notificações push e obter o objeto SharedPreferences (se não for passado diretamente usando o método setVisitorDataPreferences(SharedPreferences preferences)). As SharedPreferences são usadas para armazenar os dados de identidade do visitante (consulte os métodos de instância setVisitorFieldsJson(String visitorFieldsJson) e setVisitorFieldsJson(JsonObject visitorFieldsJson)).

O parâmetro context é o contexto do aplicativo ou de alguma atividade. O tipo é Context.

Retorna a mesma instância da classe SessionBuilder, mas com o valor de contexto passado.

Não lança exceções.

Requer uma instância previamente obtida da classe SessionBuilder. Requer uma chamada de método para obter uma instância da classe [RoxSession] (#rox-session).

Método da classe setAccountName(String accountName)

O método é necessário para definir o nome da conta no sistema Rox.Chat ao criar uma sessão.

O parâmetro accountName é o nome da conta do cliente no sistema Rox.Chat. Normalmente é uma URL do servidor (por exemplo, https://demo.rox.chat), mas pode ser um nome de conta com uma única palavra (por exemplo, “demo”), se o servidor estiver no domínio rox.chat. O tipo de parâmetro é String.

Retorna a mesma instância da classe SessionBuilder, mas com o nome da conta definido.

Não lança exceções.

Requer uma instância obtida anteriormente da classe SessionBuilder. Requer uma chamada de método para obter uma instância da classe [RoxSession] (#rox-session).

Método de classe setLocation(String location)

O método é necessário para definir o local inicialmente usado ao criar uma sessão.

O parâmetro location é o local dentro do serviço Rox.Chat que será usado durante o bate-papo. O tipo do parâmetro é String. Provavelmente, você pode usar os valores mobile e/ou default imediatamente. Para criar e usar posicionamentos adicionais, entre em contato com a equipe de suporte do serviço Rox.Chat.

Retorna a mesma instância da classe SessionBuilder, mas com o nome do conjunto de posicionamentos usado.

Não lança exceções.

Requer uma instância obtida anteriormente da classe SessionBuilder. É necessária uma chamada de método para obter uma instância de [RoxSession] (#rox-session).

Método de classe setAppVersion(String appVersion)

O método é usado para definir a versão do aplicativo cliente se ele precisar ser diferenciado no contexto do serviço Rox.Chat.

O parâmetro appVersion é a versão do aplicativo cliente. O tipo de parâmetro é String.

Retorna a mesma instância da classe SessionBuilder, mas com a versão do aplicativo cliente instalada.

Não lança exceções.

Requer uma instância obtida anteriormente da classe SessionBuilder. Nenhuma chamada de método é necessária para obter uma instância da classe [RoxSession] (#rox-session).

Método de classe setVisitorDataPreferences(SharedPreferences preferences)

O método é usado para passar o objeto do SDK SharedPreferences. Ele é usado para armazenar os dados do usuário autorizado (consulte os métodos setVisitorFieldsJson(String visitorFieldsJson) e setVisitorFieldsJson(JsonObject visitorFieldsJson)) e o nome do arquivo de armazenamento do histórico de mensagens local.

Se esse método não tiver sido chamado, o objeto SharedPreferences será recuperado do contexto (consulte o método setContext(Context context)).

Os dados de diferentes usuários autorizados são armazenados em diferentes arquivos SharedPreferences.

O parâmetro preferences é o objeto SharedPreferences do aplicativo.

Retorna a mesma instância da classe SessionBuilder, mas com o conjunto SharedPreferences.

Não lança exceções.

Requer uma instância obtida anteriormente da classe SessionBuilder. Nenhuma chamada de método é necessária para obter uma instância da classe [RoxSession] (#rox-session).

Método de classe setVisitorFieldsJson(String visitorFieldsJson)

O método é usado para autorização interna do visitante.

Sem chamar esse método ao criar um objeto de sessão, o usuário será anônimo, com uma ID gerada aleatoriamente. Essa ID é armazenada nas configurações do aplicativo e, se essas configurações forem perdidas (por exemplo, ao reinstalar o aplicativo), todos os dados (histórico de mensagens) serão perdidos.

Todos os dados de um usuário autorizado são salvos e estarão disponíveis ao autorizar a partir de qualquer dispositivo.

Parâmetro visitorFieldsJson - campos de dados de autorização do usuário no formato JSON, tipo - String. Informações detalhadas sobre esses campos (incluindo quais são obrigatórios e como eles devem ser formados) podem ser encontradas em este artigo.

Retorna a mesma instância da classe SessionBuilder, mas com as credenciais de autorização do visitante definidas.

Não lança exceções.

Requer uma instância obtida anteriormente da classe SessionBuilder. É opcional chamar esse método para obter uma instância da classe RoxSession.

Esse método não pode ser chamado simultaneamente com o método setProvidedAuthorizationTokenStateListener(ProvidedAuthorizationTokenStateListener ProvidedAuthorizationTokenStateListener, String providedAuthorizationToken).

Método de classe setVisitorFieldsJson(JsonObject visitorFieldsJson)

Um método completamente semelhante ao método setVisitorFieldsJson(String visitorFieldsJson), exceto pelo parâmetro: o parâmetro visitorFieldsJson é do tipo JsonObject. Qual dos dois métodos usar é irrelevante.

Class method setProvidedAuthorizationTokenStateListener(ProvidedAuthorizationTokenStateListener providedAuthorizationTokenStateListener, String providedAuthorizationToken)

Quando um aplicativo cliente fornece seu próprio mecanismo de autorização de visitante, isso pode ser implementado passando um token especial em vez de campos de visitante.

Esse método passa um objeto de uma classe que implementa a interface [ProvidedAuthorizationTokenStateListener] (#provided-authorization-token-state-listener) e um token.

Retorna a mesma instância da classe SessionBuilder, mas com o objeto ProvidedAuthorizationTokenStateListener e o token do cliente de autorização do visitante instalados.

Não lança exceções.

Requer uma instância obtida anteriormente da classe SessionBuilder. É opcional chamar esse método para obter uma instância da classe RoxSession.

Esse método não pode ser chamado simultaneamente com os métodos setVisitorFieldsJson(String visitorFieldsJson) ou setVisitorFieldsJson(JsonObject visitorFieldsJson).

Método de classe setTitle(String title)

Um método para definir o título do chat do lado do operador ao criar uma instância de sessão. Se o método não tiver sido chamado quando a instância da sessão foi criada, o título assumirá o valor padrão de “Android Client”.

O parâmetro title é o título do chat do lado do operador. O tipo de parâmetro é String.

Retorna a mesma instância da classe SessionBuilder, mas com o título do chat do lado do operador definido.

Não lança exceções.

Requer uma instância obtida anteriormente da classe SessionBuilder. É opcional chamar o método call para obter uma instância da classe* RoxSession.

Método de classe setErrorHandler(FatalErrorHandler errorHandler)

Um método para definir um objeto que obedece à interface [FatalErrorHandler] (#fatal-error-handler), que será responsável pelo tratamento de erros de instância de sessão que podem ser chamados pelo serviço Rox.Chat.

O parâmetro errorHandler é qualquer classe que implemente a interface FatalErrorHandler.

Retorna a mesma instância da classe SessionBuilder, mas com o objeto* FatalErrorHandler instalado.

Não lança exceções.

Requer uma instância previamente obtida da classe SessionBuilder. A chamada do método não é necessária para obter uma instância da classe [RoxSession] (#rox-session).

Método de classe setPushSystem(PushSystem pushSystem)

Um método para especificar, ao criar uma sessão, se o aplicativo receberá notificações push do serviço Rox.Chat e, em caso afirmativo, qual sistema de notificação push o aplicativo usará para fazer isso. (Consulte o tipo enumerado PushSystem na classe Rox.

O parâmetro pushSystem é o valor correspondente do tipo PushSystem da classe Rox.

Retorna a mesma instância da classe SessionBuilder, mas com o sistema definido para usar notificações push.

Não lança exceções.

Requer uma instância obtida anteriormente da classe SessionBuilder. Para que um aplicativo receba notificações push do serviço Rox.Chat, a chamada desse método não é suficiente: também é necessária uma chamada para o método setPushToken(String pushToken).

Para obter uma instância da classe [RoxSession] (#rox-session), não é necessário chamar o método. Se o método não tiver sido chamado quando a sessão foi criada, o serviço Rox.Chat não enviará notificações push para o aplicativo (semelhante ao valor do parâmetro pushSystem NONE).

Método de classe setPushToken(String pushToken)

Um método para especificar um token para que o aplicativo receba notificações push do serviço Rox.Chat ao criar uma sessão.

O parâmetro pushToken é o token usado para receber notificações push no aplicativo. O tipo é String em formato hexadecimal, sem caracteres de serviço ou espaços.

Retorna a mesma instância da classe SessionBuilder, mas com o valor do token definido para usar notificações push.

Não lança exceções.

Requer uma instância obtida anteriormente da classe SessionBuilder. Para que um aplicativo receba notificações push do serviço Rox.Chat, esse método é chamado juntamente com uma chamada ao método setPushSystem(PushSystem pushSystem).

A chamada desse método é útil para depuração.

Para obter uma instância da classe [RoxSession] (#rox-session), a chamada do método é opcional.

!!! Aviso “Aviso!” Esse método pode ser usado somente após a inicialização da sessão!

Método de classe setGCMSenderId(String senderId)

Um método para definir seu próprio GCM Sender Id para notificações push. Sem chamar esse método, o Rox.Chat GCM Sender ID será usado.

O parâmetro senderId é o valor de GCM Sender Id. O tipo é String.

Retorna a mesma instância da classe [SessionBuilder] (#session-builder), mas com o GCM Sender Id definido.

Requer uma instância previamente obtida da classe SessionBuilder. A chamada do método é opcional para obter uma instância da classe [RoxSession] (#rox-session).

Método da classe setLogger(RoxLog logger, RoxLogVerbosityLevel verbosityLevel)

O método pelo qual um objeto da classe [RoxLog] (#rox-logger) é passado.

O parâmetro logger é um objeto da classe RoxLog.

O parâmetro verbosityLevel é o valor de RoxLogVerbosityLevel.

Retorna a mesma instância da classe SessionBuilder, mas com o objeto de classe RoxLog instalado para registrar informações.

Requer uma instância previamente obtida da classe SessionBuilder. É opcional chamar o método para obter uma instância da classe RoxSession.

Método da classe setStoreHistoryLocally(boolean storeHistoryLocally)

Por padrão, a sessão armazena o histórico de mensagens no dispositivo (no armazenamento SQLite associado ao aplicativo). Se essa funcionalidade precisar ser desativada para qualquer finalidade, esse método será usado com o valor do parâmetro storeHistoryLocally false.

O parâmetro storeHistoryLocally é uma variável booleana que indica a necessidade de armazenar o histórico de mensagens localmente (valor true) ou sua (necessidade) ausência (valor false).

Retorna a mesma instância da classe SessionBuilder, mas com o valor definido manualmente da opção correspondente.

Não lança exceções.

Requer uma instância previamente obtida da classe SessionBuilder. Nenhuma chamada de método é necessária para obter uma instância da classe RoxSession. Não chamar o método é o mesmo que chamá-lo com isLocalHistoryStoragingEnabled true.

Método de classe setClearVisitorData(boolean clearVisitorData)

Um método usado para remover todos os dados do usuário existentes no momento da criação da instância da sessão.

O parâmetro clearVisitorData é uma variável booleana que indica a necessidade de limpar os dados do usuário (valor true) ou sua (necessidade) ausência (valor false).

Retorna a mesma instância da classe SessionBuilder, mas com o valor da opção correspondente definido manualmente.

Não lança exceções.

Requer uma instância obtida anteriormente da classe SessionBuilder. Nenhuma chamada de método é necessária para obter uma instância da classe RoxSession. Não chamar o método é o mesmo que chamá-lo com isVisitorDataClearingEnabled false.

Método de classe setNotFatalErrorHandler(NotFatalErrorHandler notFatalErrorHandler notFatalErrorHandler)

Um método para definir um objeto que obedece à interface [NotFatalErrorHandler] (#not-fatal-error-handler) que será responsável pelo tratamento de erros de criação de instância de sessão que podem ser causados pelo serviço Rox.Chat.

O parâmetro notFatalErrorHandler é qualquer classe que implemente a interface NotFatalErrorHandler.

Retorna a mesma instância da classe SessionBuilder, mas com o objeto NotFatalErrorHandler instalado.

Não lança exceções.

Requer uma instância obtida anteriormente da classe SessionBuilder. É opcional chamar o método para obter uma instância da classe [RoxSession] (#rox-session).

Método de classe build()

Um método que é chamado na conclusão dos métodos acima para obter uma instância de RoxSession.

Não aceita parâmetros.

Retorna um objeto RoxSession com parâmetros definidos usando o restante dos métodos de instância da classe.

Lança uma IllegalArgumentException nos seguintes casos:

Requer uma instância obtida anteriormente da classe SessionBuilder e chamadas subsequentes aos métodos setAccountName(String accountName) e setLocation(String location) (em qualquer ordem). Qualquer outro método de instância da classe [SessionBuilder] (#session-builder) (em qualquer ordem e combinação) também pode ser chamado antes.

Método de classe build(RoxSession.SessionCallback callback)

Um método que é chamado na conclusão dos métodos acima para obter uma instância de [RoxSession] (#rox-session).

O parâmetro callback é um objeto que implementa a interface RoxSession.SessionCallback.

Retorna um objeto RoxSession com os parâmetros definidos usando o restante dos métodos de instância da classe.

Lança uma IllegalArgumentException nos seguintes casos:

Requer uma instância obtida anteriormente da classe SessionBuilder e chamadas subsequentes aos métodos setAccountName(String accountName) e setLocation(String location) (em qualquer ordem). Além disso, quaisquer outros métodos (em qualquer ordem e combinação) da instância da classe SessionBuilder podem ser chamados antes.

Tipo enumerado RoxLogVerbosityLevel

Especifica o grau de informatividade dos registros passados para o objeto RoxLog.

Caso VERBOSE

Todas as informações disponíveis serão passadas para o objeto RoxLog com o nível máximo de informatividade:

  • parâmetros de configuração da conexão de rede;

  • URLs, métodos HTTP e parâmetros de solicitação de rede;

  • Códigos HTTP, dados recebidos e erros de resposta da solicitação de rede;

  • Consultas SQL e erros que ocorrem com essas consultas;

  • Informações completas que podem ser úteis na depuração e notas adicionais.

Case DEBUG

Todas as informações necessárias para a depuração serão passadas para o objeto RoxLog com o nível de informação necessário:

  • parâmetros de configuração da conexão de rede;

  • URLs, métodos HTTP e parâmetros de solicitação de rede;

  • Códigos HTTP, dados recebidos e erros de resposta de solicitação de rede;

  • Consultas SQL e erros que ocorrem com essas consultas;

  • Informações completas que podem ser úteis na depuração, com um nível moderado de informatividade.

Case INFO

O objeto RoxLog receberá informações de segundo plano, bem como todos os avisos e erros:

  • URLs, métodos HTTP e parâmetros de solicitação de rede;

  • Códigos HTTP e erros de respostas a solicitações de rede que falharam;

  • Erros de consulta SQL.

Case WARNING

Somente avisos e erros serão passados para o objeto RoxLog:

  • Códigos HTTP e erros de respostas a solicitações de rede que falharam;

  • Erros de consulta SQL.

Case ERROR

Somente erros serão passados para o objeto RoxLog:

  • Códigos HTTP e erros de resposta de solicitação de rede que falharam.

Interface ProvidedAuthorizationTokenStateListener

Se o cliente fornecer seu próprio mecanismo de autorização de visitante, isso poderá ser implementado passando um token especial que é usado no lugar dos campos de visitante (consulte os métodos setVisitorFieldsJson(String visitorFieldsJson e setVisitorFieldsJson(JsonObject visitorFieldsJson)).

No momento em que esse token é gerado (ou recebe um valor passado), o método [update(String providedAuthorizationToken)] (#update-provided-authorization-token) é chamado. Isso significa que o serviço do cliente deve passar esse token para o serviço Rox.Chat.

Esse mecanismo não é uma implementação autônoma. O serviço do cliente deve suportar e implementar métodos para passar o token e os dados do visitante para o serviço Rox.Chat.

Método de instância update(String providedAuthorizationToken)

O método é chamado em dois casos:

  1. O token do mecanismo de autorização do cliente é fornecido ou gerado e é necessário enviá-lo ao serviço Rox.Chat pelo cliente.

  2. é recebida informação do serviço Rox.Chat de que o token usado é desconhecido para ele. Isso pode acontecer, por exemplo, se o token não foi enviado ao serviço Rox.Chat pelo serviço do cliente ou não foi recebido pelo serviço Rox.Chat. Nesse caso, o serviço Rox.Chat precisa fornecer o token e os dados correspondentes do visitante.

O parâmetro providedAuthorizationToken é o token do mecanismo de autorização do cliente.

Não retorna nada.

Não lança exceções

Não requer que nenhum outro método seja chamado antes.


Interface RoxSession

Uma interface que permite a manipulação da sessão atual. Ela é implementada por entidades internas do SDK.

Uma instância da classe [RoxSession] (#rox-session) é obtida usando os métodos da classe [SessionBuilder] (#session-builder).

!!! Nota “N.B.” Por si só, a RoxSession não inicia um chat. Para iniciar um chat, você deve chamar startChat() ou startChatWithDepartmentKey(String departmentKey)

Method resume()

Quando uma instância da classe RoxSession é criada, sua sessão correspondente fica em um estado suspenso. Esse método é necessário para iniciar a atividade de rede da sessão.

Não aceita parâmetros.

Não retorna nada.

Lança uma IllegalStateException se o objeto de sessão tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto de classe foi criado.

Não requer que nenhum outro método seja chamado antes. Necessário para que o serviço funcione plenamente no contexto do aplicativo.

A velocidade de execução do método depende da velocidade de recebimento da resposta do servidor. Vários métodos [MessageListener] (#message-listener), [ChatStateListener] (#chat-state-listener), [CurrentOperatorChangeListener] (#current-operator-change-listener) e [LocationSettingsChangeListener] (#location-settings-change-listener) podem ser chamados como resultado da resposta do servidor.

Método pause()

Um método que é usado para suspender a atividade de rede de uma sessão. Se a sessão já estiver em um estado suspenso, o método não executará nenhuma ação.

Não aceita nenhum parâmetro.

Não retorna nada.

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto de classe foi criado.

Não requer que nenhum outro método seja chamado antes. A sessão não deve estar em um estado desativado para chamar o método.

Método destroy()

Um método que é usado para desativar a sessão e a instância da classe. Quando esse método é chamado, nenhum método relacionado à sessão pode ser usado.

Não aceita parâmetros.

Não retorna nada.

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto de classe foi criado.

Não requer que nenhum outro método seja chamado antes.

Método destroyWithClearVisitorData()

Um método usado para desativar a sessão e a instância da classe com as informações do usuário removidas. Quando esse método for chamado, nenhum método relacionado à sessão poderá ser usado.

Não aceita parâmetros.

Não retorna nada.

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto de classe foi criado.

Não requer que nenhum outro método seja chamado antes.

Método getStream()

O método a ser chamado para recuperar a sessão de instância [MessageStream] (#message-stream) correspondente.

Não aceita parâmetros.

Retorna a instância da sessão correspondente da classe MessageStream. Cada chamada a esse método no contexto de um único objeto de classe retorna o mesmo objeto MessageStream.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes, mas a sessão não deve ser suspensa ou desativada para utilizar totalmente os métodos da interface MessageStream (consulte os métodos resume(), pause() e destroy()).

Método changeLocation(String location)

O método é usado para alterar o nome de um local em uma sessão existente. A chamada do método se aproxima do resultado da criação de uma nova sessão com parâmetros semelhantes, mas com um nome de local diferente.

O parâmetro location é o nome do local para o qual o valor da sessão atual deve ser alterado. O tipo é String.

Não retorna nada.

Não lança exceções.

Para chamar o método, a sessão não deve estar em estado suspenso ou desativado (consulte os métodos resume(), pause() e destroy()).

A velocidade de execução do método depende da velocidade de recebimento de uma resposta do servidor.

Método setPushToken(String pushToken)

O método é usado para definir o token push para receber notificações push.

O parâmetro pushToken é o token usado para receber notificações push no aplicativo. O tipo é String.

Não retorna nada.

Lança uma IllegalStateException se o objeto de sessão tiver sido desativado (consulte o método destroy()) e se o sistema de notificação push não tiver sido configurado corretamente (consulte o método setPushSystem(PushSystem pushSystem) da classe SessionBuilder).

Lança uma RuntimeException se o método foi chamado de uma thread diferente daquela em que o objeto da classe foi criado.

Method removePushToken(TokenCallback tokenCallback)

O método é usado para desativar as notificações push.

O parâmetro tokenCallback é um objeto que implementa a interface TokenCallback.

Lança uma IllegalStateException se o objeto de sessão tiver sido desativado (consulte o método destroy()) e se o sistema de notificação push não tiver sido configurado corretamente (consulte o método setPushSystem(PushSystem pushSystem) da classe SessionBuilder).

Lança uma RuntimeException se o método foi chamado de uma thread diferente daquela em que o objeto da classe foi criado.


Interface getMessagesCallback

Um objeto que implementa a interface pode ser passado no parâmetro messagesCallback do método loadAllHistorySince(Message sinceMessage, getMessagesCallback messagesCallback) do protocolo MessageTracker.

Método receive(List messages)

O método é chamado quando a chamada para o método loadAllHistorySince(Message sinceMessage, getMessagesCallback messagesCallback) do protocolo MessageTracker é bem-sucedida.

O parâmetro messages é uma lista de mensagens que foram encontradas como resultado da consulta de pesquisa.

Não retorna nada.

Não lança exceções.

Não requer a chamada de nenhum outro método previamente. Tipo - List.


Interface Quote

A interface é uma abstração que representa informações sobre a mensagem citada.

A interface é implementada por entidades internas do SDK. O objeto Quote pode ser recuperado usando o método getQuote() da interface Message().

Método getState()

Use esse método para obter o status de uma cotação.

Não aceita parâmetros.

Retorna um valor do tipo enumerado State.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getMessageAttachment()

Use esse método para obter um anexo se ele for um arquivo enviado por um visitante ou operador (Type FILE_FROM_OPERATOR ou FILE_FROM_VISITOR).

Não aceita parâmetros.

Retorna uma instância da classe MessageAttachment ou null se o arquivo estiver em processo de envio.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getMessageId()

Use esse método para obter o ID exclusivo da mensagem citada.

Não aceita nenhum parâmetro.

Retorna a ID da mensagem. O tipo é String.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getMessageType()

Use esse método para obter o tipo da mensagem citada.

Não aceita nenhum parâmetro.

Retorna o valor do tipo enumerado [MessageType] (#message-type).

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getSenderName()

Use esse método para obter o nome do remetente da mensagem.

Não aceita nenhum parâmetro.

Retorna o nome do remetente da mensagem. O tipo é String.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getMessageText()

Use esse método para obter o texto da mensagem.

Não aceita nenhum parâmetro.

Retorna o texto da mensagem. O tipo é String.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getMessageTimestamp()

Use esse método para obter a hora em que a mensagem foi enviada.

Não aceita nenhum parâmetro.

Retorna o número de milissegundos decorridos desde o início da época até o momento em que a mensagem é processada pelo servidor. O tipo é long.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getAuthorId()

Use esse método para obter o ID do autor da mensagem citada.

Não aceita nenhum parâmetro.

Retorna o ID da mensagem. O tipo é String.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.


Interface Keyboard

A interface é uma abstração que fornece os elementos de um teclado de chatbot.

A interface é implementada por entidades internas do SDK. O objeto Keyboard pode ser recuperado usando o método getKeyboard() da interface Message.

Método getButtons()

Um método que pode ser usado para obter uma lista de botões para um elemento de teclado.

Não recebe parâmetros.

Retorna um objeto KeyboardButtons.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getState()

Um método que pode ser usado para obter o estado do teclado.

Não recebe parâmetros.

Retorna um valor do tipo enumerado State.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getKeyboardResponse()

Método que pode ser usado para recuperar um botão selecionado pelo usuário.

Não recebe nenhum parâmetro.

Retorna um objeto KeyboardResponse.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.


Interface KeyboardButtons

A interface é uma abstração que representa informações sobre os botões do teclado do chatbot.

A interface é implementada por entidades internas do SDK. O objeto KeyboardButtons pode ser recuperado usando o método getButtons() da interface Keyboard.

Método getId()

Um método que pode ser usado para obter o ID exclusivo de um botão no teclado do chatbot.

Não recebe parâmetros.

Retorna a ID em forma de texto. O tipo é String.

Não gera exceções.

Não requer que nenhum outro método seja chamado antes.

Método getText()

Um método que pode ser usado para obter o texto de um botão no teclado do chatbot.

Não recebe nenhum parâmetro.

Retorna o nome do botão em forma de texto. O tipo é String.

Não gera exceções.

Não requer que nenhum outro método seja chamado antes.


Interface KeyboardResponse

A interface é uma abstração que representa informações sobre o botão selecionado no teclado do chatbot.

A interface é implementada por entidades internas do SDK. O objeto KeyboardResponse pode ser recuperado usando o método getKeyboardResponse() da interface Keyboard.

Método getbuttonId()

Método que pode ser usado para obter o ID exclusivo do botão selecionado no teclado do chatbot.

Não aceita parâmetros.

Retorna a ID em forma de texto. O tipo é String. A ID do botão pode conter apenas letras latinas, dígitos, hífen e caracteres de sublinhado e não deve ter mais de 24 caracteres. A ID do botão gerada no lado do Rox.Chat tem o formato UUID4, e a ID gerada externamente (incluindo bots de terceiros) só é verificada quanto à conformidade com os critérios acima.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getMessageId()

Método que pode ser usado para obter a ID da mensagem na qual o botão foi selecionado.

Não recebe parâmetros.

Retorna o nome do ID da mensagem em formato de texto. O tipo é String.

Não gera exceções.

Não requer que nenhum outro método seja chamado antes.


Interface MessageStream

Uma interface implementada por entidades internas do SDK.

A instância da classe com a qual os métodos da interface são chamados existe apenas uma vez em uma sessão e é obtida usando o método getStream() de uma instância da classe RoxSession. Os métodos da interface são usados diretamente para interagir com o serviço Rox.Chat (como enviar e receber mensagens).

Para usar os métodos de interface, é necessário que a sessão não esteja em estado suspenso ou desativado (consulte os métodos resume(), pause() e destroy() da classe RoxSession).

Método closeSurvey(SurveyCloseCallback callback)

Use esse método para fechar o questionário.

O parâmetro callback é um objeto que implementa a interface SurveyCloseCallback.

Ele não retorna nada.

Ele não lança nenhuma exceção.

Além disso, se o fechamento for bem-sucedido, o método SurveyListener.onSurveyCanceled() será chamado.

Method deleteUploadedFiles(String fileGuid, DeleteUploadedFileCallback deleteUploadedFileCallback)

Um método para excluir arquivos do servidor Rox.Chat.

O parâmetro fileGuid é o ID do arquivo a ser excluído (consulte a interface UploadedFile). O tipo é String.

O parâmetro deleteUploadedFileCallback é um objeto que implementa os métodos da interface DeleteUploadedFileCallback.

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes.

A velocidade de execução do método depende da velocidade da resposta do servidor. Vários métodos MessageListener podem ser chamados como resultado da resposta do servidor.

Método getVisitSessionState()

Um método que pode ser usado para obter o estado da sessão atual.

Não aceita parâmetros.

Retorna o estado da sessão atual com um valor do tipo VisitSessionState.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getChatState()

Um método que pode ser usado para especificar o estado do chat atual.

Não aceita parâmetros.

Retorna um valor do tipo enumerado ChatState.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes.

Método getUnreadByOperatorTimestamp()

Não recebe parâmetros.

Retorna o ponto no tempo (do tipo Date) após o qual todas as mensagens de chat não são lidas pelo operador (no momento da atualização recebida do servidor).

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getUnreadByVisitorMessageCount()

Não recebe parâmetros.

Retorna o número de mensagens não lidas pelo usuário.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getUnreadByVisitorTimestamp()

Não recebe parâmetros.

Retorna o ponto no tempo (do tipo Date) após o qual todas as mensagens de chat não são lidas pelo visitante (no momento da atualização recebida do servidor).

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getDepartmentList()

Não recebe parâmetros.

Retorna uma lista de departamentos por uma lista de objetos do tipo Department ou null se nenhum departamento estiver em uso ou se nenhuma lista de departamentos tiver sido recuperada ainda.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getLocationSettings()

Cada local pode ter configurações individuais. Use o método current para obter um objeto que represente as configurações de local atuais.

Não recebe parâmetros.

Retorna um objeto da classe LocationSettings correspondente à sessão atual.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getCurrentOperator()

Use esse método para especificar informações sobre o operador atual (se houver) da sessão de bate-papo atual.

Não recebe parâmetros.

Retorna um objeto da classe Operator ou null se o chat não tiver um operador no momento.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes.

Método getLastOperatorRating(Operator.Id operatorId)

Use esse método para especificar a classificação atual (em números inteiros de 0 a 5) de um operador, sabendo o ID desse operador (consulte o método getId() da interface Operator).

O parâmetro ID é o ID do operador cuja classificação o método deve retornar. O tipo é Operator.Id.

Retorna a classificação do operador com ID correspondente ao valor do parâmetro ID, em números inteiros de 1 a 5 ou 0 se o operador não tiver classificação. O tipo é Int.

Lança uma IllegalStateException se o objeto [RoxSession] (#rox-session) tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes.

Método rateOperator(Operator.Id operatorId, int rate, RateOperatorCallback rateOperatorCallback)

Use esse método para enviar a classificação do operador do visitante atual.

O parâmetro operatorId é o ID do operador cuja classificação deve ser enviada para o serviço Rox.Chat. O tipo é Operator.Id.

Parâmetro rate - a pontuação do operador a ser enviada ao serviço Rox.Chat. A taxa deve ser um número inteiro de 1 a 5. O tipo é int.

O parâmetro rateOperatorCallback é um objeto que implementa a interface rateOperatorCallback.

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes.

A velocidade de execução do método depende da velocidade de recebimento de uma resposta do servidor.

!!! Aviso “Aviso!” A implementação do mecanismo de avaliação do operador é deixada para os desenvolvedores do aplicativo móvel!

Método respondSentryCall(String id)

Esse método pode ser usado para transferir um chat para o operador de plantão.

O parâmetro ID é o ID da mensagem a ser transferida para o operador de plantão. O tipo é String.

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes.

A velocidade de execução do método depende da velocidade de recebimento de uma resposta do servidor.

Método replyMessage(String message, Message quotedMessage

O método é usado para citar a mensagem de um visitante para o serviço Rox.Chat.

O parâmetro message é a mensagem a ser enviada. O tipo é String.

Parâmetro quotedMessage - mensagem citada. O tipo é Message.

Retorna true se a mensagem estiver entre aspas e false caso contrário.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes. Se houver objetos MessageTracker. e MessageListener. O envio de uma mensagem invocará o método messageAdded(Message before, Message message) da interface MessageListener com uma nova mensagem com status SENDING do tipo enumerado SendStatus.

A velocidade de execução do método depende da velocidade de recebimento da resposta do servidor. Como resultado da resposta do servidor, vários métodos [MessageListener] (#message-listener) podem ser chamados.

Método sendKeyboardRequest(String requestMessageId, String buttonId, sendKeyboardCallback sendKeyboardCallback)

O método é usado para enviar o item selecionado no teclado do chatbot para o serviço Rox.Chat.

O parâmetro requestMessageId é o Id da mensagem solicitada.

Parâmetro buttonId - Id do item no teclado do chatbot.

Parâmetro sendKeyboardCallback - Um objeto que implementa métodos da interface [SendKeyboardCallback] (#send-keyboard-callback).

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Não requer que nenhum outro método seja chamado antes.

Lança uma RuntimeException se o método tiver sido chamado de um thread diferente daquele em que o objeto RoxSession foi criado.

A velocidade de execução do método depende da velocidade com que a resposta do servidor é recebida.

Método setGreetingMessageListener(GreetingMessageListener listener)

Use esse método para obter uma mensagem de saudação.

O parâmetro listener é um objeto de uma classe que implementa a interface GreetingMessageListener.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes.

Method sendFiles(List<UploadedFile> uploadedFiles, SendFilesCallback sendFilesCallback)

Um método para enviar arquivos carregados para o servidor Rox.Chat.

O parâmetro uploadedFiles é uma lista de arquivos a serem enviados.

O parâmetro sendFilesCallback é um objeto que implementa os métodos da interface `SendFilesCallback``.

Retorna uma ID gerada aleatoriamente para essa mensagem, que pode ser usada para identificar essa mensagem específica na lógica do aplicativo. O tipo é Message.Id.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Antes de chamá-lo, é necessário fazer upload de arquivos para o servidor Rox.Chat (consulte o método uploadFilesToServer(File file file, String name, String mimeType, UploadFileToServerCallback uploadFileToServerCallback)). Se os objetos MessageTracker e MessageListener existirem, o envio de uma mensagem invocará o método messageAdded(Message before, Message message message) da interface MessageListener com uma nova mensagem com status SENDING do tipo enumerado SendStatus.

A velocidade de execução do método depende da velocidade de recebimento da resposta do servidor. Vários métodos [MessageListener] (#message-listener) podem ser chamados como resultado da resposta do servidor.

Método startChat()

O método inicia um chat sem atribuição a um departamento (atribuição ao departamento No Department). Em termos do serviço Rox.Chat, altera o estado do chat atual, representado pelo tipo ChatState, para QUEUE.

Não aceita parâmetros.

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes. A chamada desse método é opcional. Quando um usuário envia uma mensagem ou um arquivo, o chat é iniciado automaticamente.

A velocidade de execução do método depende da velocidade de recebimento de uma resposta do servidor.

Como resultado, o método onStateChange(ChatState oldState, ChatState newState) da interface ChatStateListener pode ser chamado.

!!! Note “N.B.” A mensagem de boas-vindas para um visitante só aparecerá se o método startChat() for usado e uma mensagem de boas-vindas para um operador que não seja do departamento for escrita, ou se o método startChatWithDepartmentKey(String departmentKey) for usado (desde que as mensagens de boas-vindas para cada departamento sejam escritas).

Método startChatWithDepartmentKey(String departmentKey)

O método inicia um chat com uma atribuição ao departamento especificado. Em termos do serviço Rox.Chat, ele altera o estado atual do chat, representado pelo tipo ChatState, para QUEUE.

O parâmetro departmentKey é o valor da chave do departamento, que pode ser recuperado pelo método getKey() da interface Department. O tipo é String.

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de um thread diferente daquele em que o objeto RoxSession foi criado.

Quando um usuário envia uma mensagem ou um arquivo, o bate-papo é iniciado automaticamente, mas se o estado atual for VisitSessionStateDEPARTMENT_SELECTION, o bate-papo deverá ser iniciado usando esse método ou o método startChatWithDepartmentKeyFirstQuestion(String departmentKey, String firstQuestion).

Como resultado, o método [onStateChange(ChatState oldState, ChatState newState)] (#changed-state-previous-state-to-new-state) da interface [ChatStateListener] (#chat-state-listener) pode ser chamado.

!!! Observação “N.B.” A mensagem de boas-vindas para um visitante só aparecerá se o método startChat() for usado e uma mensagem de boas-vindas para um operador que não seja do departamento for escrita, ou se o método startChatWithDepartmentKey(String departmentKey) for usado (desde que as mensagens de boas-vindas para cada departamento sejam escritas).

Método startChatWithFirstQuestion(String firstQuestion)

O método inicia o chat e envia simultaneamente a primeira mensagem do visitante.

Em termos do serviço Rox.Chat, ele altera o estado atual do chat, representado pelo tipo ChatState, para QUEUE.

O parâmetro firstQuestion é a primeira mensagem do usuário. O tipo é String.

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de um thread diferente do thread no qual o objeto RoxSession foi criado.

Como resultado, o método onStateChange(ChatState oldState, ChatState newState) da interface ChatStateListener pode ser chamado.

Método startChatWithCustomFields(String customFields)

O método inicia um chat com os campos personalizados especificados.

Em termos do serviço Rox.Chat, ele altera o estado atual do chat, representado pelo tipo ChatState, para QUEUE.

O parâmetro customFields são campos adicionais no formato JSON. O tipo é String.

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de um thread diferente do thread no qual o objeto RoxSession foi criado.

Como resultado, o método onStateChange(ChatState oldState, ChatState newState) da interface ChatStateListener pode ser chamado.

Method startChatWithDepartmentKeyFirstQuestion(String departmentKey, String firstQuestion)

O método inicia um chat especificando um determinado departamento e envia simultaneamente a primeira mensagem do visitante.

Em termos do serviço Rox.Chat, ele altera o estado atual do chat, representado pelo tipo ChatState, para QUEUE.

O parâmetro departmentKey é o valor da chave do departamento, que pode ser recuperado pelo método getKey() da interface Department. O tipo é String.

O parâmetro firstQuestion é a primeira mensagem do usuário. O tipo é String.

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de um thread diferente daquele em que o objeto RoxSession foi criado.

Quando um usuário envia uma mensagem ou um arquivo, o chat é iniciado automaticamente, mas se o estado atual for VisitSessionStateDEPARTMENT_SELECTION, o chat deverá ser iniciado usando esse método ou o método startChatWithDepartmentKey(String departmentKey).

Como resultado, o método [onStateChange(ChatState oldState, ChatState newState)](#changed-state-previous-state-to-new-state) da interface ChatStateListener pode ser chamado.

Método startChatWithCustomFieldsFirstQuestion(String customFields, String firstQuestion)

O método inicia um chat especificando campos adicionais e envia simultaneamente a primeira mensagem do visitante.

Em termos do serviço Rox.Chat, ele altera o estado atual do chat, representado pelo tipo ChatState, para QUEUE.

O parâmetro customFields são campos adicionais no formato JSON. O tipo é String.

Parâmetro firstQuestion - a primeira mensagem do usuário. Tipo - String.

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de um thread diferente do thread no qual o objeto RoxSession foi criado.

Como resultado, o método onStateChange(ChatState oldState, ChatState newState) da interface ChatStateListener pode ser chamado.

Método startChatWithCustomDepartmentKey(String customFields, String departmentKey)

O método inicia um chat especificando campos personalizados e departamento.

Em termos do serviço Rox.Chat, ele altera o estado atual do chat, representado pelo tipo ChatState, para QUEUE.

O parâmetro customFields são campos adicionais no formato JSON. O tipo é String.

Parâmetro departmentKey - valor da chave do departamento que pode ser recuperado pelo método getKey() da interface Department. O tipo é String.

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de um thread diferente daquele em que o objeto RoxSession foi criado.

Quando um usuário envia uma mensagem ou um arquivo, o chat é iniciado automaticamente, mas se o estado atual for VisitSessionStateDEPARTMENT_SELECTION, o chat deverá ser iniciado usando esse método ou o método startChatWithDepartmentKey(String departmentKey).

Como resultado, o método [onStateChange(ChatState oldState, ChatState newState)] (#changed-state-previous-state-to-new-state) da interface [ChatStateListener] (#chat-state-listener) pode ser chamado.

Método startChatWithFirstQuestionCustomFieldsDepartmentKey(String firstQuestion, String customFields, String departmentKey)

O método inicia um chat com campos adicionais e departamento e envia a primeira mensagem do visitante ao mesmo tempo.

Em termos do serviço Rox.Chat, ele altera o estado atual do chat, representado pelo tipo ChatState, para QUEUE.

O parâmetro firstQuestion é a primeira mensagem do usuário. O tipo é String.

Parâmetro customFields - campos adicionais no formato JSON. Tipo - String.

Parâmetro departmentKey - valor da chave do departamento que pode ser obtido pelo método getKey() da interface Department. O tipo é String.

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de um thread diferente daquele em que o objeto RoxSession foi criado.

Quando um usuário envia uma mensagem ou um arquivo, o chat é iniciado automaticamente, mas se o estado atual for VisitSessionStateDEPARTMENT_SELECTION, o chat deverá ser iniciado usando esse método ou o método startChatWithDepartmentKey(String departmentKey).

Como resultado, o método [onStateChange(ChatState oldState, ChatState newState)] (#changed-state-previous-state-to-new-state) da interface [ChatStateListener] (#chat-state-listener) pode ser chamado.

Método closeChat() (@deprecated)

O método envia um sinal para o serviço Rox.Chat de que o visitante terminou o bate-papo. Em termos do serviço Rox.Chat, altera o estado atual do chat, representado pelo tipo ChatState, para CLOSED_BY_VISITOR.

Não aceita parâmetros.

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes. A chamada desse método é opcional.

A velocidade de execução do método depende da velocidade de recebimento de uma resposta do servidor.

Como resultado, o método onStateChange(ChatState oldState, ChatState newState) da interface ChatStateListener pode ser chamado.

Método setChatRead()

O método envia um sinal para o serviço Rox.Chat de que o visitante leu o chat. Não aceita parâmetros.

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes. A chamada desse método é opcional.

Método setVisitorTyping(String draftMessage)

O método é usado para enviar um sinal ao serviço Rox.Chat de que o visitante está digitando uma mensagem (ou parou de digitá-la).

Se o método for chamado várias vezes consecutivas, o rascunho será enviado ao serviço Rox.Chat não com a mesma frequência, mas não mais do que uma vez por segundo.

O parâmetro draftMessage é a mensagem que o visitante já inseriu no campo correspondente, mas não a enviou. Tipo - String, o valor do parâmetro null corresponde à situação em que o visitante parou de digitar a mensagem ou apagou a mensagem escrita do campo de entrada.

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes.

O resultado do método depende da velocidade da rede.

Método sendMessage(String message, String data, DataMessageCallback dataMessageCallback)

O método é usado para enviar a mensagem de um visitante para o serviço Rox.Chat.

O parâmetro message é a mensagem a ser enviada. O tipo é String.

O parâmetro data é usado para enviar os parâmetros da mensagem para o servidor (se a versão do servidor suportar essa funcionalidade) no formato JSON. O tipo é String.

O parâmetro dataMessageCallback é um objeto que implementa os métodos da interface DataMessageCallback.

Retorna uma ID gerada aleatoriamente para essa mensagem, que pode ser usada para identificar essa mensagem específica na lógica do aplicativo. O tipo é Message.Id.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes. Se os objetos MessageTracker e MessageListener existirem, o envio de uma mensagem chamará a interface messageAdded(Message before, Message message) MessageListener com uma nova mensagem com status SENDING do tipo enumerado SendStatus.

A velocidade de execução do método depende da velocidade de recebimento da resposta do servidor. Vários métodos [MessageListener] (#message-listener) podem ser chamados como resultado da resposta do servidor.

Método sendMessage(String message, boolean isHintQuestion)

O método é usado para enviar a mensagem de um visitante para o serviço Rox.Chat.

O parâmetro message é a mensagem a ser enviada. O tipo é String.

O parâmetro isHintQuestion é usado se o aplicativo tiver seu próprio mecanismo de exibição de dicas para o usuário. Tipo - boolean. Caso o visitante não digite a mensagem manualmente, mas escolha um dos prompts oferecidos, o valor do parâmetro deverá ser true, e false - no caso oposto. O parâmetro é opcional e pode ser omitido.

Retorna uma ID gerada aleatoriamente para essa mensagem, que pode ser usada para identificar essa mensagem específica na lógica do aplicativo. O tipo é Message.Id.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes. Se os objetos MessageTracker e MessageListener existirem, o envio de uma mensagem chamará a interface messageAdded(Message before, Message message) MessageListener com uma nova mensagem com status SENDING do tipo enumerado SendStatus.

A velocidade de execução do método depende da velocidade de recebimento da resposta do servidor. Vários métodos MessageListener podem ser chamados como resultado da resposta do servidor.

Método sendMessage(String message)

Corresponde totalmente ao método [send(String message, boolean isHintQuestion)] (#send-message-is-hint-question) com o parâmetro isHintQuestion omitido.

Method sendFile(File file file, String name, String mimeType, SendFilesCallback callback)

O método é usado para enviar um arquivo do visitante para o operador.

O parâmetro file é o próprio arquivo no formato File.

O parâmetro name é o nome do arquivo. O tipo é String.

O parâmetro mimeType é o tipo MIME do arquivo que está sendo enviado. O tipo é String.

O parâmetro callback é um objeto que implementa os métodos da interface SendFilesCallback.

Retorna um ID gerado aleatoriamente para essa mensagem, que pode ser usado para identificar essa mensagem específica na lógica do aplicativo. (O arquivo que está sendo enviado também é um tipo de mensagem.) O tipo é Message.Id.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes. Se os objetos MessageTracker e MessageListener existirem, o envio de uma mensagem chamará a interface messageAdded(Message before, Message message) MessageListener com uma nova mensagem com status SENDING do tipo enumerado SendStatus.

A velocidade de execução do método depende da velocidade de recebimento da resposta do servidor. Vários métodos [MessageListener] (#message-listener) podem ser chamados como resultado da resposta do servidor.

Método newMessageTracker(MessageListener listener)

O método é usado para obter uma instância da classe MessageTracker.

O parâmetro listener é um objeto da classe que implementa os métodos da interface MessageListener.

Retorna uma instância da classe MessageTracker correspondente ao objeto MessageStream atual.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes. A obtenção de uma nova instância da classe MessageTracker destrói automaticamente a instância anterior da classe MessageTracker.

Method setVisitSessionStateListener(VisitSessionStateListener visitSessionStateListener)

O método passa para o SDK uma referência a um objeto que implementa os métodos da interface visitSessionStateListener.

O parâmetro visitSessionStateListener é um objeto que implementa os métodos da interface visitSessionStateListener.

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes.

Método setChatStateListener(ChatStateListener listener)

O método passa uma referência de objeto para o SDK que implementa os métodos da interface ChatStateListener.

O parâmetro chatStateListener é um objeto que implementa os métodos da interface ChatStateListener.

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes.

Método setCurrentOperatorChangeListener(CurrentOperatorChangeListener listener)

O método passa para o SDK uma referência a um objeto que implementa os métodos da interface [CurrentOperatorChangeListener] (#current-operator-change-listener).

O parâmetro listener é um objeto que implementa os métodos da interface CurrentOperatorChangeListener.

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes.

Método setDepartmentListChangeListener(DepartmentListChangeList departmentListChangeListener)

O método passa para o SDK uma referência a um objeto que implementa os métodos da interface departmentListChangeListener.

O parâmetro departmentListChangeListener é um objeto que implementa os métodos da interface DepartmentListChangeListener.

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes.

Método setOperatorTypingListener(OperatorTypingListener listener)

O método passa para o SDK uma referência a um objeto que implementa os métodos da interface OperatorTypingListener.

O parâmetro listener é um objeto que implementa os métodos da interface OperatorTypingListener.

Não retorna nada.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes.

Método setLocationSettingsChangeListener(LocationSettingsChangeListener locationSettingsChangeListener)

O método passa para o SDK uma referência a um objeto que implementa os métodos da interface [LocationSettingsChangeListener] (#location-settings-change-listener).

O parâmetro locationSettingsChangeListener é um objeto que implementa os métodos da interface [LocationSettingsChangeListener] (#location-settings-change-listener).

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Method setOnlineStatusChangeListener(OnlineStatusChangeListener onlineStatusChangeListener)

O método passa para o SDK uma referência a um objeto que implementa os métodos da interface [OnlineStatusChangeListener] (#session-online-status-change-listener).

O parâmetro onlineStatusChangeListener é um objeto que implementa os métodos da interface [OnlineStatusChangeListener] (#session-online-status-change-listener).

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método setUnreadByOperatorTimestampChangeListener(UnreadByOperatorTimestampChangeListener listener)

O método passa para o SDK uma referência a um objeto que implementa os métodos da interface UnnreadByOperatorTimestampChangeListener`.

O parâmetro listener é um objeto que implementa os métodos da interface UnnreadByOperatorTimestampChangeListener`.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método setUnreadByVisitorMessageCountChangeListener(UnreadByVisitorMessageCountChangeListener listener)

O método passa para o SDK uma referência a um objeto que implementa os métodos da interface UnnreadByVisitorMessageCountChangeListener`.

O parâmetro listener é um objeto que implementa os métodos da interface UnnreadByVisitorMessageCountChangeListener`.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método setUnreadByVisitorTimestampChangeListener(UnreadByVisitorTimestampChangeListener listener)

O método passa para o SDK uma referência a um objeto que implementa os métodos da interface UnnreadByVisitorTimestampChangeListener`.

O parâmetro listener é um objeto que implementa os métodos da interface UnnreadByVisitorTimestampChangeListener`.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Method uploadFilesToServer(File file, String name, String mimeType, UploadFileToServerCallback uploadFileToServerCallback)

Um método para fazer upload de arquivos para o servidor Rox.Chat.

O parâmetro file é o próprio arquivo no formato File.

O parâmetro name é o nome do arquivo. O tipo é String.

O parâmetro mimeType é o tipo MIME do arquivo a ser transferido. O tipo é String.

O parâmetro uploadFileToServerCallback é um objeto que implementa os métodos da interface UploadFileToServerCallback.

Retorna uma ID gerada aleatoriamente para essa mensagem, que pode ser usada para identificar essa mensagem específica na lógica do aplicativo. O tipo é Message.Id.

Lança uma IllegalStateException se o objeto RoxSession tiver sido desativado (consulte o método destroy()).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente daquela em que o objeto RoxSession foi criado.

Não requer que nenhum outro método seja chamado antes.

A velocidade de execução do método depende da velocidade da resposta do servidor. Como resultado da resposta do servidor, vários métodos MessageListener podem ser chamados.


Interface DataMessageCallback

Uma interface cujos métodos são implementados por alguma classe de aplicativo.

Um objeto que obedece à interface pode ser passado como parâmetro para o método callback sendMessage(String message, String data, DataMessageCallback dataMessageCallback) da interface MessageStream.

Método onSuccess(Message.Id id id)

O método é chamado quando uma mensagem é enviada com sucesso usando o método sendMessage(String message, String data, DataMessageCallback dataMessageCallback) da interface MessageStream.

O parâmetro ID é o ID da mensagem correspondente. O tipo é Message.Id.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

O método será chamado após a conclusão do método sendMessage(String message, String data, DataMessageCallback dataMessageCallback).

Method onFailure(Message.Id id id, RoxError<DataMessageError> error)

Chamado quando uma mensagem é enviada sem sucesso usando o método sendFile(File file, String name, String mimeType, SendFilesCallback callback) da interface MessageStream.

O parâmetro ID é o ID da mensagem correspondente. O tipo é Message.Id.

O parâmetro error é o erro que impediu que a mensagem fosse enviada com êxito. O tipo é RoxError<DataMessageError>.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

O método será chamado depois que o método sendMessage(String message, String data, DataMessageCallback dataMessageCallback) for concluído.


Interface DeleteUploadedFileCallback

Um objeto que obedece à interface pode ser passado no parâmetro deleteUploadedFileCallback do método deleteUploadedFiles(String fileGuid, DeleteUploadedFileCallback deleteUploadedFileCallback) da interface MessageStream.

Método onSuccess()

O método é chamado quando um arquivo é carregado com êxito usando o método deleteUploadedFiles(String fileGuid, DeleteUploadedFileCallback deleteUploadedFileCallback) da interface MessageStream.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

O método será chamado depois que o método deleteUploadedFiles(String fileGuid, DeleteUploadedFileCallback deleteUploadedFileCallback) for concluído.

Método onFailure(RoxError<DeleteUploadedFileError> error)

Chamado quando o upload de arquivos falha usando o método deleteUploadedFiles(String fileGuid, DeleteUploadedFileCallback deleteUploadedFileCallback) da interface MessageStream.

O parâmetro error é o erro que impediu o upload bem-sucedido do arquivo. O tipo é DeleteUploadedFileError.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

O método será chamado depois que o método deleteUploadedFiles(String fileGuid, DeleteUploadedFileCallback deleteUploadedFileCallback) for concluído.


Interface KeyboardRequest

A interface é uma abstração que representa informações sobre o botão selecionado no teclado do chatbot.

A interface é implementada por entidades internas do SDK. O objeto KeyboardRequest pode ser recuperado usando o método getKeyboardRequest() da interface Message.

Método getButtons()

Um método que pode ser usado para obter o botão selecionado de um elemento de teclado.

Não recebe parâmetros.

Retorna um objeto KeyboardButtons.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getMessageId()

Um método que pode ser usado para obter o ID da mensagem na qual o botão foi selecionado.

Não recebe parâmetros.

Retorna o nome do ID da mensagem em formato de texto. O tipo é String.

Não gera exceções.

Não requer que nenhum outro método seja chamado antes.


Interface SendFilesCallback

Uma interface cujos métodos são implementados por alguma classe de aplicativo.

Um objeto sujeito à interface pode ser passado no parâmetro sendFilesCallback do método sendFiles(List<UploadedFile> uploadedFiles, SendFilesCallback sendFilesCallback) da interface MessageStream.

Método onSuccess(Message.Id id id)

O método é chamado quando um arquivo é enviado com êxito usando o método sendFiles(List<UploadedFile> uploadedFiles, SendFilesCallback sendFilesCallback) da interface MessageStream.

O parâmetro ID é o ID da mensagem correspondente. O tipo é Message.Id.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

O método será chamado depois que o método sendFiles(List<UploadedFile> uploadedFiles, SendFilesCallback sendFilesCallback) for concluído.

Method onFailure(Message.Id id id, RoxError<SendFileError> error)

Chamado quando o envio de um arquivo falha usando o método sendFiles(List<UploadedFile> uploadedFiles, SendFilesCallback sendFilesCallback) da interface MessageStream.

O parâmetro ID é o ID da mensagem correspondente. O tipo é Message.Id.

O parâmetro error é o erro que impediu que o arquivo fosse enviado com êxito. O tipo é RoxError<SendFileError>.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

O método será chamado depois que o método sendFiles(List<UploadedFile> uploadedFiles, SendFilesCallback sendFilesCallback) for concluído.


Interface SendStickerCallback

Um objeto que implementa a interface pode ser passado no parâmetro sendStickerCallback do método sendSticker(int, SendStickerCallback) do protocolo MessageStream.

Método onSuccess()

O método é chamado quando a chamada ao método sendSticker(int, SendStickerCallback) do protocolo MessageStream é bem-sucedida.

Não aceita parâmetros.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método onFailure(RoxError sendStickerErrorRoxError)

O método é chamado quando o método sendSticker(int, SendStickerCallback) do protocolo MessageStream falha.

O parâmetro sendStickerErrorRoxError é o erro que ocorreu. O tipo é RoxError.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.


Interface RateOperatorCallback

Um objeto que implementa a interface pode ser passado no parâmetro rateOperatorCallback do método rateOperator(Operator.Id operatorId, int rate, RateOperatorCallback rateOperatorCallback) do protocolo MessageStream.

Método onSuccess()

O método é chamado quando a chamada ao método rateOperator(Operator.Id operatorId, int rate, RateOperatorCallback rateOperatorCallback) do protocolo MessageStream é bem-sucedida.

Não aceita parâmetros.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método onFailure(RoxError<RateOperatorError> rateOperatorError)

O método é chamado quando a chamada ao método rateOperator(Operator.Id operatorId, int rate, RateOperatorCallback rateOperatorCallback) do protocolo MessageStream falha.

O parâmetro rateOperatorError é o erro que ocorreu. O tipo é RoxError<RateOperatorError>.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.


Interface visitSessionStateListener

Uma interface cujos métodos são implementados por alguma classe de aplicativo. Um objeto que implementa a interface pode ser passado no parâmetro visitSessionStateListener do método setVisitSessionStateListener(VisitSessionStateListener visitSessionStateListener) da interface MessageStream.

Usado para rastrear alterações no status da sessão.

Método onStateChange(VisitSessionState previousState, VisitSessionState newState)

O método é chamado quando o status da sessão é alterado.

O parâmetro previousState é o status anterior da sessão. O tipo é visitSessionState.

O parâmetro newState é o novo status da sessão. Tipo - VisitSessionState.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.


Interface DepartmentListChangeListener

Uma interface cujos métodos são implementados por alguma classe de aplicativo. Um objeto que implementa a interface pode ser passado no parâmetro departmentListChangeListener do método setDepartmentListChangeListener(DepartmentListChangeListChangeListener departmentListChangeListener) da interface MessageStream.

Usado para rastrear alterações na lista de departamentos.

Método receivedDepartmentList(List<Department> departmentList)

O método é chamado quando uma nova lista de departamentos é recebida.

O parâmetro departmentList é a lista de departamentos recebida. O tipo é List<[Department](#department)>.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.


Interface LocationSettings

Os métodos da interface são implementados por entidades internas do SDK. Uma instância de uma classe que implementa a interface pode ser recuperada usando o método getLocationSettings() do objeto MessageStream.

Configurações específicas para o local atual podem ser recuperadas usando os métodos dessa interface.

Método areHintsEnabled()

Com esse método, é possível recuperar se as configurações de posicionamento atuais exigem a exibição de dicas para o visitante ao digitar uma nova mensagem.

Não aceita parâmetros.

Retorna um valor booleano: true se as dicas devem ser mostradas e false caso contrário.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.


Interface ChatStateListener

Uma interface cujos métodos são implementados por alguma classe de aplicativo. Um objeto que implementa a interface pode ser passado no parâmetro listener do método setChatStateListener(ChatStateListener listener) da interface MessageStream.

Usado para rastrear alterações no estado do chat atual.

Método onStateChange(ChatState oldState, ChatState newState)

O método é chamado quando o estado atual do chat é alterado.

O parâmetro oldState é o estado anterior do chat. O tipo é ChatState.

O parâmetro newState é o novo estado do chat. Tipo - ChatState.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.


Interface CurrentOperatorChangeListener

Uma interface cujos métodos são implementados por alguma classe de aplicativo. Um objeto que implementa a interface pode ser passado no parâmetro listener do método setCurrentOperatorChangeListener(CurrentOperatorChangeListener listener)da interface MessageStream.

Usado para rastrear a alteração do operador de chat atual.

Método onOperatorChanged(Operator oldOperator, Operator newOperator)

O método é chamado quando o operador de bate-papo atual foi alterado (ou o operador foi embora).

O parâmetro oldOperator é o operador anterior. O tipo é Operator.

Parâmetro newOperator - novo estado do chat. Tipo - Operator. Recebe o valor null caso o operador tenha deixado o chat.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.


Interface OperatorTypingListener

Uma interface cujos métodos são implementados por alguma classe do aplicativo móvel. Um objeto da classe que implementa a interface pode ser passado no parâmetro listener do método setOperatorTypingListener(OperatorTypingListener listener) da interface MessageStream.

Usado para notificar quando um operador começa a digitar uma mensagem.

Método onOperatorTypingStateChanged(boolean isTyping)

O método é chamado quando o operador de chat atual começa a digitar uma mensagem.

O parâmetro isTyping é um valor booleano que assume o valor true se o operador estiver digitando uma mensagem e false caso contrário.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.


Interface LocationSettingsChangeListener

Uma interface cujos métodos são implementados por alguma classe do aplicativo móvel. Um objeto da classe que implementa a interface pode ser passado no parâmetro locationSettingsChangeListener do método setLocationSettingsChangeListener(LocationSettingsChangeListener locationSettingsChangeListener) da interface MessageStream.

Usado para rastrear alterações nas configurações de posicionamento atuais.

Método onLocationSettingsChanged(LocationSettings oldLocationSettings, LocationSettings, newLocationSettings)

O método é chamado quando as configurações de localização atuais são alteradas.

O parâmetro oldLocationSettings é o valor anterior das configurações de local atuais. O tipo é LocationSettings.

O parâmetro newLocationSettings é o novo valor das configurações de local atuais. Tipo - LocationSettings.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.


Interface OnlineStatusChangeListener

A interface é adaptada por entidades no aplicativo móvel. Um objeto de classe que implementa a interface pode ser passado no parâmetro onlineStatusChangeListener do método setOnlineStatusChangeListener(OnlineStatusChangeListener onlineStatusChangeListener) da interface MessageStream.

Usado para receber notificações quando o status da sessão é alterado. O status da sessão é descrito em valores do tipo enumerado [OnlineStatus] (#session-online-status).

Method onOnOnlineStatusChanged(OnlineStatus oldOnlineStatus, OnlineStatus newOnlineStatus)

O método é chamado quando o status da sessão é alterado.

O parâmetro oldOnlineStatus é o status anterior da sessão. O tipo é OnlineStatus.

Parâmetro newOnlineStatus - novo status de sessão (recebido). Tipo - OnlineStatus.

Não retorna nada.

Não lança exceções.

O método é chamado como resultado de uma notificação recebida do serviço Rox.Chat.


Interface UnreadByOperatorTimestampChangeListener

Uma interface cujos métodos são implementados por alguma classe do aplicativo móvel. Um objeto da classe que implementa a interface pode ser passado no parâmetro listener do método setUnreadByOperatorTimestampChangeListener(UnreadByOperatorTimestampChangeListener listener) da interface MessageStream.

Método onUnreadByOperatorTimestampChanged(Date newTimestamp)

Um método que é chamado quando o parâmetro retornado pelo método [getUnreadByOperatorTimestamp()] (#get-unread-by-operator-timestamp) é alterado.

O parâmetro newTimestamp é o novo valor retornado pelo método getUnreadByOperatorTimestamp().

Não retorna nada.

Não lança exceções.

O método é chamado como resultado de uma notificação recebida do serviço Rox.Chat.


Interface UnreadByVisitorMessageCountChangeListener

Uma interface cujos métodos são implementados por alguma classe do aplicativo móvel. Um objeto da classe que implementa a interface pode ser passado no parâmetro listener do método setUnreadByVisitorMessageCountChangeListener(UnreadByVisitorMessageCountChangeListener listener) da interface MessageStream.

!!! Note “N.B.” O objeto de classe que implementa a interface só pode ser recuperado depois que a sessão for iniciada usando o método resume(). Esse objeto aumenta o valor do número de mensagens não lidas enviando solicitações apropriadas ao servidor a cada 30 segundos.

Método onUnreadByVisitorMessageCountChanged(int newMessageCount)

Um método que é chamado quando o parâmetro retornado pelo método [getUnreadByVisitorMessageCount()] (#get-unread-by-visitor-message-count) é alterado.

O parâmetro newMessageCount é o novo valor retornado pelo método getUnreadByVisitorMessageCount().

Não retorna nada.

Não lança exceções.

O método é chamado como resultado de uma notificação recebida do serviço Rox.Chat.


Interface UnreadByVisitorTimestampChangeListener

Uma interface cujos métodos são implementados por alguma classe do aplicativo móvel. Um objeto da classe que implementa a interface pode ser passado no parâmetro listener do método setUnreadByVisitorTimestampChangeListener(UnreadByVisitorTimestampChangeListener listener) da interface MessageStream.

Método onUnreadByVisitorTimestampChanged(Date newTimestamp)

Um método que é chamado quando o parâmetro retornado pelo método [getUnreadByVisitorTimestamp()] (#get-unread-by-visitor-timestamp) é alterado.

O parâmetro newTimestamp é o novo valor retornado pelo método getUnreadByVisitorTimestamp().

Não retorna nada.

Não lança exceções.

O método é chamado como resultado de uma notificação recebida do serviço Rox.Chat.


Interface Config

Método getId()

Use esse método para obter o ID da configuração da pesquisa.

Não aceita parâmetros.

Retorna o ID da configuração. Tipo int.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getDescriptor()

Use esse método para obter o objeto descritor para essa pesquisa.

Não aceita nenhum parâmetro.

Retorna uma instância da classe Descriptor.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getVersion()

Use esse método para obter as informações de versão da configuração atual da pesquisa.

Não aceita nenhum parâmetro.

Retorna o número da versão. Tipo String.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.


Interface TokenCallback

Um objeto que implementa a interface pode ser passado no parâmetro tokenCallback do método removePushToken(TokenCallback tokenCallback) da classe SessionBuilder.

Método onSuccess()

O método é chamado se a chamada ao método removePushToken(TokenCallback tokenCallback) da classe SessionBuilder for bem-sucedida.

Não aceita parâmetros.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método onFailure(RoxError<TokenCallback> RoxError)

O método é chamado quando a chamada ao método removePushToken(TokenCallback tokenCallback) da classe SessionBuilder falha.

O parâmetro RoxError é o erro que ocorreu. O tipo é RoxError<TokenError>.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.


Tipo enumerado TokenError

Possíveis erros que podem ser passados para o parâmetro RoxError do método onFailure(RoxError<TokenError> RoxError) da interface TokenCallback.

Case SOCKET_TIMEOUT_EXPIRED

O tempo de espera para cancelar a vinculação do token push expirou.

Caso `UNKNOWN

O código de erro recebido não é compatível com esta versão do Rox.Chat Mobile SDK.


Interface SessionCallback

Um objeto que implementa a interface pode ser passado no parâmetro callback do método build(RoxSession.SessionCallback callback) da classe SessionBuilder.

Método onSuccess()

O método é chamado quando a chamada ao método build(RoxSession.SessionCallback callback) da classe SessionBuilder.

Não aceita parâmetros.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Method onFailure(RoxError<SessionError> sessionError)

O método é chamado quando a chamada ao método build(RoxSession.SessionCallback callback) da classe SessionBuilder.

Não aceita parâmetros.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.


tipo enumerado SessionError

Possíveis erros que podem ser passados para o parâmetro sessionError do método onFailure(RoxError<SessionError> sessionError) da interface SessionCallback.

case REQUEST_ERROR

Ocorreu um erro ao enviar uma solicitação de inicialização para o servidor.

case INVALID_PARAMETER_VALUE

Um parâmetro de sessão tem um valor inválido.

case UNKNOWN

O código de erro recebido não é suportado por esta versão do Rox.Chat Mobile SDK.


Tipo enumerado AttachmentState

Usado para determinar o estado do arquivo carregado no servidor (consulte o método getState() da interface Attachment).

Caso ERROR

Ocorreu um erro ao fazer upload de um arquivo para o servidor. Nesse caso, o método getErrorType() da interface Attachment conterá o tipo de erro e o texto getErrorMessage().

Case READY

O arquivo está disponível para download.

Case UPLOAD

O arquivo está sendo carregado no servidor.


Tipo enumerado ChatState

Possíveis opções de estado do chat (consulte o método getChatState() da interface MessageStream).

O estado inicial é [NONE] (#nenhum). Se o método startChat() ou um dos métodos de envio de mensagens da interface MessageStream for chamado, o estado será alterado para QUEUE. Quando o operador aceita um chat no processamento, seu estado (chat) é alterado para [CHATTING] (#chatting). Quando o método closeChat() da interface MessageStream é chamado, o estado do chat é alterado para CLOSED_BY_VISITOR. Se o chat foi fechado por um operador - para CLOSED_BY_OPERATOR. Depois que o chat tiver sido fechado pelo visitante e pelo operador, seu estado retornará a [NONE] (#nenhum). Isso também acontece depois de um longo período sem atividade no chat. O bate-papo também pode ser reiniciado pelo operador: nesse caso, o estado do bate-papo assume o valor [INVITATION] (#convite) e, depois que o visitante escreve algo de volta, o estado do bate-papo assume o valor [CHATTING] (#chatting).

Caso CHATTING

O estado do chat quando o operador processa um chat iniciado pelo visitante ou quando um visitante responde a uma mensagem em um chat fechado anteriormente.

A partir desse estado, o chat pode fazer a transição para [CLOSED_BY_OPERATOR] (fechado pelo operador), [CLOSED_BY_VISITOR] (fechado pelo visitante) ou [NONE] (não fechado).

Case CLOSED_BY_OPERATOR

O estado de uma sala de chat quando ela foi fechada por um operador, mas ainda não foi fechada por um visitante.

A partir desse estado, o chat pode ir para [NONE] (#nenhum) ou [QUEUE] (#fila) se o visitante escrever outra coisa.

Case CLOSED_BY_VISITOR

O estado do chat quando ele foi fechado pelo visitante, mas ainda não foi fechado pelo operador.

A partir desse estado, o chat pode ir para [NONE] (#nenhum) ou [QUEUE] (#fila) se o visitante escrever outra coisa.

Case INVITATION

O estado do chat quando ele foi iniciado pelo operador.

A partir desse estado, o chat pode ir para [NONE] (#nenhum) ou [CHATTING] (#chatting).

Caso NONE

Denota a ausência de bate-papo.

A partir desse estado, o bate-papo pode ir para INVITATION ou QUEUE.

Case QUEUE

O estado do chat quando ele foi iniciado por um visitante.

A partir desse estado, o chat pode ir para NONE, CHATTING ou CLOSED_BY_OPERATOR.

Caso UNKNOWN

Esse estado é recebido pelo chat quando uma sessão é criada, antes da primeira atualização de estado do chat recebida do servidor.

Além disso, esse estado pode ser recebido se o SDK não puder identificá-lo (por exemplo, o servidor tem novos valores de estado de bate-papo que a versão atual do SDK não sabe como tratar).


Tipo enumerado DataMessageError

Possíveis erros que podem ser passados para o parâmetro error do método onFailure(Message.Id id, RoxError<DataMessageError> error) da interface DataMessageCallback.

Case UNKNOWN

O código de erro recebido não é suportado por esta versão do Rox.Chat Mobile SDK.

Case QUOTED_MESSAGE_CANNOT_BE_REPLIED

A mensagem citada não está marcada com o sinalizador canBeReplied ou o sinalizador não está definido como true

Case QUOTED_MESSAGE_FROM_ANOTHER_VISITOR

A ID da mensagem enviada corresponde a outro visitante.

Case QUOTED_MESSAGE_MULTIPLE_IDS

O ID da mensagem enviada corresponde a várias mensagens (provavelmente há um erro no banco de dados).

Caso QUOTED_MESSAGE_REQUIRED_ARGUMENTS_MISSING

Indica que um ou mais argumentos do sistema de citação implementado no servidor não foram enviados.

Caso QUOTED_MESSAGE_WRONG_ID

Foi enviado um ID inválido da mensagem citada.


Interface SearchMessagesCallback

Um objeto que implementa a interface pode ser passado no parâmetro searchMessagesCallback do método searchMessages(String query, SearchMessagesCallback searchMessagesCallback) do protocolo MessageStream.

Método onResult(List messages)

O método é chamado no resultado bem-sucedido da chamada do método searchMessages(String query, SearchMessagesCallback searchMessagesCallback) do protocolo MessageStream.

O parâmetro messages é uma lista de mensagens que foram encontradas como resultado da consulta de pesquisa.

Não retorna nada.

Não lança exceções.

Não requer a chamada prévia de nenhum outro método. Tipo - List.


Interface SendKeyboardCallback

Uma interface cujos métodos são implementados por alguma classe de aplicativo.

Um objeto que obedece a essa interface pode ser passado como parâmetro para o método callback sendKeyboardRequest(String requestMessageId, String buttonId, sendKeyboardCallback sendKeyboardCallback sendKeyboardCallback) da interface MessageStream.

Método onSuccess(Message.Id id id)

O método é chamado quando uma mensagem é enviada com sucesso usando o método sendKeyboardRequest(String requestMessageId, String buttonId, sendKeyboardCallback sendKeyboardCallback sendKeyboardCallback) da interface MessageStream.

O parâmetro id é o ID da mensagem correspondente. O tipo é Message.Id.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

O método será chamado depois que o método sendKeyboardRequest(String requestMessageId, String buttonId, sendKeyboardCallback sendKeyboardCallback) for concluído.

Método onFailure(Message.Id id id, RoxError<SendKeyboardError> error)

Chamado quando há falha no envio de mensagens usando o método sendKeyboardRequest(String requestMessageId, String buttonId, sendKeyboardCallback sendKeyboardCallback) da interface MessageStream.

O parâmetro id é o ID da mensagem correspondente. O tipo é RoxError.

O parâmetro error é o erro que impediu que a mensagem fosse enviada com êxito. O tipo é RoxError<SendFileError>.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

O método será chamado depois que o método sendKeyboardRequest(String requestMessageId, String buttonId, sendKeyboardCallback sendKeyboardCallback) for concluído.


Tipo enumerado DeleteUploadedFileError

Possíveis erros que podem ser passados para o parâmetro error do método onFailure(RoxError<DeleteUploadedFileError> error) da interface DeleteUploadedFileCallback.

Case FILE_NOT_FOUND

Indica que o arquivo não foi encontrado no servidor.

Case FILE_HAS_BEEN_SENT

Indica que o arquivo está anexado a uma mensagem e não pode ser excluído.

Case UNKNOWN

Erro desconhecido.


Tipo enumerado SendKeyboardError

Possíveis erros que podem ser passados para o parâmetro error do método onFailure(Message.Id id, RoxError<SendKeyboardError> error) da interface SendKeyboardCallback.

Case NO_CHAT

Uma tecla do teclado do chatbot foi enviada para o chat errado.

Case BUTTON_ID_NO_SET

O ID do botão não está definido.

Caso REQUEST_MESSAGE_ID_NOT_SET

O identificador da mensagem de solicitação não está definido.

Caso CAN_NOT_CREATE_RESPONSE

Não é possível criar uma resposta.

Caso UNKNOWN

Erro desconhecido.


Tipo enumerado SendFileError

Possíveis erros que podem ser passados para o parâmetro error do método onFailure(Message.Id id, RoxError<SendFileError> error) da interface SendFilesCallback.

Case FILE_SIZE_EXCEEDED

Indica que o tamanho do arquivo excede o tamanho máximo definido nas configurações do servidor.

Case FILE_NOT_FOUND

O arquivo selecionado para envio não foi encontrado no dispositivo.

Case FILE_TYPE_NOT_ALLOWED

Indica que o tipo de arquivo não está entre os tipos permitidos definidos nas configurações do servidor.

Case FILE_SIZE_TOO_SMALL

Indica que o arquivo é muito pequeno para ser carregado.

Case MAX_FILES_COUNT_PER_CHAT_EXCEEDED

Indica que o número máximo de arquivos carregados no chat foi excedido.

Caso UPLOADED_FILE_NOT_FOUND

Método incorreto de transferência de arquivos.

Caso UNKNOWN

Erro desconhecido.

Caso UNAUTHORIZED

Erro desconhecido.


Tipo enumerado SendFilesError

Possíveis erros que podem ser passados para o parâmetro sendFilesError do método onFailure(Message.Id id, RoxError<SendFileError> error) da interface SendFilesCallback.

Case FILE_NOT_FOUND

Indica que a mensagem não contém um arquivo.

Case MAX_FILES_COUNT_PER_MESSAGE

A mensagem excedeu o número de arquivos a serem enviados em uma mensagem.

Case UNKNOWN

Erro desconhecido.


Tipo enumerado State

Usado para determinar o estado da mensagem citada (consulte o método getState() da interface Keyboard).

Case PENDING

Ocorre quando o teclado está ativo e as teclas podem ser pressionadas.

Caso CANCELLED

Ocorre quando o teclado está inativo e as teclas não podem ser pressionadas.

Caso COMPLETED

Ocorre quando o teclado está inativo e uma das teclas está selecionada.


Tipo enumerado RateOperatorError

Possíveis erros que podem ser passados para o parâmetro error do método onFailure(RoxError<RateOperatorError> rateOperatorError) do protocolo rateOperatorCallback.

Caso NO_CHAT

Ocorre quando se tenta enviar uma taxa de operador quando não há chat.

Caso OPERATOR_NOT_IN_CHAT

Ocorre quando um ID de operador não pertencente ao chat atual foi passado ao tentar enviar uma avaliação de operador.


Tipo enumerado OnlineStatus

Possíveis status de sessão.

Pode ser recuperado usando o método [OnlineStatusChanged(OnlineStatus oldOnlineStatus, OnlineStatus newOnlineStatus)] (#changed-session-online-status-previous-session-online-status-to-new-session-online-status) da interface [OnlineStatusChangeListener] (#session-online-status-change-listener).

Case BUSY_OFFLINE

Significa que o visitante não pode enviar mensagens de forma alguma.

Caso BUSY_ONLINE

Significa que o visitante pode enviar mensagens para a área off-line, mas o servidor pode rejeitá-las e retornar um erro.

Case OFFLINE

Significa que o visitante pode enviar mensagens para a zona off-line.

Case ONLINE

Significa que o visitante pode enviar mensagens sem nenhuma restrição.

Caso UNKNOWN

Indica que o SDK ainda não recebeu a primeira atualização de status da sessão do serviço Rox.Chat ou que o status da sessão não é compatível com a versão atual do SDK.


Tipo enumerado VisitSessionState

Possíveis status de sessão.

Case CHAT

Status do chat.

Case DEPARTMENT_SELECTION

Indica que foi feita uma tentativa de iniciar um chat sem seleção de departamento e que o servidor está configurado para tornar a seleção de departamento obrigatória.

A sessão espera iniciar um chat usando o método startChatWithDepartmentKey(String departmentKey).

Case IDLE

A sessão está ativa, mas o chat ainda não foi iniciado.

Case IDLE_AFTER_CHAT

A sessão está ativa, mas o chat já foi encerrado.

Case OFFLINE_MESSAGE

Off-line.

Case UNKNOWN

O status ainda não foi recebido ou não é compatível com a versão atual do Rox.Chat Mobile SDK.


Interface MessageTracker

A interface é implementada por entidades internas do SDK. Uma instância de uma classe que implementa a interface pode ser obtida usando o método newMessageTracker(MessageListener listener) da interface MessageStream.

Os métodos da interface são usados para manipular mensagens que existem no histórico de mensagens.

Método getLastMessages(int limit, getMessagesCallback callback)

O método é usado para solicitar mensagens do início do histórico de mensagens.

O parâmetro limitOfMessages é o número de mensagens seguintes, não mais do que o método deve solicitar. O tipo é int, o valor pode ser qualquer valor positivo maior que 1 (se um valor menor que 1 for passado, o método não fará nenhum trabalho).

O parâmetro callback é um objeto de uma classe que implementa a interface GetMessagesCallback.

Não retorna nada.

Lança uma illegalArgumentException se o valor do parâmetro limit for menor que 1.

Lança uma IllegalStateException se uma solicitação semelhante anterior ou uma solicitação getNextMessages(int limit, getMessagesCallback callback) não tiver sido concluída ou quando o objeto MessageTracker tiver sido desativado (consulte o método destroy()). O método destroy()), ou quando o objeto RoxSession correspondente tiver sido desativado (consulte o método destroy() da interface RoxSession).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente da thread na qual a instância correspondente de RoxSession foi criada.

Não requer que nenhum outro método seja chamado antes.

O método pode retornar o número de mensagens menor que o limite, mas isso não significa que não haja mais mensagens restantes. Em tal situação, o método pode ser reutilizado para continuar carregando mensagens. Se não houver mais mensagens, o método retornará null.

Method getNextMessages(int limit, getMessagesCallback callback)

O método é usado para solicitar mensagens do histórico de mensagens que ainda não foram exibidas no feed de mensagens atual.

O parâmetro limitOfMessages é o número de mensagens seguintes, não mais do que o método deve solicitar. O tipo é int, o valor pode ser qualquer valor positivo maior que 1 (se um valor menor que 1 for passado, o método não fará nenhum trabalho).

O parâmetro callback é um objeto de uma classe que implementa a interface GetMessagesCallback.

Não retorna nada.

Lança uma IllegalArgumentException se o valor do parâmetro limit for menor que 1.

Lança uma IllegalStateException se uma solicitação similar anterior ou uma solicitação getLastMessages(int limit, getMessagesCallback callback) não tiver sido concluída ou quando o objeto MessageTracker tiver sido desativado (consulte o método destroy()). O método destroy()), ou quando o objeto RoxSession correspondente tiver sido desativado (consulte o método destroy() da interface RoxSession).

Lança uma RuntimeException se o método tiver sido chamado de uma thread que não seja a thread na qual a instância correspondente de RoxSession foi criada.

Não requer que nenhum outro método seja chamado antes.

Método getAllMessages(GetMessagesCallback callback)

O método é usado para consultar de uma só vez todo o histórico de mensagens armazenado no dispositivo.

O parâmetro callback é um objeto de uma classe que implementa a interface *GetMessagesCallback.

Não retorna nada.

Lança uma IllegalStateException se o objeto MessageTracker tiver sido desativado (consulte o método destroy()method. method [destroy()](#message-tracker-destroy)) ou quando o objeto [RoxSession](#rox-session) correspondente tiver sido desativado (consulte o método [destroy()](#destroy) da interface [RoxSession`).

Não requer que nenhum outro método seja chamado antes.

Método resetTo(Message message)

O objeto [MessageTracker] (#message-tracker) armazena o intervalo atual de mensagens. Uma chamada a esse método pode “redefinir” o limite para o qual o objeto armazena o histórico de mensagens para uma mensagem específica.

O parâmetro message é a mensagem para a qual o limite do histórico de mensagens armazenadas deve ser “redefinido”. O tipo é Message.

Não retorna nada.

Lança uma IllegalStateException se a última solicitação usando o método getNextMessages(int limit, getMessagesCallback callback) não tiver sido concluída ou quando o objeto MessageTracker tiver sido desativado (consulte o método destroy()#message). O método [destroy()](#message-tracker-destroy)) ou quando o objeto [RoxSession](#rox-session) correspondente tiver sido desativado (consulte o método [destroy()](#destroy)da interface [RoxSession`).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente da thread na qual a instância correspondente de RoxSession foi criada.

Não requer que nenhum outro método seja chamado antes. O método só pode ser chamado depois que uma chamada anterior ao objeto MessageTracker tiver retornado um resultado; caso contrário, o método não fará nenhum trabalho.

Método destroy()

Desativa o objeto MessageTracker atual, após o qual nenhum método de interface poderá ser usado.

Não aceita parâmetros.

Não retorna nada.

Lança uma IllegalStateException quando o objeto MessageTracker tiver sido desativado (consulte o método destroy()}](#message-tracker-destroy)) ou quando o objeto [RoxSession](#rox-session) correspondente tiver sido desativado (consulte o método [destroy()](#destroy) da interface [RoxSession`).

Lança uma RuntimeException se o método tiver sido chamado de um thread diferente daquele em que a instância correspondente de RoxSession foi criada.

Não requer que nenhum outro método seja chamado antes. Não é necessário que seja chamado.

Método loadAllHistorySince(Message sinceMessage, getMessagesCallback messagesCallback)

O método é usado para solicitar mensagens do histórico de mensagens a partir da mensagem especificada.

O parâmetro sinceMessage é a mensagem da qual o histórico será recuperado. O tipo é Message.

O parâmetro messagesCallback é um objeto da classe que implementa a interface GetMessagesCallback.

Não retorna nada.

Lança uma IllegalStateException se uma solicitação semelhante anterior ou uma solicitação loadAllHistorySince(Message sinceMessage, getMessagesCallback messagesCallback) não tiver sido concluída ou quando o objeto MessageTracker tiver sido desativado (consulte o método [destroy(). O método destroy()), ou quando o objeto RoxSession correspondente tiver sido desativado (consulte o método destroy() da interface RoxSession).

Lança uma RuntimeException se o método tiver sido chamado de uma thread diferente da thread na qual a instância correspondente de RoxSession foi criada.

Não requer que nenhum outro método seja chamado antes.


Interface MessageListener

A interface deve ser adaptada por alguma classe de aplicativo. Os métodos da interface são chamados quando são feitas alterações no feed de mensagens.

Method messageAdded(Message before, Message message)

O método é chamado quando as mensagens são adicionadas ao feed atual.

É importante ressaltar que chamar o método não é uma indicação de que uma nova mensagem foi recebida: é uma inserção lógica de mensagens no feed. Por exemplo, na primeira conexão bem-sucedida com o servidor, o SDK recupera todo o histórico de mensagens. Se ele contiver mensagens que estejam no período de tempo já exibido no feed, esse método também será chamado em cada uma dessas mensagens.

O parâmetro before é a mensagem antes da qual a mensagem recebida deve ser inserida. O tipo é Message. Se o valor desse parâmetro for null, a mensagem recebida deverá ser inserida no final da lista.

Parâmetro message - mensagem recebida. O tipo é Message.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método messageRemoved(Message message)

O método é chamado quando uma mensagem é removida do feed.

O parâmetro message é a mensagem excluída. O tipo é Message.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método allMessagesRemoved()

O método é chamado quando todas as mensagens são removidas do feed.

Não aceita nenhum parâmetro.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método messageChanged(Message from, Message to)

O método é chamado quando qualquer mensagem é alterada.

As mensagens em si não são alteradas: um objeto é substituído por outro. Portanto, quando esse método é chamado, você pode comparar os campos da mensagem para descobrir quais são diferentes.

O parâmetro from é o objeto de mensagem anterior. O tipo é Message.

O parâmetro to é o novo objeto de mensagem. Tipo - Message.

Não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.


Interface Message

A interface é uma abstração que representa uma única mensagem dentro do SDK.

A interface é implementada por entidades internas do SDK, cujos objetos podem ser recuperados em chamadas de métodos para a interface [MessageListener] (#message-listener).

Os objetos de Message são imutáveis. As alterações em qualquer um de seus campos criam um novo objeto. Dois objetos Message podem ser verificados quanto à identidade do campo usando o método equals(Object obj). A correspondência lógica dos objetos de mensagem pode ser verificada pela comparação de seus IDs (consulte o método getID()).

Método getAttachment()

Use esse método para obter um anexo se ele for um arquivo enviado por um visitante ou operador (Type FILE_FROM_OPERATOR ou FILE_FROM_VISITOR).

Não aceita parâmetros.

Retorna uma instância da classe MessageAttachment ou null se o arquivo estiver em processo de envio.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getData()

Use esse método para obter um dicionário arbitrário gerado pelo servidor quando Type ACTION_REQUEST for usado.

Não aceita parâmetros.

Retorna um dicionário do tipo String ou null se ele não existir.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getId()

Use esse método para obter um ID de mensagem exclusivo.

Não aceita nenhum parâmetro.

Retorna o ID da mensagem. O tipo é Message.Id.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getQuote()

Use esse método para obter informações sobre a mensagem citada.

Não aceita parâmetros.

Retorna uma instância da classe Quote.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getKeyboard()

Use esse método para obter o elemento de teclado do chatbot ()Type Keyboard).

Não aceita parâmetros.

Retorna uma instância da classe Keyboard.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getKeyboardRequest()

Esse método recupera o item do teclado que o usuário selecionou.

Não aceita parâmetros.

Retorna uma instância da classe [KeyboardRequest] (#keyboard-request).

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getOperatorID()

Use esse método para obter o ID do operador que enviou a mensagem.

Não aceita nenhum parâmetro.

Retorna o ID do operador ou null se a mensagem não tiver sido enviada por um operador. O tipo é Operator.ID.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getSenderAvatarURL()

Use esse método para obter a URL para carregar o avatar do remetente da mensagem (se houver).

Não aceita parâmetros.

Retorna a URL completa do avatar do remetente da mensagem ou null se não houver avatar. O tipo é String.

Não gera exceções.

Não requer que nenhum outro método seja chamado antes.

Método getSenderName()

Use esse método para obter o nome do remetente de uma mensagem.

Não aceita nenhum parâmetro.

Retorna o nome do remetente da mensagem. O tipo é String.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getSendStatus()

Use esse método para obter o status de envio de uma mensagem.

Não aceita parâmetros.

Retorna um valor do tipo enumerado [SendStatus] (#message-send-status).

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getSticker()

Use esse método para obter um adesivo em uma mensagem.

Não aceita parâmetros.

Retorna uma instância da classe Sticker.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getText()

Use esse método para obter o texto de uma mensagem.

Não aceita nenhum parâmetro.

Retorna o texto da mensagem. O tipo é String.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getTime()

Use esse método para obter a hora em que a mensagem foi enviada.

Não aceita nenhum parâmetro.

Retorna o número de milissegundos decorridos desde o início da época até o momento em que o servidor processa a mensagem. O tipo é long.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getType()

Use esse método para obter o tipo da mensagem.

Não aceita parâmetros.

Retorna o valor do tipo enumerado Type.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método isEdited()

Use esse método para descobrir se uma mensagem foi editada ou não.

Não aceita nenhum parâmetro.

Retorna o status da mensagem. O tipo é Boolean.

Não requer que nenhum outro método seja chamado antes.


Interface Attachment

A interface é uma abstração que representa um anexo de arquivo e seu estado em uma mensagem.

A interface é implementada por entidades internas do SDK. Um objeto Attachment pode ser recuperado usando o método getAttachment() da interface Message.

Método getFileInfo()

Um método que pode ser usado para obter informações sobre um arquivo aninhado.

Não recebe parâmetros.

Retorna um objeto FileInfo.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getFilesInfo()

Um método que pode ser usado para obter informações sobre arquivos anexados.

Não recebe parâmetros.

Retorna uma lista de objetos FileInfo. O tipo é List.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getErrorType()

Um método para obter o tipo de erro que causou problemas ao carregar um arquivo.

Não recebe parâmetros.

Retorna o tipo de erro em forma de texto. O tipo é String.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getErrorMessage()

Método para obter o texto do erro que causou o problema de upload do arquivo.

Não aceita parâmetros.

Retorna o texto do erro em formato de texto. O tipo é String.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getDownloadProgress()

Um método para obter a porcentagem de download de arquivos para o servidor.

Não recebe nenhum parâmetro.

Retorna a porcentagem na forma de um número inteiro. O tipo é Int.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getState()

Um método para obter o estado de um arquivo carregado no servidor.

Não recebe nenhum parâmetro.

Retorna um objeto [AttachmentState] (#attachment-state).

Não lança exceções.


Interface FileInfo

A interface é uma abstração que representa um anexo de arquivo em uma mensagem.

A interface é implementada por entidades internas do SDK. Um objeto FileInfo pode ser recuperado usando o método getFileInfo() da interface Attachment.

Método getContentType()

Um método que pode ser usado para obter o tipo MIME de um anexo.

Não recebe parâmetros.

Retorna o tipo MIME do anexo em forma de texto. O tipo é String.

Não gera exceções.

Não requer que nenhum outro método seja chamado antes.

Método getFileName()

Um método que pode ser usado para obter o nome do arquivo de um anexo.

Não recebe nenhum parâmetro.

Retorna o nome do arquivo de anexo em formato de texto. O tipo é String.

Não gera exceções.

Não requer que nenhum outro método seja chamado antes.

Método getImageInfo()

Um método que pode ser usado para obter informações sobre uma imagem, se o anexo for uma.

Não recebe parâmetros.

Retorna um objeto ImageInfo ou null se o anexo não for uma imagem.

Não gera exceções.

Não requer que nenhum outro método seja chamado antes.

Método getSize()

Um método que pode ser usado para obter o tamanho do arquivo de anexo.

Não recebe nenhum parâmetro.

Retorna o tamanho do arquivo de anexo em bytes. O tipo é long.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getUrl()

Um método que pode ser usado para obter um link para fazer download do arquivo anexo. O link é válido somente para a sessão atual.

Não recebe parâmetros.

Retorna a URL do arquivo anexo. O tipo é String.

Não gera exceções.

Não requer que nenhum outro método seja chamado antes.


Interface ImageInfo

A interface é uma abstração que representa informações sobre um anexo se ele for uma imagem. A interface é adaptada por entidades internas do SDK.

O objeto ImageInfo pode ser recuperado usando o método getImageInfo() da interface Attachment.

Método getThumbUrl()

O método recupera o URL para baixar uma visualização prévia de uma imagem. As dimensões vertical e horizontal máximas são 300 pixels, mas podem ser alteradas no servidor. Para saber o tamanho exato da visualização até que a imagem ainda não tenha sido baixada, você pode usar o seguinte código:

int THUMB_SIZE = 300;
  int width = imageInfo.getWidth();
  int height = imageInfo.getHeight();
  se (altura > largura) {
      largura = (THUMB_SIZE * largura) / altura;
      height = THUMB_SIZE;
  } else {
      height = (THUMB_SIZE * height) / width;
      width = THUMB_SIZE;
  }

Não recebe parâmetros.

Retorna o URL para download de uma visualização da imagem em forma de texto. O tipo é String. O link resultante é válido apenas para a sessão atual.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getHeight()

Um método que pode ser usado para obter a altura de uma imagem.

Não recebe nenhum parâmetro.

Retorna a altura da imagem em pixels. O tipo é Int.

Não gera exceções.

Não requer que nenhum outro método seja chamado antes.

Método getWidth()

Um método que pode ser usado para obter a largura de uma imagem.

Não recebe nenhum parâmetro.

Retorna a largura da imagem em pixels. O tipo é Int.

Não gera exceções.

Não requer que nenhum outro método seja chamado antes.


Tipo enumerado MessageType

Usado para definir o tipo de mensagem (consulte o método getType() da interface Message).

Case ACTION_REQUEST

Uma mensagem que contém um dicionário de dados arbitrários a serem processados pelo aplicativo com base na lógica definida pelo cliente (consulte o método getData() da interface Message).

Case CONTACT_REQUEST

Uma mensagem solicitando que o operador deixe suas informações de contato.

Case FILE_FROM_OPERATOR

Um arquivo enviado pelo operador.

Case FILE_FROM_VISITOR

Um arquivo enviado por um visitante.

Case INFO

Uma mensagem do sistema gerada automaticamente no servidor (como uma saudação no início de um bate-papo).

Case KEYBOARD

Uma mensagem enviada por um chatbot.

Case KEYBOARD_RESPONSE

Uma mensagem do chatbot contendo informações sobre o botão que o usuário selecionou.

Case OPERATOR

Uma mensagem de texto do operador.

Case OPERATOR_BUSY (Operador ocupado)

Uma mensagem do sistema indicando que o operador está ocupado no momento.

Case VISITOR

Uma mensagem de texto de um visitante.


Tipo enumerado SendStatus

Usado para determinar o status de envio de uma mensagem (consulte o método getSendStatus() da interface Message).

Case SENDING

Indica qualquer estado da mensagem até que ela tenha sido recebida, processada e enviada a todos os destinatários pelo servidor.

Case SENT

Indica qualquer estado da mensagem após os eventos listados na descrição SENDING.


Interface Department

Uma representação de um único departamento. Fornece métodos para recuperar informações sobre um departamento.

Os objetos [Department] (#department) podem ser recuperados usando uma classe que implemente a interface [DepartmentListChangeListener] (#department-list-change-listener) ou como resultado da chamada do método [getDepartmentList()] (#get-department-list) do protocolo [MessageStream] (#message-stream).

Método getKey()

Uma chave de departamento é necessária para iniciar um chat com um departamento específico (método startChatWithDepartmentKey(String departmentKey) do protocolo MessageStream).

Não aceita parâmetros.

Retorna a chave do departamento. O tipo é String.

Não lança nenhuma exceção.

Não requer que nenhum outro método seja chamado antes.

Método getName()

Não recebe parâmetros.

Retorna o nome público do departamento. O tipo é String.

Não lança nenhuma exceção.

Não requer que nenhum outro método seja chamado antes.

Método getDepartmentOnlineStatus()

Não recebe nenhum parâmetro.

Retorna o status on-line do departamento. O tipo é DepartmentOnlineStatus.

Não lança nenhuma exceção.

Não requer que nenhum outro método seja chamado antes.

Método getOrder()

Não recebe parâmetros.

Retorna um número que representa a ordem de saída do departamento na lista. Um número maior indica uma prioridade mais alta para a saída do departamento na lista. O tipo é int.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getLocalizedNames()

Não recebe parâmetros.

Retorna um dicionário de nomes de departamentos localizados ou null. O tipo é Map<String, String>. A chave é o nome da localidade, o valor é o nome do departamento correspondente à localidade.

Não gera exceções.

Não requer que nenhum outro método seja chamado antes.

Método getLogoUrl()

Não recebe parâmetros.

Retorna o URL do logotipo do departamento ou null. O tipo é URL.

Não lança nenhuma exceção.

Não requer que nenhum outro método seja chamado antes.


Tipo enumerado DepartmentOnlineStatus

Possíveis status do departamento.

Pode ser obtido chamando o método getDepartmentOnlineStatus() do protocolo Department.

Case BUSY_OFFLINE

Offline, status do chat excedido.

Case BUSY_ONLINE

Online, status do chat excedido.

Case OFFLINE

O visitante pode enviar mensagens off-line.

Case ONLINE

O visitante pode enviar mensagens on-line.

Case UNKNOWN

O status atual não é suportado por esta versão do Rox.Chat Mobile SDK*.


Interface Operator

O objeto da classe que implementa a interface é uma representação abstrata de cada operador de chat específico. A interface é implementada por entidades internas do SDK.

Os objetos da interface [Operator] (#protocol-operator) podem ser obtidos nos métodos da interface [CurrentOperatorChangeListener] (#current-operator-change-listener) e [getCurrentOperator()] (#get-current-operator) [MessageStream] (#message-stream).

Método getId()

O método permite que você obtenha a ID de um operador específico.

Não aceita parâmetros.

Retorna a ID de um operador específico. O tipo é Operator.Id.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getName()

O método permite que você obtenha o nome de um operador específico.

Não recebe nenhum parâmetro.

Retorna o nome de um operador específico. O tipo é String.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getAvatarUrl()

O método recupera a URL para fazer download do avatar de um operador específico (se houver).

Não recebe nenhum parâmetro.

Retorna a URL para fazer download do avatar de um operador específico ou null se não houver nenhum. O tipo é String.

Não gera exceções.

Não requer que nenhum outro método seja chamado antes.

Interface RoxPushNotification

O objeto [RoxPushNotification] (#rox-remote-notification) é uma representação abstrata de uma notificação push específica recebida por um aplicativo do serviço Rox.Chat.

A interface é implementada por entidades internas do SDK. Os objetos RoxPushNotification podem ser obtidos usando o método parseGcmPushNotification(Bundle bundle) da classe Rox.Chat.

Método getType()

Use esse método para especificar informações úteis de um objeto [RoxPushNotification] (#rox-remote-notification) específico.

Não recebe parâmetros.

Retorna o valor de um tipo enumerado [NotificationType] (#notification-type).

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getEvent()

Use esse método para especificar uma ação pretendida que envolva o recebimento desse objeto [RoxPushNotification] (#rox-remote-notification) específico.

Não recebe parâmetros.

Retorna add (adiciona as informações contidas nessa notificação push) ou del (adiciona as informações contidas nessa notificação push). O tipo é String.

Não gera exceções.

Não requer que nenhum outro método seja chamado antes.

Método getParams()

Use esse método para especificar a carga útil de um objeto [RoxPushNotification] (#rox-remote-notification) específico, dependendo do seu tipo e contido em uma matriz.

Não recebe parâmetros.

Retorna List<String>. Consulte a descrição do tipo enumerado NotificationType para obter o conteúdo possível da matriz.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.


Tipo enumerado NotificationType

Os valores de tipo indicam o tipo de informações úteis que compõem uma notificação push específica - podem ser recuperados usando o método getType() da interface RoxPushNotification.

Case CONTACT_INFORMATION_REQUEST

Indica o evento em que o operador enviou a um visitante uma solicitação de informações de contato.

O dicionário de parâmetros (consulte o método getParams() da interface RoxPushNotification) está vazio nesse caso.

Case OPERATOR_ACCEPTED

Indica o evento em que um operador entrou na sala de bate-papo.

O dicionário de parâmetros (consulte o método getParams() da interface RoxPushNotification) contém apenas um valor nesse caso, o nome do operador.

Case OPERATOR_FILE

Indica o evento em que o operador enviou um arquivo para a sala de bate-papo.

O dicionário de parâmetros (consulte o método getParams() da interface RoxPushNotification) nesse caso contém dois valores: o nome do operador e o nome do arquivo.

Case OPERATOR_MESSAGE

Indica o evento em que o operador enviou uma mensagem para a sala de bate-papo.

O dicionário de parâmetros (consulte o método getParams() da interface RoxPushNotification) nesse caso contém dois valores: o nome do operador e o texto da mensagem.

Caso WIDGET

Indica o evento em que o operador enviou uma mensagem de widget (essa funcionalidade não é suportada por padrão, você deve entrar em contato com o suporte para suportá-la).

O dicionário de parâmetros (consulte o método getParams() da interface RoxPushNotification) está vazio nesse caso.


Interface FatalErrorHandler

A interface é implementada pelas classes do aplicativo cliente. Os métodos da classe que implementa a interface são chamados quando é necessário tratar os erros que o serviço Rox.Chat pode retornar durante a operação. Consulte o tipo enumerado [FatalErrorType] (#fatal-error-type) para obter descrições de erros.

Método onError(RoxError<FatalErrorType> error)

Chamado quando ocorre um erro fatal no serviço Rox.Chat.

Parâmetros error - erro fatal do serviço Rox.Chat. O tipo é [`RoxError``] (#rox-error).

Ele não retorna nada.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.


Tipo enumerado FatalErrorType

Corresponde aos valores de possíveis erros fatais que podem ocorrer no serviço Rox.Chat (consulte o método getErrorType() da interface RoxError).

Case ACCOUNT_BLOCKED

Indica que a conta do cliente no serviço Rox.Chat está bloqueada (por exemplo, por falta de pagamento).

A ocorrência do erro não depende das ações do visitante, e o possível comportamento do aplicativo no caso desse erro é apresentado como uma sugestão para que o visitante tente usar o chat mais tarde.

Caso PROVIDED_VISITOR_EXPIRED

Indica que os dados do usuário fornecidos durante a criação da sessão (cf. métodos setVisitorFieldsJson(String visitorFieldsJson) e setVisitorFieldsJson(JsonObject visitorFieldsJson) da classe SessionBuilder) não são mais válidos.

O comportamento proposto para o aplicativo é gerar novos dados de usuário e criar uma nova instância de sessão.

Caso UNKNOWN

Indica a ocorrência de algum erro inesperado e não documentado.

Caso VISITOR_BANNED

Ocorre quando um usuário com dados passados (cf. métodos setVisitorFieldsJson(String visitorFieldsJson) e setVisitorFieldsJson(JsonObject visitorFieldsJson) da classe SessionBuilder) foi bloqueado pelo operador por algum motivo.

Case WRONG_PROVIDED_VISITOR_HASH

Indica um erro na geração de dados do usuário. Não depende de ações do usuário, mas sinaliza um erro no algoritmo de geração de dados do aplicativo.


Interface NotFatalErrorHandler

A interface é implementada pelas classes do aplicativo cliente. Os métodos da classe que implementa a interface são chamados quando necessário para tratar os erros que o serviço Rox.Chat pode retornar durante a operação. Para obter descrições de erros, consulte os valores do tipo enumerado [NotFatalErrorType] (#not-fatal-error-type).

Método onNotFatalError(RoxError<NotFatalErrorType> error

Chamado quando ocorre um erro não fatal no serviço Rox.Chat.

O parâmetro error é um erro não fatal do serviço Rox.Chat. O tipo é RoxError.

Ele não retorna nada.

Não lança exceções.

Não requer a chamada de nenhum outro método previamente.


Enumerated type NotFatalErrorType

Corresponde aos valores de possíveis erros fatais que podem ocorrer no serviço Rox.Chat (consulte o método getErrorType() da interface RoxError).

Case NO_NETWORK_CONNECTION

Esse erro indica que não há conexão de rede.

Case SOCKET_TIMEOUT_EXPIRED

Esse erro ocorre quando o servidor não está disponível ou há outra causa para uma exceção SocketTimeoutException.


Interface RoxError

A interface é implementada por entidades internas do SDK. Os objetos RoxError são passados para o parâmetro error do método onError(RoxError<FatalErrorType> error) da interface FatalErrorHandler.

Os métodos da interface são projetados para lidar com erros fatais que podem ocorrer ao trabalhar com o serviço Rox.Chat.

Método getErrorType()

O método foi desenvolvido para obter o tipo específico de erro que ocorreu.

Não aceita parâmetros.

Retorna o valor do tipo Type correspondente.

Não lança exceções.

Não requer que nenhum outro método seja chamado antes.

Método getErrorString()

O método pode ser chamado para obter uma representação textual do erro que ocorreu.

Ele não recebe nenhum parâmetro.

Retorna a representação textual do erro que ocorreu. O tipo é String.

Não lança exceções.

Não requer a chamada prévia de nenhum outro método.


Interface RoxLog

Interface que fornece métodos para implementar o “registro” da atividade de rede do Rox.Chat Mobile SDK.

O mecanismo pode ser útil, por exemplo, ao “depurar” versões de “produção” em que não há registros de “depuração” disponíveis.

Método log(String log)

Um método que é chamado automaticamente quando uma nova entrada para o registro de atividade de rede do Rox.Chat Mobile SDK é liberada.

O parâmetro log é a nova entrada para o registro. O tipo é String.

Não retorna nada.

Não lança exceções.

Não requer a chamada de nenhum outro método previamente.


Códigos de erro HTTP retornados

Categoria Código de Erro Significado e possíveis maneiras de resolver
Erros gerais
account-blocked A conta do cliente no serviço Rox.Chat está bloqueada (por exemplo, por falta de pagamento). Entre em contato com o suporte técnico do serviço Rox.Chat para obter assistência.
chat-required Responder a uma ação no chat sem chat
content_type_not_recognized O tipo MIME do anexo não é reconhecido. Verifique se o arquivo que você está enviando está danificado. Além disso, certifique-se de que o conteúdo do arquivo corresponda a um dos tipos MIME
connection-timeout O tempo limite de conexão expirou. Verifique a configuração de rede
domain-not-from-whitelist Domínio não está na lista branca
incorrect-file-name Nome de arquivo incorreto. Pode ser muito longo ou conter caracteres especiais inválidos
max_file_size_exceeded O tamanho do arquivo enviado é muito grande. Tente reduzir o tamanho do arquivo ou aumentar o limite de peso para arquivos enviados
file_size_too_small O tamanho do arquivo que está sendo enviado é muito pequeno. Você pode estar tentando enviar um arquivo vazio
not_allowed_file_type É proibido ou não suportado o envio de um arquivo desse formato. Altere o parâmetro responsável pelos tipos de arquivo permitidos para envio nas configurações do servidor
not_allowed_mime_type É proibido ou não suportado o envio de um arquivo desse tipo MIME. Altere o parâmetro responsável pelos tipos de arquivo MIME permitidos para envio nas configurações do servidor
no_previous_chats Chats anteriores estão ausentes
not_matching_magic_numbers Os números mágicos não correspondem
max_files_count_per_chat_exceeded O número máximo de arquivos enviados para uma sala de bate-papo foi atingido
provided-visitor-expired Os dados do usuário apresentados quando a sessão foi criada não são mais válidos. Este erro é resolvido automaticamente pela reinitialization
reinit-required Reinitialization é necessária - provavelmente o AuthToken está desatualizado. Este erro é resolvido automaticamente pela reinitialization
setting_disabled A configuração solicitada está desativada
server-not-ready O servidor não está pronto para responder à solicitação. Este erro aparece quando você tenta acessar o servidor antes que ele esteja totalmente ligado. Tente esperar um pouco mais
session_not_found A sessão que você está procurando não foi encontrada
unathorized Tentativa de acesso não autorizado. Autorização necessária
uploaded-file-not-found Arquivo enviado não encontrado
visitor_banned O visitante foi bloqueado pelo operador
wrong-argument-value O erro ocorre quando o servidor recebe uma solicitação com um tipo de argumento incorreto (por exemplo, String em vez de int)
wrong-provided-visitor-hash-value O erro ocorre ao tentar autorizar um visitante com assinatura inválida
Erros de citação de mensagens no chat
quoting-message-that-cannot-be-replied A mensagem não pode ser citada - ela não está marcada com o sinalizador canBeReplied ou o sinalizador não está definido como o valor true
quoting-message-from-another-visitor O ID da mensagem enviada corresponde a outro visitante
corrupted-quoted-message-id ID inválido da mensagem citada
multiple-quoted-messages-found O ID da mensagem enviada corresponde a várias mensagens (provavelmente há um erro de banco de dados)
quoted-message-not-found O ID enviado não corresponde a nenhuma mensagem no banco de dados
required-quote-args-missing Um ou mais argumentos do sistema de citação implementado no servidor não foram enviados
Erros de autenticação
provided-auth-token-not-found Token de autenticação não encontrado no servidor. Este erro ocorre apenas no caso de uso de mecanismo de autenticação de cliente personalizado via token. Provavelmente, o token ainda não chegou ao serviço Rox.Chat do servidor do cliente e você precisa esperar um pouco mais
Erros relacionados ao envio, edição e exclusão de mensagens
message_empty Tentativa de enviar uma mensagem vazia
max-message-length-exceeded O comprimento máximo permitido da mensagem foi atingido
message_not_found Mensagem com o ID que
not_allowed A capacidade de editar/excluir mensagens está desativada no servidor
message_not_owned O visitante está tentando editar/excluir uma mensagem do operador ou o identificador especificado pertence a outra mensagem
wrong_message_kind Um visitante tenta editar uma mensagem não textual
Erros de taxa do agente
no-chat O erro ocorre nos seguintes casos:

  • Ao tentar enviar uma avaliação do operador quando o chat não existe
  • Ao tentar enviar uma pressão de tecla para o bot quando o chat não existe
  • Ao enviar uma mensagem para o visitante quando o chat não existe e no configuração da conta o valor da propriedade force_start_chat_on_visitor_message é false
operator-not-in-chat Occurs when an operator ID not belonging to the current chat was passed when trying to send an operator assessment
note-is-too-long The maximum comment length limit of 2000 characters has been exceeded
Erros de resposta do teclado
button-id-not-set Button ID is not set
requset-message-id-not-set The request message identifier is not set
can-not-create-response Unable to create a reply
Erros de envio de diálogos por e-mail
chat-history-sent-too-many-times Chat history has been sent too many times
Erros de exclusão de arquivo
file-has-been-sent The file is attached to the message and cannot be deleted
file-not-found File not found