Je dois créer un script Google App pour répondre aux e-mails générés par la machine, à l'exception de ceux également envoyés à un collègue ou contenant un sujet particulier ne relevant pas de ma responsabilité.
J'ai essayé d'utiliser le GmailApp.search
API qui inclut tous les courriers de l’utilisateur X mais PAS ceux qui sont également adressés à l’utilisateur Y NOR ceux qui contiennent "junk_term". Je veux que les courriels soient archivés et sauter la boîte de réception.
J'ai créé une requête comme celle-ci:
"from:([email protected]) -{[email protected] OR junk_term}"
Mais il semble que rien ne soit retourné.
Résoudre ce problème nécessite de comprendre deux choses:
1) Si un filtre a placé une étiquette sur un courrier électronique existant, l’étiquette reste en place même si ce filtre a été supprimé. Il faut supprimer l'étiquette elle-même, puis recréer un nouveau filtre afin que vos modifications soient "prises".
2) Il y a un bogue dans le système de filtrage Gmail. Si vous essayez de configurer des booléens complexes tels que
from:[email protected] -to:[email protected] -junk_term
Cela fonctionnera correctement lors de la recherche initiale, mais si vous l'utilisez pour créer un filtre, les termes, en particulier les NOT, seront tronqués.
La syntaxe correcte, (astuce pour chenghuayang ), consiste à ignorer les à et des.
[email protected] [email protected] -junk_term
Vous pouvez utiliser des étiquettes pour marquer vos courriels et les traiter en conséquence, en fonction de ces étiquettes:
from: [email protected]
puis appliquez l’étiquette Label_X
from: [email protected]
puis appliquez l’étiquette Label_Y
junk_term
puis appliquez l’étiquette Label_Y
label:label_X AND -label:Label_Y
puis respond
La condition de la dernière règle doit être ajoutée à la Includes the words
champ.
Here est une liste d'attributs supplémentaires.