Considerações Específicas do Canal

Aqui estão algumas coisas relacionadas ao canal que você deve pensar e planejar ao projetar seu assistente digital.

O termo "canal" abrange a plataforma de mensagens e o cliente de mensagens que um bot usa para interagir com os usuários. As considerações de canal devem ser feitas durante a fase de planejamento de um projeto de assistente digital e ao implementar o assistente digital.

O Oracle Digital Assistant tem suporte nativo para vários canais, incluindo Facebook, MS Teams, Slack, Web, iOS, Android e SMS. Para canais suportados nativamente, o Digital Assistant trata a transformação de mensagens de payloads de mensagens recebidas no formato usado no assistente digital e vice-versa. Como desenvolvedor, tudo o que você precisa fazer é criar uma configuração de canal no Digital Assistant e fornecer as informações específicas do canal necessário.

Os canais que não têm suporte nativo no Digital Assistant podem ser conectados a um assistente digital por meio de um webhook. Esta é uma configuração genérica que você usa com código personalizado que precisa gravar para converter e enfileirar mensagens.


Veja a seguir a descrição da segunda-language.png

Considere as limitações do canal ao projetar seu chatbot

Embora todos os canais geralmente façam a mesma coisa, cada um tem recursos e limitações específicos do canal. As limitações típicas incluem o número de itens acionáveis que podem aparecer em uma lista de valores ou em cartões em um carrossel ou no layout dos cartões. Por exemplo, o Slack suporta apenas layouts de cartão vertical.

Outras diferenças estão no suporte de formatação e destaque de mensagens. O canal web, por exemplo, permite que você use marcação HTML e folha de estilo para formatar mensagens, enquanto outros não.

Observação

Dependendo dos canais que você está segmentando e da extensão da formatação necessária, pode ser possível usar a marcação HTML em suas mensagens. Se você usar essa abordagem, a marcação será convertida automaticamente para o formato específico do canal quando a mensagem for transmitida para cada canal. Consulte Formatação de Rich Text em Canais.

Como estratégia, você pode escolher entre:

  • Projetando seu bot para um único canal.

  • Projetando seu bot para o maior denominador comum.

  • Projetando seu bot para todos os canais e otimizando-o para alguns.

Projete seu Bot para um Único Canal

A solução menos sustentável é projetar seu assistente digital para apenas um canal e ignorar os outros, mesmo aqueles que podem ser opções no futuro. Além de ser a menos sustentável, esta solução também é a menos recomendada, já que você está projetando um produto de uso único.

Pode haver casos de uso para essa abordagem, como uma prova de conceito que você precisa criar rapidamente. Mas para todos os bots que você deseja liberar para produção, considere uma das outras duas abordagens.

Projete seu Bot para o Mais Alto Denominador Comum

Se você souber os canais que precisa suportar com seu bot e concordar em uma implementação que cada um dos canais pode suportar, poderá criar um assistente digital que funcione da mesma forma em vários canais com pouco esforço de desenvolvimento e, portanto, sem muito atraso. A desvantagem disso é que, para alguns canais, parecerá dirigir um carro esportivo, mas usando apenas a primeira das seis engrenagens.

Essa opção faz sentido se as metas que você definiu para seu chatbot não exigirem uma experiência de canal otimizada.

Projete seu Bot para Todos os Canais e Otimize para Poucos

Outro termo que usamos para essa opção é "design adaptativo" ou "design de resposta de bot adaptativo". Assim como o mesmo paradigma no desenvolvimento de aplicativos web, você cria seu chatbot para trabalhar em todos os canais e, em seguida, aplica alterações em alguns que otimizam a experiência do usuário. O design de resposta de bot adaptável levará mais tempo para você implementar, mas garante a melhor experiência possível ao usuário, além da capacidade de aproveitar recursos específicos do canal, como cartões adaptáveis no canal do MS Teams.

Para implementar essas estratégias de design, você tem as seguintes ferramentas disponíveis:

  • Pacotes de recursos que usam o formato de mensagem da UTI para exibir mensagens específicas do canal.

  • O componente Alternar para ramificar para fluxos de conversa específicos do canal.

  • A propriedade visível no componente Resposta Comum para mostrar ou ocultar itens de resposta com base no tipo de canal usado.

  • A expressão ${system.channelType} em fluxos de caixas de diálogo em entidades e em caixas de diálogo incorporadas para exibir mensagens específicas do canal. Se você usar componentes personalizados para renderizar respostas de bot, o tipo de canal também estará disponível como uma função no objeto de contexto.

  • O componente Resposta Comum e os componentes personalizados, que suportam propriedades personalizadas do canal, que você pode usar para enviar propriedades específicas do canal, como cargas úteis de cartão adaptáveis para o canal do MS Teams.

  • Otimização integrada ao Oracle Digital Assistant que usa automaticamente a melhor substituição para funcionalidade que não está disponível em uma plataforma. Por exemplo, o layout de cartão horizontal no Slack é alterado automaticamente para cartões verticais.

Implementando Respostas de Bot Específicas do Canal

Uma implementação que observamos com frequência, mas que não recomendamos, é gravar mensagens de texto diretamente nos componentes da interface do usuário, em vez de usar referências de pacotes de recursos.

Um segundo padrão que vemos é que os desenvolvedores adicionam marcação HTML a mensagens que eles adicionam diretamente à propriedade de mensagem de texto nos componentes da interface do usuário ou que armazenam em pacotes de recursos. O uso de marcação HTML limita o suporte do canal para um bot aos canais que suportam marcação.

Você pode usar a marcação, mas sugerimos que você a use de uma maneira que não o bloqueie. Veja um exemplo que usa o formato de mensagem da UTI para pacotes de recursos no Oracle Digital Assistant para evitar um bloqueio de canal:

{channelType, select,
  web {<b>This message uses HTML markup to display in bold</b>}
  slack {*This message uses markdown to display in bold*}
  other {This message is for all other channels}
}

Para fazer referência à mensagem no pacote de recursos, use a seguinte expressão no fluxo de caixas de diálogo, na entidade ou na configuração da habilidade:

${rb('the_key_name','channelType',system.channelType)}

Lista de Verificação para Considerações do Canal

  • ☑ Projete para todos, otimize para alguns.
  • ☑ Considere o design adaptável ao oferecer suporte a vários canais.
  • ☑ Use strings de pacote de recursos para todas as suas mensagens de bot.
  • ☑ Aproveite o formato de mensagem da UTI para criar pacotes de recursos que se adaptam à mensagem para um canal.

Saiba Mais