Criar o Canal Oracle Android

Você pode configurar o canal do Android para se conectar ao Oracle Chat Server de dois modos: modo não autenticado e modo autenticado (para proteger o acesso ao canal).

  • Modo não autenticado – Use o modo não autenticado quando o cliente não puder gerar tokens JWT assinados, quando não houver mecanismo de autenticação em vigor ou quando o aplicativo cliente já estiver protegido e visível para usuários autenticados.
  • Modo autenticado – A autenticação é aplicada usando JWT (JSON Web Tokens). O servidor de backend do cliente gera o token JWT, que é informado para o Oracle Android SDK. Este token é usado para cada solicitação a um servidor de fala, texto ou anexo do ODA.
    Observação

    Para proteger o acesso ao canal, o token sempre deve ser gerado por um servidor remoto. Ele nunca deve ser gerado pelo aplicativo cliente.
    Quando o aplicativo precisa se conectar a um servidor ODA, ele primeiro solicita o token do servidor de backend e, em seguida, adiciona-o ao cabeçalho Autorização. O servidor ODA valida o token, avalia as declarações e, em seguida, abre o soquete ou rejeita a conexão.
O Token JWT tem as seguintes declarações: channelId e userId, e os nomes de declarações iat (hora de emissão) e exp (tempo de expiração). iat significa a hora em que o token foi emitido. Deve ser um número que representa os segundos decorridos desde a Era UNIX. exp deve ser um número que representa os segundos decorridos desde a Era UNIX. Recomendamos a definição do tempo de expiração para pelo menos 30 minutos após o momento de emissão (iat). O cabeçalho do token é semelhante a este:
{

 "alg": "HS256",

 "typ": "JWT"

}
Um exemplo de corpo de token tem a seguinte aparência:
{

  "iat": 1569828182,

  "exp": 1569831782,

  "channelId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",

  "userId": "John"

}
Observação

O token ilustrado por este exemplo não está assinado. Os tokens reais são assinados pela Chave Secreta do canal.

Configurar o Canal Oracle Android

Para configurar o canal Oracle Android:
  1. Escolha Desenvolvimento e Canais no menu.
  2. Escolha Usuários.
  3. Clique em Adicionar Canal e, em seguida, em Oracle Android como o tipo de canal.
  4. Preencha a caixa de diálogo:
    • Informe o nome do canal.
    • Para conexões autenticadas:
      • Ative a opção Autenticação do Cliente Ativada para determinar se o SDK está se conectando a um canal ativado para autenticação do cliente.
      • No campo Expiração Máx. do de Token (Minutos), defina o tempo máximo para o token JWT.
    • Para conexões não autenticadas:
      • Desative a opção Autenticação do Cliente Ativada.
    • Defina o tempo de expiração da Sessão.
    • Clique em Criar. O Oracle Digital Assistant gerará o ID do Canal e a Chave Secreta que você precisa para inicializar o SDK. Mantenha-os à mão.
  5. Roteie o canal para a habilidade ou o assistente digital.
  6. Alterne Canal Ativado para Ativado.