O TOTVS CAROL ASSISTANT
O que é o TOTVS CAROL Assistant?
É uma plataforma de criação de interfaces para usuários conversacionais, que utiliza técnicas e algoritmos de processamento de linguagem natural e machine learning para criar experiências complexas de forma simples e inteligente.
Como o TOTVS CAROL Assistant funciona?
É possível ensinar a TOTVS Carol Assistente a entender quais são as intenções do usuário, que será chamado de cliente. A aplicação vai extrair o máximo de informações úteis da conversa para entender o que o cliente quer e dar a melhor resposta possível. Também pode realizar integrações com os produtos TOTVS Carol, sistemas e APIs externas.
Quais as principais vantagens de utilizar o TOTVS CAROL Assistant?
Por meio da inteligência artificial, sua interação com o usuário será muito mais natural e humanizada. A TOTVS Carol Assistente vai entender o que o cliente precisa e dará respostas claras e eficientes. Além disso, é uma solução omni canal, com uma única configuração pode suportar:
- Chamadas de API
- Web Widget
- Telegram
- Facebook Messenger
- WhatsApp
- Entre outros
O TOTVS CAROL Assistant é um chatbot?
É muito mais que um chatbot! Uma solução de processamento de linguagem natural completa, que integrada a todo o ecossistema TOTVS Carol e com qualquer sistema de mercado, permite integrar dados e fornecer insights que otimizam a experiência de atendimento dos seus clientes.
O Assistant
Habilitar
Para começar a utilizar o Carol Assistant, primeiro é necessário habilitar o sexto botão do menu vertical à esquerda. Ele direciona ao ambiente de criação e manutenção do chatbot.
Para habilitá-lo basta clicar em Enable Carol Assistant. Uma vez habilitado esse passo não será mais necessário e será possível criar o chatbot.
Notação
- Conversation: uma conversation no Carol Assistant é um agente de atendimento virtual que interage com seus clientes em português brasileiro de maneira eficaz, como um atendimento humano em um contact center. É possível treinar as conversations para responder às mais diversas perguntas que os clientes poderão fazer e com aprendizado de máquina, as conversations aprendem com cada interação.
- Intents: um intent é a intenção de um cliente para uma tomada de rumo de uma conversa. Quando um cliente inicia uma conversa, ele escreve uma palavra ou frase e o Carol Assistant responde conforme o conteúdo contido em sua intente. Um exemplo: supondo uma pizzaria, onde o cliente deseja fazer um pedido de uma pizza, a conversation tem uma intent que reconhece a intenção do pedido e pode mostrar o cardápio, mostrar as opções de combinações, informar o valor final e até direcionar ao app de cobrança.
- Secret: responsável por armazenar os dados privados e protegidos no Carol Assistant Secrets
- Responses: é a resposta enviada ao cliente em uma interação após ele já ter enviado uma mensagem.
- Contextos: os contextos são assim como na linguagem habitual, o contexto da conversa. Quando o cliente diz "calabresa", a conversation deve entender que é o sabor da pizza, pois ambos devem estar inseridos no mesmo contexto de pedido de pizza.
- Parameter: é uma informação que pode ser extraída do texto informado pelo cliente em uma interação, o TOTVS CAROL ASSISTANT possui alguns definidos e outros que podem ser criados. Cada parameter possui um nome e tipo.
- Parameter Types: é o tipo da informação a ser extraída e define minuciosamente a forma de extração, como o exemplo de pizza citado acima. Para essas entradas de entidade, forneça um valor de referência e um ou mais sinônimos.
- Regex: ou Expressões Regulares são padrões de caracteres que associam sequências de caracteres no texto. Podemos usar expressões regulares para extrair ou substituir porções de texto, bem como, endereço ou link de imagens em uma página HTML, modificar formato de texto ou remover caracteres inválidos.
- TOTVS CAROL - Carol Assistant - como configurar o fluxo de respostas de uma conversa na Carol Assistant
Conversas
Uma conversation é uma conversa virtual, um chatbot ou uma interação que pode ser treinada semelhante a um atendente humano para responder às principais perguntas do seu produto. A conversation terá a roupagem que for mais adequada ao gosto do construtor podendo ter desde a linguagem mais formal até a mais informal.
Conversations
- List of conversations: nesta estão listadas todas as suas conversations e suas informações úteis. É nesta tela também que poderá importar ou criar uma conversation.
- Name: nome da conversation
- Description; são detalhes da conversa que são informados no momento da criação.
- Status: informa o status, ou seja, a situação que a conversation está.
- Published (Publicado): neste estado é possível testar o chatbot e interagir nas redes que ele será usado.
- Disabled (Desabilitado): neste estado ele não está mais em funcionamento.
Draft (Rascunho): este é o estado que ele fica antes da publicação, não é possível testar a conversation neste estado.
- Last Update (Última atualização): informa a data exata incluindo a hora e segundos que a conversation teve uma atualização, é uma informação diferente da Last Deploy, que considera como atualização qualquer modificação ou inserção de intent e será implantada quando for publicado.
- Last Deploy (Última implantação): informa a data exata incluindo a hora e segundos.
- Import: nele é possível importar conversas ou arquivos.
- Import Conversation: importa Conversations Exportadas salvas na sua máquina no formato JSON.
Import Small Talk: importa o modelo pré-definido de conversation de dentro do repositório CAROL. Neste modelo temos algumas intenções de modelo como Cotação do Dólar, Valor de ações na B3 ou ainda algumas interações que tornam a conversa mais humanizada.
Edit: A edição é para desabilitar, ocultar, modificar a descrição e/ou nome da conversation,
Remove: remove a conversation. É feita uma confirmação com o nome da conversation que se deseja excluir. A remoção é definitiva.
- Create Conversation:
- Conversation Name: É o nome que o desenvolvedor vai dar a sua conversation, todos os caracteres são permitidos, podendo ser alterado posteriormente.
- Conversation Description: É a descrição de sua conversation dada pelo desenvolvedor e pode ser alterada posteriormente.
- Hide conversation from Helper context?: Quando uma conversation é criada é possível clicar nessa opção o que faz com que conversation, não aparece quando o help é acionado.
- Disable conversation: a conversation é desabilitada quando essa opção é acionada.
Parameter types
Ficam listados os parameters, seus valores e outras informações úteis, também é possível criar um parameter novo dando nome e tipo ao mesmo.
- List of parameter types: é a lista de parameters com suas informações.
- Name: nome do parâmetro, dado pelo usuário no momento que cria o parameter.
- Values: informa o que será extraído da informação dada pelo cliente que deve ser identificado conforme Regex.
Status: indica se é um parameter já publicado ou se foi feito um esboço.
- Last Update: informa os dados de data e hora da última edição daquele parameter.
- Last Deploy: informa os dados de data e hora da última vez que aquele parameter foi publicado.
- Error: é onde se pode editar ou remover o parameter. Após editar é necessário publicar novamente o parameter para que ele funcione adequadamente.
- Publish: é o botão usado para publicar todos os parameters em um único click, ele fica disponível para ser acionado somente quando ocorre uma criação ou edição de um parameter, ou seja, quando tem parameter disponível para ser publicado.
- Create Parameter Type: ao ser acionado este botão tem a possibilidade de criar um parameter, no qual se pode dar o nome, tipo, informar o que será extraído da conversa e como será utilizado.
- Parameter Type Name: nome do parameter dado pelo criador.
- Auto Expansion: quando ativado ele reconhece valores que não foram informados nitidamente. Como por exemplo: um parameter tipo lista @carol.color, supondo que seja esperado a cor vermelha, mas o cliente digita "Eu quero que seja vermelho", a conversation identifica a cor.
- Fuzzy matching: por padrão um embaralhamento das letras para atender todas as possíveis combinações de palavras
Kind: é uma lista de tipos de dados para ser usado na especificação do tipo do seu parameter. Serão apresentados os tipos em "parameter type".
- Values: é o valor a ser extraído da interação, ou seja, é o parameters, informado pelo cliente, que deve ser identificado naquela intent pelo assistant.
- Synonyms: caso seja um tipo de palavra é o lugar onde se insere os sinônimos.
- +Add a value: usado caso seja necessário inserir mais de um valor.
Dashboard
É um registro em tempo real e com histórico que apresenta os dados em números reais e gráficos.
- Data relativa: se pode escolher o período que deseja ver.
- Quantidade de usuário: diz a quantidade de clientes que estão acessando o chatbot no último minuto.
- Acessos da última hora: diz a quantidade de clientes que estão acessando o chatbot na última hora.
- Quantidade de acessos: informa todos os acessos no período selecionado.
- Duração média de atendimento: informa a duração média de cada atendimento.
- Média de interações: informa a média de interações no período selecionado.
- Taxa de rejeição: informa o volume de vezes que o chatbot foi aberto, mas não usado.
- Taxa de "Sem resposta": informa a taxa de sessões que o chatbot não obteve sucesso em enviar algum conteúdo após uma pergunta do cliente, seja por falta de conteúdo ou por mau preenchimento.
- Engajamento: quantidade de usuários que utilizam a solução mais de uma vez. Em números absolutos, termos percentuais e gráfica.
- Acessos diários: gráfico da quantidade de usuários que acessaram no período selecionado.
- Acessos por dispositivos: quantidade de acessos por dispositivo (portal, celular, produto), no período selecionado.
- Feedbacks: a quantidade de retorno dos clientes no período selecionado.
Visitors
Mostra a lista de usuários que acessaram e o que foi conversado no chat. Para ter acesso ao que foi conversado, a sequência das falas do cliente e o que foi respondido a ele, basta clicar no usuário em que deseja.
- List of online visitors: informa a lista de clientes que acessaram.
- Refresh: atualiza a lista de clientes que acessaram.
- User: informa o cliente que acessou.
- Session started: informa os dados do dia e hora que aquele cliente acessou.
- User last message: informa a última frase que o cliente digitou.
- Assistant message: informa a última mensagem que foi enviada ao cliente.
- Last message: informa os dados do dia e hora que foi enviada a última mensagem.
Logs
Apresenta os logs feitos, ou seja, as conversas feitas entre o cliente e o chat bot.
- Session Logs: lista os logs.
- User message: informa mensagem do cliente que iniciou o log.
- Response: informa a mensagem que cliente recebeu.
- Conversation / Intent Node: informa o nó/intente que foi utilizado naquele log, ou seja, naquele trecho da conversa.
- Date: informa os dados de dia e hora que aquele log foi feito.
- Status:
- Matched: informa se a resposta que o cliente buscava foi encontrada e respondida.
- No matched: informa se a resposta que o cliente buscava não foi encontrada.
Secrets
List of secrets: lista os segredos criados pelo desenvolvedor.
- Name: é o nome dado pelo desenvolvedor na criação e ou edição do segredo.
- Description: é a descrição dada pelo desenvolvedor na criação e ou edição do segredo.
- Created On: informa dia e hora que o segredo foi criado
- Last Update: informa a data da última edição.
Create Secret: local onde se cria o segredo.
Secret Name: nome dado pelo desenvolvedor que está criando o chatbot.
Description: descrição pelo desenvolvedor que está criando o chatbot.
Value: valor do segredo que não será re-exibido pelo desenvolvedor que está criando o chatbot..
Tokens
É uma chave conectada de acesso a uma ou mais conversations.
- List of tokens: listas os tokens criados.
- Name: nome dado pelo desenvolvedor, quando cria o token.
- Description: descrição dada pelo desenvolvedor ao token.
- Widget demo: Link para testar o assistant.
- Development: é o link para a versão de desenvolvimento do Assistant
- Production: é o link para a versão publicada do Assistant (somente para ambientes com o controle de versão ativado).
Create Token: é possível criar um token.
- Name: nome dado ao token no momento em que é criado, podendo ser alterado posteriormente.
- Description: descrição dada ao token no momento em que é criada, podendo ser alterada posteriormente.
- Conversations allowed: Seleciona quais as conversas são permitidas para este widget.
Edit: botão utilizado para editar o token e customizar a widget.
- Rounded corners: bordas arredondadas
- Title: o título que aparece para o seu cliente.
- Widget width: largura do widget.
Colors and styles: para estilização do ambiente da conversa.
Icon settings: configurações de ícone
Icon label: rótulo de ícone
Feedback styles heet: folha de estilo de feedback
Zendesk custom Fields: campos personalizados do Zendesk
Version Manage
As versions são versões do chatbot, ao criar uma version (versão) o desenvolvedor atribui a ela as permissões dos chatbots já criados.
- List of versions: listas as versions já criadas.
- Version: informada pelo próprio sistema, não havendo possibilidade de editar.
- Description: a descrição é dada pelo desenvolvedor.
- Created On: informa a data e hora que a version foi criada.
- Create new version:
- Version: apresenta a version a ser criada.
- Description: descrição dada pelo desenvolvedor na hora da criação ou edição da version.
Production: não é necessário marcar ela pois é marcada automaticamente na criação da version.
Edit: apenas a description pode ser editada.
- Copy to Dev: apresenta as modificações que irão acontecer na edição.
Construindo conversa
Após criar a conversation o construtor clica no nome dela, ou em qualquer um dos itens da conversation e será direcionado ao ambiente de construção da conversa. No ambiente de construção é possível criar e testar o Assistant, onde será criada uma ótima experiência de contato entre seu cliente e seu produto.
No ambiente de construção é o momento de montar o chatbot com a finalidade de otimizar a experiência do cliente. A seguir o passo a passo para criar seu primeiro chatbot.
- Adicionar node raiz
Na página inicial da conversa, adicione um novo node (nó).
Node/Nó: É a intent, ou seja, é o fluxo da conversa dentro do chatbot, cada nova conversa tem que ser composta por no mínimo um ou mais nodes. Estes são os caminhos que o cliente pode percorrer durante a interação dele com a Carol Assist. Por meio da resposta do cliente o caminho será percorrido, pois o cliente é quem define a direção que a conversa irá tomar. Para adicionar um node basta clicar em +Add a new one.
Após ter adicionado o primeiro node caso deseje adicionar mais intents na mesma conversation é possível de 2 formas, adicionar um novo node raiz, sem ramificação inicial, Add root node, ou adicionar um node partindo de um já existente clicando no sinal de mais localizado abaixo da intente já criada de onde se deseja gerar a ramificação, em seguida no botão Add Custom Node
Dê um nome ao seu node/nó.
Ao clicar no botão para criar um nó, a página a seguir será exibida e poderá personalizar aquele caminho. O primeiro passo é dar um nome para o trecho em node name, onde o criador do chat deve inserir o nome que dará aquela intente ou nó, como chamaremos a partir de agora.
- Crie uma frase de treinamento (Training Phases).
- Training Phrases: São as frases que quando o usuário escrever fará ele entrar naquele fluxo de conversa específico, é o gatilho que ativa o node cadastrado. Estas frases serão utilizadas para ensinar os algoritmos do TOTVS Carol Assistant a entender a intenção do cliente e disparar as ações e respostas necessárias para respondê-lo.
No exemplo a seguir, o gatilho do node é ativado quando o usuário está tentando fazer um pedido de pizza no chatbot. Para cadastrar as frases que ativam o node basta preencher os campos, caso seja desejado adicionar mais frases, clique na opção + Add a training phrase.
Recomendações de boas práticas de Training Phrases é usar no mínimo 10 frases, completamente diferentes e não genéricas.Node name: É o nome do nó.
If an user says: em português é "Se um usuário disser", é onde deve ser inserida a frase que o cliente deve usar naquele node que será identificada como gatilho para a interação.
- Remove: Remove a frase inserida.
- +Add a training phrase: Adiciona uma frase de treinamento, em um node pode ser usado mais de uma frase de treinamento.
Melhores práticas: Ter pelo menos 10 frases de treinamento.
Parameters: Todos os dados podem ser extraídos das mensagens do usuário, identificados por meio do Nome do Parâmetro configurado
+ Add a parameter: Em português adicionar parâmetro
Parameter name: Nome do parâmetro
- Parameter type: Tipo de parâmetro
Parameter type map: São informações que fornecem o caminho para os valores de referência para os sinônimos. Toda entrada do mapa possui apenas um valor de referência e uma lista de sinônimos. São do tipo map os seguintes parameters:
@carol.date-time
@carol.date
@carol.date-calendar
@carol.date-period
@carol.time
@carol.time-period
Parameter type list: São informações inseridas de valor único sem sinônimo nem valor de referência. São do tipo lista os seguintes parameters:
@carol.color: Corresponde a entradas de cores como o roxo, quando uma cor é inserida o valor dela é extraído.
@carol.image
@carol.language
Parameter type composite: É um tipo de lista que é usada quando se usa um alias. São do tipo composite os seguintes parameters:
@carol.cardinal
@carol.ordinal
@carol.geo-country
@carol.geo-city
@carol.geo-state
@carol.location
@carol.zip-code
@carol.geo-capital
@carol.currency-name
@carol.unit-area-name
@carol.unit-length-name
@carol.unit-speed-name
@carol.unit-volume-name
@carol.unit-weigth-name
@carol.uint-information-name
@carol.given-name
@carol.last-name
@carol.person
@carol.music-genre
@carol.email
@carol.number
@carol.number-integer
@carol.number-sequence
@carol.flight-number
@carol.unit-area
@carol.unit-currency
@carol.unit-length
@carol.unit-speed
@carol.unit-volume
@carol.unit-weight
@carol.temperature
@carol.phone-number
Parameter type regexp: Alguns padrões não possuem padrões específicos, mas sim correspondentes, através deles é possível fornecer uma expressão regular.
@carol.feedback-stars
@carol.feedback-thumbs
@carol.file
@carol.unit-information
@carol.any
@carol.url - Islist?
- Required?
- Prompts
- + Add prompt
- Add options?
- Responses
- Respond with: Responda com
- Negrito
- Itálico
- Sublinhado
- Tarjado
- Marcadores
- Subscrição
- Sobrescrição
- Tipo de letra
- Cor da letra
- Marcador
- Cor
- Alinhamento
- Retornar ao normal a letra
- Inserir imagens
- Inserir link
- Inserir vídeo
+ Add response: Adicionar uma resposta
- End of conversation: ao chegar nesta intent a conversa será encerrada, dependendo do projeto não é indicado uma intent que encerre a conversation.
- Additional resources to response: adiciona opções de respostas, fechadas ou abertas.
- Jump to another Intent node?: Ao se acionar essa opção o cliente será direcionado a outro nó, ou seja, outro trecho do caminho dependendo da resposta dele.
Named Queries: é possível adicionar queries (consultas estáticas) a uma conversation e configurá-las.
+ Add a named query: ao acionar este botão a query é adicionada permitindo nomear e configurar.
- Named Query: nome da consulta que pode ser dado, ou escolhido um já existente.
- Fields: campos retornados na resposta.
- Page size: número de registros a serem obtidos (limitado a 1000).
- Sort field: campo para classificar as informações.
- Sort order: no caso de Sort field ser usado, a ordem a ser considerada (Valores: ASC ou DESC).
- + Add sort field: adiciona mais campos para classificação e ordenação.
Fulfillment
O mecanismo de fulfillment do Carol Assistant fornece uma plataforma aberta para criar lógica de negócios, integrações com APIs externas ou criar respostas de forma programática. Por enquanto, oferecemos suporte ao Python 3 como linguagem de programação padrão para criar realizações. Para o correto uso deste recurso, é necessário o correto entendimento dos principais conceitos.
Sua conversation pode ter um fulfillment para cada node de Intenção. O fulfillment do node de intenção será executado quando o node de intenção for ativado por meio de uma mensagem do usuário
Plano de execução do node de Intenção
Criação de um novo Fulfillment
Para adicionar um fulfillment a um node de intenção, selecione a guia preenchimento no painel detalhe do node de intenção e clique no botão + Add a fulfillment.
Depois disso, o Carol Assistant adicionará um novo cumprimento ao node de intenção e abrirá o Ambiente de Desenvolvimento de fulfillment.
- Ambiente de Desenvolvimento de fulfillment (FDE)
Com o fulfillment do FDE, os desenvolvedores podem escrever e testar os atendimentos. A partir da versão Carol 3.37, o FDE se parece com a imagem a seguir.
WebHooks
Outra forma de permitir a execução de codigo fonte customizado é utilizando webhooks. Webhook é um método de ampliar ou alterar o comportamento de uma aplicação utilizando callbacks (ligações de retorno) personalizados com contratos, autenticação e padrões pré-estabelicidos. O TOTVS Carol Assistente permite que antes de cada envio de resposta ao usuário da conversa, uma chamada autenticada a um endpoint externo sejá realizada com o conteúdo do contexto da conversa e aguarde uma nova resposta a ser enviada para a conversa com o usuário.
Configuração do WebHook
Para configurar o webhook no nó de intenção, na aba fulfillment, selecione o fulfillment type Webhook.
Agora você pode adicionar a URL do endpoint que irá receber a chamada do webhook. Caso necessário pode-se informar diferentes endpoints para ambientes de desenvolvimento e produção, para isso basta desmarcar o checkbox Use the same URL for Production and Development?
Chamadas e payloads
Quando configurado, o TOTVS Carol Assistente, sempre que o nó de intenção for ativado durante uma conversa, irá fazer uma chamada HTTP usando o comando POST para a URL do endpoint configurada. Além dos cabeçalhos http habituais, será enviado um cabeçado específico para a autenticação com o token mostrado na configuração do fulfillment, o que deverá ser validado na ponta que receberá a chamada. Os cabeçalhos da chamada são:
Cabeçalho | Descrição |
---|
X-Assistant-Signature-Token | Contém o Webhook token gerado aleatóriamente no momento da configuração do webhook do nó de intenção. |
Content-Type | Tipo de conteúdo do payload. Sempre será 'application/json' |
O payload da chamada do webhook contém as seguintes propriedades:
Parâmetro | Tipo | Descrição |
---|
intent_name | Str | Nome do nó ativado |
parameters | Dict | Todos os parametros desse contexto de conversa |
sessionLog | List | Lista de ID de sessões até esse ponto da conversa |
namedQueries | Dict | Resultados da Named Query (se houver) (a ser descontinuado) |
query | String | Query executada (se houver) (a ser descontinuado) |
language | String | Idioma da conversa |
carolOrganization | String | Nome da Organização |
carolEnvironment | String | Nome do Ambiente |
carolOrganizationId | String | Id da Organização |
carolEnvironmentId | String | Id do Ambiente |
sessionId | String | Id da sessão da conversa atual |
isProduction | Boolean | Informa se a convesa está acontecendo em Produção ou Desenvolvimento |
channelName | String | Nome do canal por onde a mensagem chegou |
Retorno:
Para retornar dados pelo WebHook, o TOTVS Carol Assistente espera que os dados estejam em um formado pré definido. O retorno deverá ser um objeto JSON com as seguintes propriedades:
Parâmetro | Obrigatório? | Tipo | Descrição |
---|
message | Sim | String | Mensagem que será retornada na conversa |
short_message | Não | String | Mensagem curta de retorno |
jump_to | Não | String | Nome do nó para o qual a conversa será direcionada |
options | Não | Array[Str] | Lista de opções pré-definidas que aparecerão como botões na resposta |
logout | Não | Boolean | Destrói a sessão de usuário na conversa |
parameters | Não | Object | Parametros que serão adicionados no contexto da conversa |
Canais de conversação
Canal Telegram
Antes de configurar o canal Carol Assistant Telegram, é preciso criar seu novo bot usando o BotFather do Telegram. Verifique a documentação do Telegram Bot sobre como criar um Telegram Bot em<{+}https://core.telegram.org/bots+>
Limitações
O canal Carol Assistant Telegram não suporta [modo em linha] (https://core.telegram.org/bots#inline-mode) e recursos avançados do Telegram como: pagamentos, jogos, teclados embutidos, retornos de chamada e comandos (o desenvolvedor pode treinar uma intenção node para oferecer suporte a um comando de barra, adicionando um comando de barra nas frases de treinamento do node de intenção).
Ao formatar as respostas, lembre-se de que o Telegram aceita apenas um subconjunto de tags de formatação HTML (o Carol Assistant removerá todas as tags não suportadas antes de enviar mensagens para a API do Telegram:
Check-list
- Crie um novo bot com @botfather
- Obtenha o token da API do Telegram Bot em @botfather
- Defina o secret TELEGRAM_TOKEN no Carol Assistant Secrets
- Adicionar /start como frase de treinamento para o node de intenção de boas-vindas padrão
- Configurar
Adicionar token de API do Telegram Bot ao Carol Assistant
Com o seu novo Telegram Bot pronto e o token da API do Telegram Bot recuperado, agora o desenvolvedor pode configurar o Carol Assistant para responder às consultas do Telegram.
Primeiro, adicione seu token de API do Telegram Bot como um novo secret do Carol Assistant. Clique no botão Criar secret e preencha todas as informações necessárias.
Depois de inserir as informações do token, clique em Salvar.
Configure o ponto de extremidade do webhook na configuração do Telegram Bot
Depois de configurar o token da API do Telegram Bot no Carol Assistant, precisamos informar a API do Telegram para onde enviar mensagens do usuário do Telegram para a API do Carol Assistant.
Para ajudar a concluir esta etapa, fornecemos um endpoint:
{+}https://telegram-assistantbackend.apps.carol.ai/setup+
Este ponto de extremidade aceita apenas o método POST HTTP.
Canal WhatsApp
Existem algumas etapas para habilitar o canal WhatsApp para um ambiente Carol Assistant, são elas:
- Definir API Carol Assistant no Twilio
- Obtenha o seguinte URL:
https://twilio-assistantbackend.apps.carol.ai/incoming_channel_message/\{organization}/{tenant}/{organization_id}/{tenant_id}/{token}
Substitua os seguintes valores:
* organization * - exemplo: Totvs
* tenant * - exemplo: Dev
* organization_id * - ID exclusivo da organização
* tenant_id * - ID exclusivo do locatário / ambiente
* token *: - Token do assistente que pode ser encontrado na página do token, conforme mostrado abaixo:
Defina a API no lado do Twilio como um ponto de extremidade HTTP Post.
Defina o número Twilio
- Adicionar ao token Carol Assistant
Definir conta Twilio e token como secret
- Obtenha a conta e o token do Twilio:
- Adicione estes dois secrets dentro do Carol Assistant, com base no token Twilio e na conta, respectivamente:
Canal Microsoft Teams
O Microsoft Teams é uma ferramenta de comunicação e armazenamento de arquivos utilizada pelo mundo acadêmico e corporativo, onde a comunicação pode ser escrita, áudio ou vídeo.
Configurar
- Abra o "App Studio" dentro do Microsoft Teams:
- Crie um novo aplicativo do zero
- Defina o nome abreviado pelo qual deseja que o seu assistente seja identificado.
- Defina um nome completo para o aplicativo e também uma descrição que será mostrada aos usuários.
- Defina a versão do aplicativo, por exemplo: 1.0.0
- Defina o nome da sua empresa
- Definir o site da empresa
- Defina uma página "Declaração de privacidade" e "Termos de uso".
- Defina a marca do seu Assistente
- Abra a página Bots e configure
- Defina o nome do bot pelo qual você deseja que seu assistente seja identificado. Será o nome que os usuários irão visualizar e mencionar como Assistente.
- Também é hora de escolher como seu Assistente será usado. Existem algumas possibilidades:
- Pessoal
- Equipe
- Conversa em grupo
- E então crie o bot
Após a configuração do bot, você verá uma página como esta:
- Copie o ID acima do nome do bot e cole-o em ** MSTEAM_APP_ID **
- Clique no botão ** Gerar nova senha **, copie a senha e cole no campo ** MSTEAM_TOKEN **.
- Obtenha o URL do Webhook na página do Carol Assistant e cole no campo ** Endpoint de mensagens **
Vá para a página ** Testar e Distribuir **
- Clique em ** Publicar **
- Envie o aplicativo para o catálogo da sua organização.
Navegue até [Centro de administração do Microsoft Teams] (https://admin.teams.microsoft.com/)> Aplicativos do Teams> Gerenciar aplicativos.
- Pesquise o nome do aplicativo que você acabou de enviar
- Clique e publique.
- Instalando o App / Bot
- Selecione sua equipe
- Clique em Gerenciar equipe
- Clique em Mais Aplicativos
- Pesquise e instale o seu aplicativo