Conectando um Azure Bot ao Microsoft Teams para realizar atendimentos no Omni PA
Sumário
Visão Geral
Apresentar o processo de publicação de um Azure Bot para utilização desta interface de conversação no Microsoft Teams com o objetivo de compor este canal de atendimento em nossa solução de Omnichannel (Omni PA).
Recurso disponível a partir da versão 5.52.8.1 das soluções de CRM e OMNI.
Requisitos
- Uma assinatura do Azure. Se a sua organização ainda não tem uma, crie uma conta gratuita ou adquira um plano de pagamento conforme o uso (de acordo com a necessidade) para mais informações acesse: Portal Microsoft Azure.
Criando um bot no Microsoft Azure
Realize o processo de logon no Portal do Azure, após este finalizado, insira na barra de pesquisa o recurso “Azure Bot” e selecione-o em seguida.
Dito isto, precisamos preencher as seguintes informações:
Identificador do Bot | Identificador exclusivo do bot. |
Assinatura | Plano de assinatura do Azure |
Grupo de Recursos | Grupo de recurso desejado onde são compartilhadas as mesmas permissões e políticas. |
Novo Local do Grupo de Recursos | Caso opte por criar um novo grupo de recursos, será necessário configurar qual a região do Azure adequada para sua organização e demais utilizadores. Nem todos os recursos estão disponíveis em todas as regiões. |
Residência de Dados | Região para residência de dados. Isso limita as regiões em que os dados são armazenados/processados e os canais disponíveis para o bot. |
Tipo de Preço | Tipo de preço para o recurso de Bot do Azure. |
Tipo de Aplicativo | Uma ID do Aplicativo da Microsoft é necessária para criar o recurso do Azure Bot. Neste contexto utilizaremos “Locatário único” em cenários onde os usuários sejam equipes hospedadas no mesmo locatário do Azure para acessar o bot e “Multilocatário” em cenários onde qualquer cliente ou parceiro podem acessar de diversos locatários. |
Tipo de Criação | Selecionaremos a opção “Criar nova ID do Aplicativo da Microsoft” para que o ID de aplicativo possa ser criado automaticamente. |
Clique em “Examinar e Criar” e na tela seguinte poderemos revisar as configurações indicadas anteriormente.
Caso tudo esteja em conformidade com as definições indicadas clique em “Criar“. Após a confirmação, receberemos a mensagem de sucesso abaixo, esta refere-se a implantação dos recursos necessários para utilização do Azure Bot.
Acesse a opção “Ir para o recurso” para iniciarmos as configurações iniciais.
Perfil de Bot
No menu lateral, dentro do item Perfil de Bot iremos configurar o nome (Display Name) e um ícone para o exibição no Teams que representará o Bot.
O nome de exibição pode ser diferente do nome de identificação do BOT.
Alterações nas configurações do BOT podem levar até 30 minutos para serem refletidas em todas as regiões. Mudanças referentes aos ícones podem levar até 24 horas.
Clique em “Aplicar” para salvar as alterações.
Configuração
No menu lateral dentro do item “Configuração”, habilitaremos a caixa de seleção “Habilitar Ponto de Extremidade de Streaming” e preencheremos o campo ‘Ponto de extremidade de mensagens’ com a Url de Webhook do Omni.
Insira o link publicado do webhook da sua organização + sufixo (/hook/MessageTeams)
Clique em “Aplicar” para salvar as alterações.
Canais
No menu lateral, dentro do item “Canais” selecionaremos o canal “Microsoft Teams”.
Concorde com os termos e condições de utilização para prosseguir.
Em decorrência disto, na aba “Mensagens” selecionaremos a opção “Microsoft Teams Commercial” por padrão para indicar qual o tipo das mensagens disponibilizadas para o Bot.
Na aba “Chamada”, habilitaremos a caixa de seleção “Habilitar chamada” e preencheremos o campo “Webhook (para chamada)” com a Url de Webhook do ambiente.
Insira o link publicado do webhook da sua organização + sufixo (/hook/MessageTeams)
Configurando o aplicativo associado ao Azure Bot
O processo demonstrado anteriormente, vimos que é necessário um ID do Aplicativo da Microsoft para criar o recurso do Azure Bot, devido a isto realizamos a criação conjunta de um BOT e de um aplicativo associado.
Iremos agora configurar permissões que serão utilizadas pelo aplicativo para atender aos recursos necessários de operação do BOT. Para adicionar as permissões necessárias, primeiramente iremos acessar o portal do “Azure Active Directory”.
A partir dele, vamos localizar nossa aplicação criada, para isto clique em “Registros de Aplicativo“. Veja que facilmente podemos localizar a aplicação através da aba “Aplicativos com Propriedade”, mas podemos também localizá-la buscando pelo nome definido na barra de pesquisa.
Selecione o aplicativo criado anteriormente.
Para adicionar as permissões, no menu lateral clique em “Permissões de APIs“. Na tela a seguir, poderemos adicionar permissões, clicando no botão “+ Adicionar uma permissão“.
A tela de permissões será aberta, devemos clicar em “Microsoft Graph”.
Em seguida, escolheremos a permissão “Permissões de Aplicativo“.
Com isso, seremos capazes de escolher as permissões necessárias referentes a utilização do Azure Bot.
As permissões necessárias são:
-
AppCatalog.ReadWrite.All
-
Chat.Create
-
Chat.Read.All
-
Application
-
Chat.ReadWrite.All
-
ChatMessage.Read.All
-
ChatMessage.Send
-
Directory.Read.All
-
TeamsAppInstallation.ReadForUser.All
-
TeamsAppInstallation.ReadWriteForUser.All
-
TeamsAppInstallation.ReadWriteSelfForUser.All
-
Teamwork.Migrate.All
-
User.Read.All
Vamos começar pelo protocolo AppCatalog.ReadWrite.All, basta buscarmos pelo seu nome, que será apresentada a seguinte opção, que deverá ser marcada, AppCatalog.ReadWrite.All.
Repita o processo com todos os protocolos listados acima. Para então clicar em “Adicionar Permissões”.
Após adicionar todos os recursos necessários, precisamos dar consentimento aos mesmos.
O consentimento é a permissão necessária que é dada pelo administrador do domínio ou algum usuário que tenha tal privilégio administrativo, para que os usuários do domínio consigam usar os recursos da aplicação sem quaisquer problemas de permissão.
Montando o aplicativo para utilização no Teams
Para o seu aplicativo tornar-se público e realizar atendimentos através desta plataforma é necessário inicialmente inserir o aplicativo na plataforma de gerenciamento do Microsoft Teams da sua organização.
Para inserir este aplicativo é necessário descrever como este se integra ao produto Microsoft Teams, esta descrição é conhecida como manifesto do aplicativo.
O processo é iniciado com o tratamento do arquivo .zip que será utilizado para subir a aplicação na plataforma. Neste deve conter o arquivo manifest.json e as duas imagens referenciadas a serem utilizados no BOT.
Abaixo dispomos do arquivo .zip utilizado nesta integração:
bot-teams.zip |
Após realizar o download e extrair, preencha as informações no arquivo manifest.json de acordo com a tabela abaixo:
“$schema” | Esquema da versão do aplicativo Microsoft Teams. |
“manifestVersion” | Versão de formatação do manifesto. Utilizamos o padrão “1.14”. |
“version” | Número da sua versão de manifesto. Utilizamos o padrão “1.0.0”. |
“id” | Identificador do seu Microsoft App (MICROSOFT APP ID). Para localizá-lo basta acessar o seu BOT na plataforma do Azure e este poderá ser encontrado na opção “Configuração” presente no Menu Lateral. |
“packageName” | Notação do domínio exclusivo para o seu aplicativo inserido de forma reversa. Por padrão: “com.microsoft.teams.NOMEAPP”. |
“developer”: “name” | Nome da organização/responsável pelo upload da aplicação. |
“developer”: “websiteUrl” | Endereço do site da organização. |
“developer”: “privacyUrl” | Endereço da política de privacidade e termos de uso da organização. Caso sua organização não disponha, utilize como exemplo a política de privacidade e termos de uso da TACTIUM para criação de uma. |
“developer”: “termsOfUseUrl” | Endereço da política de privacidade e termos de uso da organização. Caso sua organização não disponha, utilize como exemplo a política de privacidade e termos de uso da TACTIUM para criação de uma. |
“icons”: “outline” | Nome do arquivo que será utilizado para ícone (Exemplo: cinza-bot.png). Especificações: Branco com fundo transparente ou transparente com fundo branco, 32px X 32px. |
“icons”: “color” | Nome do arquivo que será utilizado para ícone. Especificações: Qualquer cor, mas deve estar sobre um fundo quadrado sólido ou totalmente transparente, 192px X 192px. |
“name”: “short” | Nome abreviado do seu aplicativo que é mostrado aos usuários. Limitação de 30 caracteres. |
“name”: “full” | Nome completo do seu aplicativo que é mostrado aos usuários. |
“description”: “short” | Descrição abreviada do seu aplicativo que é mostrada aos usuários. Limitação de 80 caracteres. |
“description”: “full” | Descrição completa do seu aplicativo que é mostrada aos usuários. |
“accentColor” | Valor de cor em código hexadecimal começando com #, que é usado pelo Teams para identificar seu aplicativo. |
“bots”: “botId” | Identificador do seu Microsoft App (MICROSOFT APP ID). O aplicativo foi registrado a partir do framework do BOT devido a isto usaremos o mesmo identificador. |
“bots”: “scopes” | Escopo reflete a área no Teams onde as pessoas podem usar seu aplicativo. Utilizaremos a opção “personal” para o seu aplicativo/bot no manifesto, pois desta forma este será disponibilizado apenas para usuários individuais. |
“bots”: “isNotificationOnly” | Desabilitado. Parâmetro habilita que o bot forneça apenas notificações, saindo do contexto conversacional. |
“bots”: “supportsCalling” | Desabilitado. Parâmetro habilita que o bot suporte chamadas de áudio. |
“bots”: “supportsVideo” | Desabilitado. Parâmetro habilita que o bot suporte chamadas de vídeo. |
“bots”: “supportsFiles” | Habilitado. Parâmetro habilita que o bot suporte o carregamento/download de arquivos em chat pessoal. |
“bots”: “commandLists”: “scopes” | Escopo reflete a área no Teams onde as pessoas podem usar seu aplicativo. Utilizaremos novamente a opção “personal” para o seu aplicativo/bot no manifesto. |
“permissions” | Permissões que o aplicativo/bot solicita, as padrões são:
identify: Solicita informações de identidade do usuário. messageTeamMembers: Solicita permissão para enviar mensagens diretas aos membros da equipe. |
“validDomains” | Uma lista de domínios válidos dos quais o aplicativo espera carregar qualquer conteúdo. Por padrão: “bot-conversation.azurewebsites.net” |
Salve as alterações no “manifest.json” e insira as imagens correspondentes as referenciadas no manifesto e formate novamente estes em um arquivo *.zip.
Centro de Administração Microsoft Teams
Dando continuidade, iremos realizar a inserção deste aplicativo na plataforma de administração do Microsoft Teams. Para isto acesse: https://admin.teams.microsoft.com. Dentro do portal, acesse o caminho Team Apps >> Manage Apps.
Para conseguir ter acesso aos recursos de administração certifique-se que desempenha uma das seguintes funções: Administrador global do domínio, Administrador de Teams.
Na página Manage Apps conseguimos visualizar e controlar todos os aplicativos do Teams disponíveis no catálogo para sua organização.
Dentro desta iremos tornar apto ao aplicativo que este seja instalado silenciosamente para cada usuário que venha a utilizá-lo.
Para isto acesse “Org-wide app settings”:
Em seguida, habilite a opção “Auto install approved apps”.
Após a conclusão do processo acima, poderemos realizar o upload de um novo aplicativo na plataforma. Para isto acesse “Upload new app”:
Em seguida, clique no botão “Upload” e selecione o seu arquivo.zip preparado anteriormente.
Aguarde a conclusão do processo e seu aplicativo/bot, já estará disponível na plataforma da sua organização. Acesse o link disponibilizado para visualizar as configurações, se desejado.
Utilizando o serviço no Tactium OMNI
Para iniciar atendimentos com o aplicativo/bot em nossa solução Omnichannel é necessário realizar o cadastramento desta integração no Manager ADM. Para mais informações acesse Configurando o Serviço do Microsoft Teams no Tactium Omni.