क्या ऐसा जीमेल फिल्टर बनाना संभव है जो हेडर, टू, सब्जेक्ट के अलावा हेडर पर काम करता हो?


105

मैंने अपने एक बहुत पुराने ईमेल पते को जीमेल पर भेज दिया है। मैं एक फ़िल्टर बनाना चाहूंगा ताकि उस पुराने पते का कोई भी मेल हमेशा Gmail में ठीक से लेबल हो।

मैं उस पते वाले "To:" के साथ एक जीमेल फिल्टर बना सकता हूं, लेकिन यह उस पते पर सभी मेल नहीं पकड़ता है , केवल उन लोगों को स्पष्ट रूप से संबोधित किया जाता है। अक्सर, वहाँ स्पैम होता है जहाँ कोई और स्पष्ट प्राप्तकर्ता होता है, और मेरा पुराना पता केवल Bcc'd था। "टू:" फिल्टर काम नहीं करता है।

मैं जो करना चाहता हूं , वह "डिलीवर-टू:" हेडर पर फ़िल्टर है। क्या यह जीमेल के साथ संभव है या क्या मैं, टू, सब्जेक्ट के तीन मानक विकल्पों के साथ फंस गया हूं?


जवाबों:


68

हाँ, आप डिलीट-टू-फ़िल्टर करके फ़िल्टर कर सकते हैं। बस क्षेत्र deliveredto:youremail@address.comमें एक नया फ़िल्टर बनाएं has the words


बहुत सहज नहीं है, लेकिन हाँ। मुझे लगता है कि वास्तव में बीसीसी का समर्थन करने के लिए सबसे अधिक to:होना चाहिए deliveredto:
लैपो

क्या इसने वाइल्डकार्ड के साथ भी काम किया है, उदाहरण के लिए, कैच-ऑल ईमेल एड्रेस का उपयोग करके deliveredto:*@mydomain.com? मैं इसकी कोशिश कर रहा हूं लेकिन परीक्षण के लिए समय लगेगा।
मार्कोस

1
ध्यान दें कि आप अपनी उन्नत खोज का निर्माण करने के लिए GMail के शीर्ष पर खोज बार का उपयोग कर सकते हैं, फिर खोज बार के अंत में तीर पर क्लिक करें और "इस खोज के साथ फ़िल्टर बनाएँ" चुनें।
फेकमोर

2
यह डिलीवर-टू के अलावा हेडर के लिए समस्या का समाधान नहीं करता है? (ऑटो प्रस्तुत या वरीयता हेडर के लिए एक खोज कहो)
Gert van den Berg

2
यह बहुत अप्रिय है कि हेडर टेक्स्ट "डिलीवर-टू" है, जबकि "है" फ़ील्ड "डिलीवर" करने के लिए "डिलीवर" करता है: "।
जेम्स बोवेरी

36

यहाँ सभी उन्नत ऑपरेटरों की एक सूची दी गई है:

से:
से:
विषय:
या
- (हाइफ़न)
लेबल:
है: अटैचमेंट
सूची:
फ़ाइल नाम:
"" (उद्धरण)
()
में: कहीं भी
: इनबॉक्स
में: कचरा
में: स्पैम
है: महत्वपूर्ण
है: तारांकित
है: अपठित
: पढ़ा
है: पीला सितारा
है: लाल सितारा
है: नारंगी सितारा
है: हरी सितारा
है: नीले सितारा
है: बैंगनी सितारा
है: लाल धमाके
होते हैं: नारंगी guillemet
है: पीले धमाके
होते हैं: हरे जाँच
है: नीला-जानकारी
है: बैंगनी-सवाल
cc:
bcc:
बाद:
से पहले:
पुराने:
नए:
पुराने_थेन:
नए_थेन:
है: चैट
डिलीवर:
सर्कल:
है: सर्कल
श्रेणी:
आकार:
बड़ा:
छोटा:
+ (प्लस चिह्न)
rfc822msgid:
है: उपयोगकर्ता लिंक
: nouserlabels

[ स्रोत ]


धन्यवाद। यहां तक कि अपने पृष्ठों यह मुश्किल निर्धारित करने के लिए नहीं ऑपरेटर बनाने -: वाइल्डकार्ड पते, जैसे पर काम करेगा -*@mydomain.comमें To:क्षेत्र
मार्कोस

31
  1. https://script.google.com पर जाएं और एक नया Google Apps स्क्रिप्ट बनाएं

नई Google ऐप्स स्क्रिप्ट।

  1. "Gmail के लिए स्क्रिप्ट बनाएँ" विकल्प चुनें

    • यह एक स्क्रिप्ट प्रोजेक्ट बनाएगा
    • यह एक स्क्रिप्ट बनाएगा Code.gs
    • यह सैंपल फ़ंक्शंस बनाएगा, उनमें से एक का नाम processInbox
  2. परियोजना को बचाओ

  3. स्क्रिप्ट को कस्टमाइज़ करें और जब तक आप संतुष्ट न हों, तब तक उसका परीक्षण करें
  4. "कस्टम प्रोजेक्ट के ट्रिगर्स" बटन को ढूंढें

    कस्टम ट्रिगर बटन

    • यह आपको स्क्रिप्ट को टाइमर पर चलाने देगा (जैसे दैनिक, या हर मिनट )

उदाहरण:

processInbox

यह फ़ंक्शन इनबॉक्स के सभी संदेशों पर प्रसारित करेगा।

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);
      }
   }
}

एक कदम आगे बढ़ें और कॉल करें GmailApp.search()यदि आप इसके बजाय कुछ फैंसी करना चाहते हैं GmailApp.getInboxThreads()

processMessage

यह फ़ंक्शन किसी एकल संदेश को संसाधित करने का ध्यान रखेगा; आपको कच्ची सामग्री मिलती है getRawContent()और अपने हेडर को वहां खोजने की कोशिश करें, यदि यह वहां है, तो संदेश को टैग करें।

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)
  }
}

11
मेरी अप्रमाणित प्रतिक्रिया यह है कि Google के पास हर मिनट कच्चे ईमेल सामग्री के लायक गिग्स के माध्यम से उपयोगकर्ताओं को रोकने के लिए कुछ होगा। इसलिए मैं "var थ्रेड = GmailApp.getInboxThreads ();" "var थ्रेड = GmailApp.search (" new_than: 1h ") ​​के साथ;"
रिक

मैं var MyEmails = GmailApp.search("is:unread in:inbox");इनबॉक्स में उन सभी ईमेल को खोजने के लिए उपयोग कर रहा हूं जो अभी तक पढ़े नहीं गए हैं
रोनेन एरली

@ रिक - मैंने एक स्क्रिप्ट लिखी है जो अपने जीमेल खाते में सभी 13 + जीबी के माध्यम से चलने के लिए IMAP इंटरफ़ेस का उपयोग करता है। अगर script.google.com ने इसकी अनुमति दी तो मुझे आश्चर्य नहीं होगा।
ब्रूफा

1

आप फ़िल्टर बनाते समय फ़ील्ड deliveredto:में ऑपरेटर का उपयोग कर सकते हैं Has the words, जैसा कि @mvime ने संकेत दिया है। हालांकि, सभी ईमेल प्रदाता Delivered-toईमेल हेडर के लिए नहीं होते हैं, इसलिए एक अधिक विश्वसनीय तरीका यह है कि आप इसे अग्रेषित you@oldemail.comकरें you+oldemail@gmail.comऔर फ़िल्टर करें deliveredto:(you+oldemail@gmail.com)

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.