DEV Community

Marcus Andrade
Marcus Andrade

Posted on

Conectando PowerAutomate + Teams + ChatGPT

Neste pequeno post irei mostrar como efetuar a integração entre ChatGPT e PowerAutomate (Ferramenta da Suite Power da Microsft).
Como explicado anteriormente em outro post publicado aqui de como conectar Postman + ChatGPT, iremos utilizar o mesmo processo e chaves, porém desta vez, utilizando o serviço de mensageria do Microsoft Teams + Automate e ChatGPT, para podermos capturar perguntas e respostas para os usuários.

Vamos ao que interessa como efetuar a conexão:

Primeiramente necessitamos de acesso à uma conta do PowerAutomate.
Após este processo vamos acessa-lo e começar da seguinte forma:

  • No menu superior esquerdo selecionar como Novo Fluxo

Image description

  • Em seguida devemos Selecionar a opção Criar um fluxo da nuvem automatizado

Image description

  • Feito este processo, será aberta uma caixa de pesquisa e também alguns modelos, como neste caso estamos conectando ao Microsoft Teams vamos selecionar a seguinte opção: Quando uma palavra chave for mencionada e em seguida vamos selecionar a opção Criar

Image description

  • Agora seremos direcionados para a estrutura de arquitetura do fluxo, quais gatilhos e atividades iremos fazer ou montar, no caso veremos a seguinte instrução:

Image description

  • Onde possuímos o campo Tipo de mensagem, devemos escolher se será uma mensagem em um canal específico ou um Chat em grupo (disponível para todos, imaginem como se fosse um grupo de WhatsApp), no nosso caso iremos selecionar a opção Canal, mas lembre-se você poderá selecionar outro meio também.

Image description

  • Em seguida vamos preencher o campo Palavras-chave para pesquisar, isto irá nos trazer a seguinte condição, toda vez que alguém começar, uma pergunta utilizando esta palavra, irá acionar o nosso gatilho(trigger), no caso apresentado iremos utilizar a palavra ChatGPT

Image description

  • Onde possuímos a opção TEAM devemos selecionar a opção a qual o seu time representa (nome da sua empresa), ao clicar será listado para ti todos os grupos da sua empresa.

Image description

  • Ao selecionar o grupo será listado o Chanel (Mais conhecido como Canal), a qual iremos direcionar nosso fluxo, então após efetuar o preenchimento deste campo já mapeamos a qual grupo ou canal do teams iremos efetuar a captura da informação.

Image description
Lembrando, podemos ter mais de um grupo associado.

  • Agora, vamos adicionar uma etapa chamada Aplicar a cada, ou caso o seu esteja em inglês, Apply ecah order, para isto vamos clicar no sinal de "+" e buscar a opção Aplicar a cada:
    Image description

  • Selecione a opção Adicionar uma ação:

Image description

  • Busque por Aplicar a Cada:
    Image description

  • Ao Adicionarmos o campo Aplicar a cada, teremos a seguinte opção:

Image description
Onde estamos com a frase: Selecione uma saída de etapas anteriores, devemos clicar e selecionar a opção Value de nossa saída do teams, clique na caixa e pesquise e na aba conteúdo dinâmico selecione value.

Image description

  • Agora necessitamos selecionar a opção Adicionar uma ação

Image description

  • Vamos selecionar a opção, Obter Detalhes da Mensagem: Buscando o Conector Teams
    Image description

  • Feito isto, vamos preencher o nosso campo da seguinte forma:
    Mensagem: devemos buscar no conteúdo dinâmico por MessageID, que será o identificador de nossa mensagem

Image description

  • Após efetuarmos o preenchimento devemos selecionar o tipo de mensagem, a mesma que selecionamos no nosso gatilho principal, tipo de mensagem, CANAL

Image description

  • Em seguida, devemos selecionar o campo Team, a qual representa nossa empresa, ou chat ao qual foi direcionado:

Image description

  • No campo Chanel, devemos selecionar a opção a qual direcionamos nosso fluxo, para captura da mensagem:

Image description

  • No campo Parent Message ID, devemos selecionar a opção repply to message ID, lembrando este message ID é o mesmo que definimos acima.

Image description

Agora como mencionado no artigo anterior, devemos adicionar uma chamada HTTP com método POST para tal: conectar Postman + ChatGPT

  • Vamos clicar no sinal de mais e buscar a chamada HTTP

Image description
e vamos selecionar a primeira opção:

Image description

  • No campo método vamos selecionar POST

Image description

Image description

  • Vamos agora nos cabeçalhos selecionar os seguintes argumentos
    Authorization e Content-Type.

  • No campo Authorization devemos colocar a condição: Bearer e em seguida a sua Key (chave de autenticação)

Image description

  • No campo ao lado vamos preencher da seguinte forma:

Image description

  • Já no corpo da da saída HTTP devemos preencher da seguinte forma:
    {
    "model": "text-davinci-003",
    "prompt": ""
    "max_tokens": 2048,
    "temperature": 0
    }

  • Onde possuímos o "prompt", devemos selecionar o Body Content:

Image description

O campo body content irá trazer o que foi preenchido no chat do teams.

  • Em seguida, vamos adicionar uma nova ação, a qual se chama Responder com uma mensagem em um canal:

Image description

  • E vamos preencher como:
    Postar como: Selecionarmos o Flow bot
    Image description

  • Postar em: Vamos selecionar o Chanel ao qual utilizamos em todo o fluxo.

Image description

  • Messade ID: Devemos incluir o Campo MessageiD

Image description

  • Em Team: Devemos selecionar o chat ao qual estamos trabalhando, no caso o seu grupo da empresa, ou chat particular:
    Image description

  • Em Chanel: Vamos selecionar o chat ao qual deseja que a resposta seja inclusa:

Image description

  • E no Message iremos inserir a nossa resposta com uma variável, da seguinte forma:

  • Vamos clicar no corpo da mensagem em seguida seremos direcionados para o conteúdo dinâmico, vamos clicar em Expressão:
    Image description

  • E vamos preencher da seguinte forma: body('HTTP')?['choices'][0]['text']

E vamos clicar no OK ou atualizar

Image description

  • Agora devemos apenas testar nossa aplicação chamando o Gatilho:

Gatilho inicial da mensagem:

Image description
Ao qual definimos.

  • Em seguida sua pergunta:

Image description

  • Enviamos a pergunta :

Image description

E veremos no histórico o tempo de resposta:

Image description

Pode acontecer de demorar um pouco a resposta.
Mas no corpo ela virá da seguinte forma:

Image description

Obrigado por lerem até aqui.

Top comments (3)

Collapse
 
audifas profile image
Audifas Bandeira

Bom dia, poderia me orientar sobre esse ponto:
No campo Authorization...

Quais são os parâmetros que devo utilizar?

Obrigado pelo conteúdo!

Collapse
 
madrade1472 profile image
Marcus Andrade

Olá tudo bem?, no campo ao lado como mencionou você precisa colocar Authorization e ao lado o autenticador chave: Bearer "cole aqui sua chave" e com isto conseguirá efetuar a autenticação

Collapse
 
douglassantanna profile image
Douglas SantAnna Figueredo

Muito bom.. Testei aqui e funcionou