Email Trigger

Conheça o trigger e saiba como utilizá-lo.

Micaella Mazoni avatar
Escrito por Micaella Mazoni
Atualizado há mais de uma semana

Suportamos apenas o protocolo IMAP, sem anexos.
​     

Digamos que você esteja no Canvas e queira receber dados de uma caixa de e-mail. Com o trigger de e-mail, você consegue fazer tais integrações.

Exemplo:

1. Abra as configurações de trigger e selecione o tipo email-trigger.
​   

2. Preencha os campos das configurações:

  • Account: especifique a conta para que o trigger acesse o e-mail correto.

  • Operation: escolha a opção "mark as read" (existem outras opções, que explicaremos mais à frente).

  • Hostname: insira o nome do host do servidor IMAP (ex.: imap.uol.com).

  • Port: determine qual é a porta.

  • Email Folder: defina o nome da pasta / caixa de entrada que o trigger deve ler (ex.: inbox) Esta pasta não pode existir mais que 100 mensagens (lidas/não lidas).

  • Destination Email Folder: aponte para qual pasta a mensagem deve ser movida (o campo aparece apenas quando é escolhida a opção "move to another folder").

  • Maximum Timeout: preencha o tempo máximo de execução do trigger.

  • Allow Redelivery Of Messages: se ativada, a opção permite que as mensagens sejam entregues novamente caso o Pipeline Engine falhe.

       

3. Clique em "Confirmar".
​   

4. Continue a construção do pipeline.
​   

5. Conecte os seus componentes.
​   

6. Faça o deploy do pipeline:

  • Clique em "Runtime", localizado na parte superior da tela.

  • Selecione o ambiente, que pode ser test ou prod.

  • Clique em "Criar uma nova implantação". 

  • Selecione o pipeline com a sua versão e capacidade.

  • Clique em "Confirmar".

   

7. Quando for disparado, o pipeline receberá um payload similar ao seguinte:

{
"textMessage": "",
"htmlMessage": "Olá, Pedro\r\nAinda não recebi o relatório deste mês. Você poderia enviá-lo até o final do dia?",
"attachments": ["attachment_fileName1", "attachment_fileName2", "attachment_fileName3"]
"subject": "Relatório mensal",
"from": [
"Renato Peixe Junior <renato.peixe@gmail.com>"
],
"to": [
"pedro.gomes@gmail.com"
],
"cc": [],
"bcc": [],
"replyTo": [
"Renato Peixe Junior <renato.peixe@gmail.com>"
],
"sentDate": "2020-02-10T17:54:40Z[UTC]",
"receivedDate": "2020-02-10T17:54:52Z[UTC]"
}

  • data: conteúdo da mensagem

  • subject: assunto da mensagem

  • from: e-mail do remetente

  • to: e-mail do destinatário

  • cc: destinatários em cópia

  • bcc: destinatários em cópia oculta

  • replyTo: e-mail de destino da resposta

  • sentDate: data de envio da mensagem

  • receivedDate: data de recebimento da mensagem

     

Campo "Operation"

  • mark as read: selecione essa opção se, após processada, você deseja que a mensagem seja marcada como “lida”

  • move to another folder: selecione essa opção se, após processada, você deseja que a mensagem seja movida para uma pasta pré-determinada. O destino é especificado no campo "Destination e-mail folder", que só aparece nas configurações quando "move to another folder" é selecionada.

  • delete: selecione essa opção se, após processada, você deseja que a mensagem seja excluída.

Anexos

Caso haja algum anexo no corpo da mensagem recebida pelo trigger, ele vai baixá-las e disponibilizá-las dentro do diretório de execução do pipeline. Os nomes dos anexos estarão contidos dentro da propriedade attachments e essa propriedade será um array de strings contendo os nomes dos anexos.

IMPORTANTE: caso haja 2 anexos com o mesmo nome na mensagem, um identificador único será adicionado no nome do anexo baixado.

Exemplo

Há 2 anexos com nome "file.csv" dentro da mensagem. Portanto, o conteúdo da propriedade attachments será:

{
"attachments": ["file.csv", "0072e485-8ba2-4f79-bba5-8068e37ee792_file.csv"]
}

O identificador varia a cada execução.

       

P.S.: Se você utilizar o Gmail como host do servidor IMAP, será necessário autorizar o suporte de aplicações não seguras. Clique aqui para ver o passo-a-passo.

Respondeu à sua pergunta?