He reenviado una de mis direcciones de correo electrónico antiguas a Gmail. Me gustaría crear un filtro para que cualquier correo a esa dirección anterior sea siempre etiquetado correctamente en Gmail.
Puedo crear un filtro de Gmail con el «Para:» que contenga esa dirección, pero eso no captura todos los correos a esa dirección, solo los que se abordan explícitamente. A menudo, hay spam en el que otra persona es el destinatario explícito, y mi antigua dirección era simplemente Cco «d. El filtro «Para:» no «funciona.
Lo que» d me gusta hacer es filtrar en el encabezado «Entregado a:». ¿Es eso posible con Gmail o estoy atascado con las tres opciones estándar de Desde, Para, Asunto?
Comentarios
- Relacionados: Cree un filtro de Gmail para las notificaciones del calendario
Responder
Sí, puede filtrar por entregado a. Simplemente cree un nuevo filtro con deliveredto:[email protected]
en el campo has the words
.
Comentarios
- No es muy intuitivo, pero sí. Creo que la mayoría de
to:
deberían serdeliveredto:
en realidad, para admitir BCC. - ¿Esto también ha funcionado con comodines, para ejemplo, usando una dirección de correo electrónico general en
deliveredto:*@mydomain.com
? Lo estoy intentando, pero tardaré un tiempo en probarlo. - Tenga en cuenta que puede usar la barra de búsqueda en la parte superior de GMail para construir su búsqueda avanzada, luego haga clic en la flecha al final de la barra de búsqueda y seleccione » Cree un filtro con esta búsqueda. »
- Esto no resuelve el problema para los encabezados que no sean Delivered-To ? (Di una búsqueda para los encabezados Auto-enviados o Precedencia)
- Es ‘ bastante desagradable que el texto del encabezado sea » Delivered-To: » mientras que el campo » tiene » elimina el ‘ – ‘ para generar » entregado a: «.
Respuesta
Aquí hay una lista de todos los operadores avanzados:
de:
a:
asunto:
O
– (guion)
etiqueta:
tiene: archivo adjunto
lista:
nombre de archivo:
«» (comillas)
()
en: en cualquier lugar
en: bandeja de entrada
en: papelera
en: spam
es: importante
es: estrella
es: no leído
es: leído
tiene: estrella amarilla
tiene: estrella roja
tiene: estrella naranja
tiene: estrella verde
tiene: estrella-azul
tiene: estrella-violeta
tiene: explosión-roja
tiene: guillemet naranja
tiene: explosión-amarilla
tiene: verde- comprobar
tiene: información-azul
tiene: pregunta-púrpura
cc:
bcc:
después:
antes:
más antiguo:
más nuevo:
old_than:
newer_than:
es: chat
entregado a:
círculo:
tiene: círculo
categoría:
tamaño:
más grande:
más pequeño:
+ (signo más)
rfc822msgid:
tiene: userlabels
tiene: nouserlabels
[ fuente ]
Comentarios
- Gracias. Incluso sus páginas hacen que sea difícil determinar si un operador NOT
-
funcionaría en direcciones comodín, por ejemplo:-*@mydomain.com
en elTo:
campo
Responder
- ir a https://script.google.com y cree un nuevo script de Google Apps
-
Seleccione la opción «Crear secuencia de comandos para Gmail»
- Esto creará un proyecto de secuencia de comandos
- esto creará un script llamado
Code.gs
- esto creará funciones de muestra, una de ellas llamada
processInbox
-
guarde el proyecto
- personalice el script y pruébelo hasta que esté satisfecho
-
busque el botón «disparadores del proyecto personalizado»
- esto le permitirá ejecutar el script en un temporizador (p. ej., diariamente o cada minuto )
Ejemplo:
processInbox
Esta función iterará sobre todos los mensajes de la bandeja 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); } } }
Vaya un paso más allá y llame a GmailApp.search()
si quieres hacer algo elegante en lugar de GmailApp.getInboxThreads()
.
processMessage
Esta función se encargará de procesar un solo mensaje; obtienes el contenido sin procesar con getRawContent()
y tratas de encontrar tu encabezado allí, si está allí, etiqueta el mensaje.
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) } }
Comentarios
- Mi reacción instintiva no probada es que Google tendrá algo para detener a los usuarios recorriendo conciertos por valor de contenido de correo electrónico sin procesar cada minuto. Por eso, ‘ recomiendo reemplazar » var threads = GmailApp.getInboxThreads (); » con » var threads = GmailApp.search (» newer_than: 1h «); »
- Estoy usando
var MyEmails = GmailApp.search("is:unread in:inbox");
para buscar todos los correos electrónicos en la bandeja de entrada que aún no se han leído - @Rick – Escribí un script que usa la interfaz IMAP para recorrer los 13 + GB en mi cuenta de Gmail. ‘ No me sorprendería ‘ si lo permitiera script.google.com.
- Para el beneficio de cualquiera que asista para esto, como si estuviera tratando de hacer exactamente esto, no puedes ‘ t agregar una etiqueta a un mensaje, solo al hilo, por lo que ‘ tendré que hacer
message.getThread().addLabel(GMailApp.getUserLabelByName("Some Label"))
- Puede obtener el encabezado del mensaje, que podría ser mejor que buscar en el cuerpo, especialmente para mensajes con archivos adjuntos.
Respuesta
Puede usar el operador deliveredto:
en el Has the words
al crear un filtro, como indicó @mvime. Sin embargo, no todos los proveedores de correo electrónico agregan Delivered-to
al encabezado del correo electrónico, por lo que una forma más confiable es reenviar [email protected]
a [email protected]
y filtrar por deliveredto:([email protected])
.