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.