เป็นไปได้ไหมที่จะสร้างตัวกรอง Gmail ที่ทำงานกับส่วนหัวอื่นที่ไม่ใช่จาก, ถึง, หัวเรื่อง?


105

ฉันส่งต่อที่อยู่อีเมลเก่าของฉันไปยัง Gmail ฉันต้องการสร้างตัวกรองเพื่อให้จดหมายไปยังที่อยู่เก่านั้นมีป้ายกำกับอย่างถูกต้องใน Gmail

ฉันสามารถสร้างตัวกรอง Gmail โดยใช้ "ถึง:" ที่มีที่อยู่นั้น แต่ไม่ได้จับจดหมายทั้งหมดไปยังที่อยู่นั้นเฉพาะคนที่ได้รับการแก้ไขอย่างชัดเจน บ่อยครั้งที่มีสแปมที่มีคนอื่นเป็นผู้รับที่ชัดเจนและที่อยู่เก่าของฉันเป็นเพียงแค่สำเนาลับถึง ตัวกรอง "ถึง:" ไม่ทำงาน

สิ่งที่ฉันต้องการต้องการจะทำคือการกรองที่ "Delivered-To:" ส่วนหัว เป็นไปได้กับ Gmail หรือฉันติดอยู่กับสามตัวเลือกมาตรฐานของจาก, ถึง, หัวเรื่อง?


คำตอบ:


68

ใช่คุณสามารถกรองโดยส่งไปที่ เพียงสร้างตัวกรองใหม่ด้วยdeliveredto:youremail@address.comในhas the wordsฟิลด์


ไม่เข้าใจง่ายมาก แต่ใช่ ฉันคิดว่าส่วนใหญ่to:ควรเป็นdeliveredto:จริงเพื่อสนับสนุน BCCs
lapo

สิ่งนี้ทำงานกับ wildcard ด้วยเช่นกันโดยใช้ที่อยู่อีเมลที่รับทั้งหมดdeliveredto:*@mydomain.comหรือไม่ ฉันพยายาม แต่จะใช้เวลาในการทดสอบ
มาร์กอส

1
โปรดทราบว่าคุณสามารถใช้แถบค้นหาที่ด้านบนของ GMail เพื่อสร้างการค้นหาขั้นสูงของคุณจากนั้นคลิกลูกศรที่ท้ายแถบค้นหาและเลือก "สร้างตัวกรองด้วยการค้นหานี้"
Feckmore

2
สิ่งนี้ไม่ได้แก้ปัญหาสำหรับส่วนหัวอื่นที่ไม่ใช่ Delivered-To? (พูดการค้นหาส่วนหัวที่ส่งโดยอัตโนมัติหรือลำดับชั้นนำ)
Gert van den Berg

2
มันค่อนข้างน่ารังเกียจที่ข้อความส่วนหัวคือ "Delivered-To:" ในขณะที่ฟิลด์ "มี" จะกำจัด '-' เพื่อให้ได้ผลลัพธ์ "ส่งไปที่:"
James Bowery

36

นี่คือรายการของผู้ประกอบการขั้นสูงทั้งหมด:

จาก:
ถึง:
หัวเรื่อง:
หรือ
- (เครื่องหมายขีดคั่น)
ป้ายกำกับ:
มี:
รายการสิ่งที่แนบ:
ชื่อไฟล์:
"" (เครื่องหมายคำพูด)
()
ใน: ที่ใดก็ได้
ใน: กล่องจดหมายเข้า
: ถังขยะ
ใน: ขยะ
คือ: สำคัญ
คือ: ติดดาว
คือ: ยังไม่อ่าน
คือ: อ่านแล้ว
: มีดาวสีเหลือง: มีดาว
สีแดง: มีดาว
สีส้มมี: ดาว
สีเขียวมี: ดาว
สีฟ้า
มี: ดาวสีม่วง
มี: สีแดงปัง
มี: สีส้ม guillemet
มี: สีเหลืองปัง
มี: สีเขียว - ตรวจสอบ
มี: ข้อมูลสีฟ้า
มี: สีม่วงคำถาม
ซีซี:
bcc:
หลังจากที่:
ก่อน
เก่า:
ใหม่:
เก่า _ กว่า:
ใหม่ _ กว่า:
คือ: chat
deliveredto:
แวดวง:
มีวงกลม
หมวดหมู่:
ขนาด:
ขนาดใหญ่:
ขนาดเล็ก:
+ (บวก)
rfc822msgid:
มี: userlabels
มี: nouserlabels

[ แหล่งที่มา ]


ขอบคุณ แม้แต่หน้าของพวกเขาก็ทำให้ยากที่จะตรวจสอบว่าตัวดำเนินการ NOT -จะทำงานกับที่อยู่ไวด์การ์ดเช่น: -*@mydomain.comในTo:ฟิลด์
มาร์กอส

31
  1. ไปที่https://script.google.comและสร้างสคริปต์ Google Apps ใหม่

สคริปต์ google apps ใหม่

  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 threads = GmailApp.getInboxThreads ();" ด้วย "var threads = GmailApp.search (" newer_than: 1 ชม. ");"
Rick

ฉันใช้var MyEmails = GmailApp.search("is:unread in:inbox");เพื่อค้นหาอีเมลทั้งหมดในกล่องจดหมายที่ยังไม่ได้อ่าน
Ronen Ariely

@Rick - ฉันเขียนสคริปต์ที่ใช้อินเทอร์เฟซ IMAP เพื่อแนะนำ 13 + GB ทั้งหมดในบัญชี gmail ของฉัน 'จะไม่ทำให้ฉันประหลาดใจถ้า script.google.com อนุญาต
broofa

1

คุณสามารถใช้deliveredto:โอเปอเรเตอร์ในHas the wordsฟิลด์เมื่อสร้างตัวกรองตามที่ระบุ @mvime แต่ไม่ทุกผู้ให้บริการอีเมลผนวกDelivered-toไปยังส่วนหัวของอีเมลดังนั้นวิธีที่เชื่อถือได้มากขึ้นคือการส่งต่อyou@oldemail.comไปyou+oldemail@gmail.com, deliveredto:(you+oldemail@gmail.com)และกรองตาม

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.