As ações de e-mail permitem enviar e receber mensagens usando credenciais SMTP/IMAP/POP3.
Para envio use SMTP; para recebimento recomendamos IMAP (mais recursos). Algumas ações só funcionam com IMAP — isso está indicado onde aplicável.
Observação: apenas métodos anotados com @decorators.robotaction estão documentados aqui. Os retornos das ações viram variáveis de estado — por exemplo, se a ação retorna {'emails_count': 10} você acessa com $emails_count.
Importante: recomendamos o uso de IMAP para recebimento de e-mails.
Ações
email.close
Fecha a conexão ativa.
Parâmetros:
email_client.quit(opcional) — para POP3 pode ser necessário usarquit=Truepara persistir alterações.
Retornar:
nenhum.
email.create_imap_client
Cria e conecta um cliente IMAP para leitura/gerenciamento de e-mails.
Parâmetros:
user,password,host.port(opcional, default 995).default_folder(opcional, default 'inbox') — pasta inicial.
Retornar:
email_client— objeto de conexão (usar nas demais ações).emails_count— número total de e-mails na pasta inicial.current_folder— nome da pasta atual (geralmentedefault_folder).
email.create_pop_client
Cria e conecta um cliente POP3.
Parâmetros:
user,password,host.port(opcional, default 995).
Retornar:
email_client— objeto de conexão.emails_count— número total de e-mails.
email.delete
Deleta a mensagem atual (comportamento pode variar entre POP/IMAP).
Parâmetros:
email_client.
Retornar:
emails_count— novo total de e-mails na pasta.
email.find_attachments
Procura anexos no e-mail atual, filtrando por nome e/ou mime type.
Parâmetros:
email_client,attach_name(opcional),mime_type(opcional),only_attachments(opcional, default True).
Retornar:
attachments— lista de objetos de anexo.attachments_count— número de itens retornados.
email.get_current_email
Retorna os campos do e-mail na posição atual do cliente.
Parâmetros:
email_client— objeto retornado porcreate_imap_client/create_pop_client.
Retornar:
from— remetente (nome + endereço quando disponível).from_address— somente endereço de e-mail do remetente.to— destinatários.subject— assunto.date— data/hora do envio.body— conteúdo em texto plano.html_body— conteúdo em HTML.attachments_count— número de anexos.has_attachments— booleano indicando existência de anexos.
email.list_folders
Lista as pastas disponíveis (IMAP).
Parâmetros:
email_client.
Retornar:
folders— lista de nomes de pastas.
email.move_to
Mova a mensagem atual para outra pasta (IMAP only).
Parâmetros:
email_client,to_folder— destino.
Retornar:
emails_count— contagem atualizada.
email.next_email
Avança para a próxima mensagem da caixa de correio atual e retorna seus dados.
Parâmetros:
email_client - instância retornada por email.create_imap_client ou email.create_pop_client.
Retornar:
from - remetente (nome e/ou endereço).
from_address - endereço de e-mail do remetente.
to - destinatários.
subject - assunto.
date - data da mensagem.
body - corpo em texto plano.
html_body - corpo em HTML.
attachments_count - quantidade de anexos.
has_attachments - indica se há anexos.
Exceções:
Esta ação não gera exceções
email.previous_email
Retorna para a mensagem anterior da caixa de correio atual e retorna seus dados.
Parâmetros:
email_client - instância retornada por email.create_imap_client ou email.create_pop_client.
Retornar:
Mesmas chaves de email.get_current_email.
Exceções:
Esta ação não gera exceções
email.save_attachment
Salva anexos do e-mail atual no file_path fornecido.
Parâmetros:
email_client,file_path,attach_name(opcional),mime_type(opcional),only_attachments(opcional, default True).
Retornar:
saved_files— lista de caminhos completos dos arquivos salvos.
Exceções:
FileNotFoundExceptionquando nenhum anexo é encontrado para os filtros.
email.search
Executa uma busca IMAP com filtro (IMAP only).
Parâmetros:
email_client,search_filter— filtro conforme RFC3501.
Retornar:
emails_count— total de e-mails resultantes/na pasta.
email.select_folder
Altera a pasta atual (IMAP only).
Parâmetros:
email_client,folder— nome da pasta.
Retornar:
current_folder— nome da nova pasta.emails_count— número de e-mails na nova pasta.
email.send_email
Envia uma mensagem usando SMTP.
Parâmetros:
sender— e-mail do remetente (FROM).to— destinatários (string com;ou lista).subject— assunto da mensagem.smtp_user— usuário SMTP.smtp_password— senha SMTP.smtp_server— host do servidor SMTP.smtp_port(opcional, default 25) — porta do servidor.tls(opcional, default False) — usar STARTTLS em vez de SSL.text(opcional) — corpo em texto simples.html(opcional) — corpo em HTML.attach_path(opcional) — caminho ou lista de caminhos para anexos (assets).signature_img(opcional) — imagem de assinatura (asset) embutida no HTML.no_auth(opcional) — se True, não faz login no servidor SMTP.to_cc/to_bcc(opcionais) — CC e BCC (string ou lista).
Retornar:
nenhum (ação retorna vazio).
Exceções:
AuthorizationException— falha na autenticação SMTP.MarvinRuntimeException— erros de comunicação com o servidor.
email.store
Comando genérico IMAP
STOREpara flags/atributos específicos (IMAP only).
Parâmetros:
email_client,message,value.
Retornar:
nenhum.
email.update_mailbox
Atualiza contagem e estado da mailbox (recarrega informações).
Parâmetros:
email_client.
Retornar:
emails_count— número total de e-mails na pasta atual.