보낸 사람,받는 사람, 제목 이외의 헤더에서 작동하는 Gmail 필터를 만들 수 있습니까?


105

정말 오래된 이메일 주소 중 하나를 Gmail로 전달했습니다. 이전 주소로 보내는 메일이 항상 Gmail에 올바르게 표시되도록 필터를 만들고 싶습니다.

해당 주소가 포함 된 "받는 사람 :"을 사용하여 Gmail 필터를 만들 수 있지만 해당 주소로 보내는 모든 메일을 파악할 수는 없으며 명시 적으로 주소가 지정된 메일 만 검색 할 수 있습니다. 다른 사람이 명시적인 수신자 인 경우가 종종 있으며, 이전 주소는 단순히 숨은 참조 주소입니다. "받는 사람 :"필터가 작동하지 않습니다.

내가 것 같은 헤더 : 어떻게하면 "배달-하려면"필터입니다. Gmail에서 가능합니까, 아니면 From, To, Subject의 세 가지 표준 옵션이 있습니까?


답변:


68

예, 전달 대상별로 필터링 할 수 있습니다. 필드 deliveredto:youremail@address.com에 새 필터를 만드십시오 has the words.


매우 직관적이지는 않지만 그렇습니다. 실제로 BCC를 지원하기 to:위해서는 대부분이 있어야 한다고 생각 합니다 deliveredto:.
lapo

예를 들어 ? 에서 포괄 전자 메일 주소를 사용하는 것과 같이 와일드 카드에서도 작동 deliveredto:*@mydomain.com했습니까? 나는 그것을 시도하고 있지만 테스트하는 데 시간이 걸릴 것입니다.
Marcos

1
Gmail 상단의 검색 창을 사용하여 고급 검색을 구성한 다음 검색 창의 끝에있는 화살표를 클릭하고 "이 검색으로 필터 만들기"를 선택하십시오.
Feckmore

2
이것으로 Delivered-To 이외의 헤더 문제는 해결되지 않습니까? (자동 제출 또는 우선 순위 헤더 검색)
Gert van den Berg

2
헤더 텍스트가 "Delivered-To :"인 반면 "has"필드는 "-"를 제거하여 "deliveredto :"를 생성한다는 것은 매우 모호합니다.
James Bowery

36

다음은 모든 고급 연산자 목록입니다.

from :
to :
제목 :
OR-
(하이픈)
레이블 :
has : 첨부 파일
목록 :
filename :
""(따옴표)
()
in : anywhere
in :받은 편지함
in : trash
in : spam
is : 중요
is : starred
is : unread
is : 읽기
: 옐로우 스타
has : 레드 스타
has : orange- 스타
has : green-star
has : 블루 스타
has : purple-star
has : 레드 뱅
has : 오렌지 -guillemet
has : 옐로우 뱅
has : green- 점검
사항 : 블루 정보 있음
: 보라색 질문
cc :
숨은 참조 :
이후 :
이전 :
이전 :
최신 :
older_than :
newer_than :
is : chat
전달 대상 :
서클 :
has : circle
범주 :
크기 :
더 크게 :
작게 :
+ (더하기 부호)
rfc822msgid :
has : userlabels
has : nouserlabels

[ 출처 ]


감사. 심지어 자신의 페이지는 NOT 연산자가있는 경우 어려운 결정 할 수 있도록 -: 와일드 카드 주소, 예를 들어 작업 것이다 -*@mydomain.comTo:필드
마르코스

31
  1. https://script.google.com으로 이동하여 새 Google Apps Script를 만듭니다.

새로운 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 : 1h ");"
Rick

var MyEmails = GmailApp.search("is:unread in:inbox");받은 편지함에서 아직 읽지 않은 모든 이메일을 검색하기 위해 사용 하고 있습니다
Ronen Ariely

@Rick-Igmail 인터페이스를 사용하여 Gmail 계정의 13GB 이상을 모두 걷는 스크립트를 작성했습니다. 'script.google.com에서 허용하면 놀라지 않을 것입니다.
broofa

1

@mvime과 같이 필터를 만들 때 필드 에서 deliveredto:연산자를 사용할 수 있습니다 Has the words. 그러나 모든 이메일 제공 업체 Delivered-to가 이메일 헤더에 추가 하는 것은 아니므로보다 신뢰할 수있는 방법은로 전달 you@oldemail.com하여 you+oldemail@gmail.com필터링하는 것 deliveredto:(you+oldemail@gmail.com)입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.