Encaminhei um dos meus endereços de e-mail realmente antigos para o Gmail. Gostaria de criar um filtro para que qualquer e-mail para esse endereço antigo seja sempre rotulado corretamente no Gmail.

Posso criar um filtro do Gmail com o “Para:” contendo esse endereço, mas isso não pega todos os e-mails para esse endereço, apenas aqueles que são endereçados explicitamente. Freqüentemente, há spam em que outra pessoa é o destinatário explícito e meu endereço antigo era simplesmente Cco “d. O filtro “To:” não funciona.

O que eu “d gostaria de fazer é filtrar no cabeçalho” Delivered-To: “. Isso é possível com o Gmail ou estou preso às três opções padrão de De, Para, Assunto?

Comentários

Resposta

Sim, você pode filtrar por entregue. Basta criar um novo filtro com deliveredto:[email protected] no campo has the words.

Comentários

  • Não é muito intuitivo, mas sim. Acho que a maioria to: deveria ser deliveredto:, na verdade, para suportar BCCs.
  • Isso também funcionou com curingas, para exemplo, usando um endereço de pega-tudo em deliveredto:*@mydomain.com? Estou tentando, mas demorarei para testar.
  • Observe que você pode usar a barra de pesquisa na parte superior do GMail para construir sua pesquisa avançada e, em seguida, clicar na seta no final da barra de pesquisa e selecionar ” Crie um filtro com esta pesquisa. ”
  • Isso não resolve o problema de cabeçalhos diferentes de Delivered-To ? (Digamos que uma pesquisa pelos cabeçalhos Auto-submetidos ou de precedência)
  • ‘ é bastante desagradável que o texto do cabeçalho seja ” Delivered-To: ” enquanto o campo ” tem ” elimina o campo ‘ – ‘ para render ” entregue a: “.

Resposta

Aqui está uma lista de todos os operadores avançados:

de:
para:
assunto:
OU
– (hífen)
rótulo:
tem: anexo
list:
filename:
“” (aspas)
()
em: qualquer lugar
em: caixa de entrada
em: lixo
em: spam
é: importante
is: starred
is: unread
is: read
has: yellow-star
has: red-star
has: orange-star
has: green-star
has: blue-star
has: purple-star
has: red-bang
has: orange-guillemet
has: yellow-bang
has: green- check
has: blue-info
has: purple-question
cc:
bcc:
after:
before:
mais antigo:
newer:
old_than:
newer_than:
is: chat
Deliverto:
circle:
has: circle
category:
size:
maior:
menor:
+ (sinal de mais)
rfc822msgid:
has: userlabels
has: nouserlabels

[ fonte ]

Comentários

  • Obrigado. Até mesmo suas páginas tornam difícil determinar se um operador NOT - funcionaria em endereços curinga, por exemplo: -*@mydomain.com no To: campo

Resposta

  1. vá para https://script.google.com e crie um novo Google Apps Script

novo script do google apps.

  1. selecione a opção “Criar script para Gmail” opção

    • isso criará um projeto de script
    • isso criará um script chamado Code.gs
    • isso criará funções de amostra, uma delas chamada processInbox
  2. salve o projeto

  3. personalize o script e teste-o até ficar satisfeito
  4. encontre o botão “gatilho personalizado” do “projeto personalizado”

    botão gatilho personalizado

    • isso permitirá que você execute o script em um cronômetro (por exemplo, diariamente, ou a cada minuto )

Exemplo:

processInbox

Esta função irá iterar em todas as mensagens na caixa de entrada.

function processInbox() { // process all recent threads in the Inbox (see comment to this answer) var threads = GmailApp.search("newer_than:1h"); for (var i = 0; i < threads.length; i++) { // get all messages in a given thread var messages = threads[i].getMessages(); for (var j = 0; j < messages.length; j++) { var message = messages[j]; processMessage(message); } } } 

Vá um passo adiante e chame GmailApp.search() se desejar fazer algo sofisticado em vez de GmailApp.getInboxThreads().

processMessage

Esta função cuidará do processamento de uma única mensagem; você obtém o conteúdo bruto com getRawContent() e tenta encontrar seu cabeçalho lá, se estiver lá, marque a mensagem.

function processMessage(message) { var body = message.getRawContent(); if (body.indexOf("X-Custom-Header: some-custom-value") > -1) { // do stuff with message (e.g. add label) } } 

Comentários

  • Minha reação instintiva não comprovada é que o Google fará algo para impedir os usuários percorrendo shows de conteúdo de e-mail bruto a cada minuto. Portanto, ‘ d aconselho a substituir ” var threads = GmailApp.getInboxThreads (); ” com ” var threads = GmailApp.search (” newer_than: 1h “); ”
  • Estou usando var MyEmails = GmailApp.search("is:unread in:inbox"); para pesquisar todos os e-mails da caixa de entrada que ainda não foram lidos
  • @Rick – escrevi um script que usa a interface IMAP para percorrer todos os 13 + GB em minha conta do gmail. ‘ Não ‘ me surpreenderia se script.google.com permitisse.
  • Para o benefício de quem quer que venha para isso como eu estava tentando fazer exatamente isso, você não pode ‘ adicionar um rótulo a uma mensagem, apenas ao tópico, para ‘ vou precisar fazer message.getThread().addLabel(GMailApp.getUserLabelByName("Some Label"))
  • Você pode obter o cabeçalho da mensagem, o que pode ser melhor do que pesquisar no corpo, especialmente para mensagens com anexos.

Resposta

Você pode usar o operador deliveredto: no Has the words campo ao criar um filtro, conforme @mvime indicado. No entanto, nem todos os provedores de e-mail acrescentam Delivered-to ao cabeçalho do e-mail, então uma maneira mais confiável é encaminhar [email protected] para [email protected] e filtrar por deliveredto:([email protected]).

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *