2010-05-15 5 views
2

나는 주간 사용자 활동 요약을 사용자 지정 텍스트로 보내고 기본 관리자를 통해 구성 및 전송할 수있는 여러 부분으로 된 마케팅 메시지를 만들 수있는 내 레일 응용 프로그램을위한 매우 기본적인 CRM 시스템을 구축했습니다 인터페이스. 나는 물건의 보내기면 (내가 그 능력을 시험하기 위해 노력하지 않았다는 사실을 제외하고)에 함께 뒀던 것에 만족한다. 그러나 나는 바운스 백을 다루는 방법에 대해 염려한다. 레일에서 전자 메일 반송 처리

내가 관련 스크립트와이 플러그인 건너 온 : http://github.com/kovyrin/bounces-handler

내 메일을 처리하기 위해 Google Apps를 사용하고 있는데 펄 위의 플러그인을 엉망으로 원하는에 대해 정말 충분히 모른다 - 나는 충분히 두통이 .

레일스에서 ​​바운스 백 처리를위한 간단한 솔루션을 찾고 있습니다. 내 모든 이메일은 Google Apps에서 관리되는 이와 같은 주소 ("[email protected]")에서 나옵니다.

가장 적합한 워크 플로우는 무엇입니까? 누구든지 메일 용 Google Apps를 사용하고 있다는 사실을 염두에두고 사용하고있는 예제 솔루션을 게시 할 수 있습니까?

이 문제를 해결하기위한 지침, 링크 또는 기본 워크 플로 모범 사례에 크게 감사드립니다.

감사합니다. -A

+1

btw-500 비회원 Google 메일 – s84

+0

으로 감사합니다. 샘, 문제가되지 않을 것입니다. – aressidi

답변

2

좋아, 이것은 Github에서 찾을 수있는 Fetcher 플러그인을 사용하는 것이 더 쉬운 것으로 입증되었습니다. 작업 표시되는 방식에 관심이 사람들을 위해, 여기에 내가 무슨 짓을했는지의 :

1) 그래서 같은 가져 오기 플러그인을 설치 : 스크립트/플러그인 자식을 설치 :

를 //github.com/look/fetcher.git

2) 지시 사항은 생성기를 실행하여 다음과 같은 데몬을 만드는 것이 좋습니다. script/generate fetcher_daemon MailerDaemon. 내가 config/당신이 귀하의 메일 서버 정보 (내 경우에는 Gmail에서)로 수정할 수있는 YML 파일을 생성하기 때문에이 일을하는 것이 좋습니다.

또한 Fetcher를 실행하는 데몬을 생성합니다. 나는 이것을 사용했지만 일관되게 다음과 같은 오류가 발생했습니다 : mysql :: 오류 : MySQL 서버가 사라졌습니다 : SHOW FIELDS FROM email_blacklists. 이것은 MySQL이 레코드를 저장할 수 있기 전에 데몬 프로세스가 사라져서 데몬을 사용하지 않고 대신 cron을 설정했습니다.

3) 메일 설정으로 mail.yml로 이름을 바꾼 config에서 .yml 파일을 구성하십시오. Gmail은 팝, 그들은이 싶 보일 :

모델/mail_processor.rb

class MailProcessor < ActionMailer::Base 
    def receive(email) 
    email = EmailBlacklist.find_or_create_by_email(email.to.first) 

    end 
    def self.grab_bounces 
    config = YAML.load_file("#{RAILS_ROOT}/config/mail.yml") 
    config = config[RAILS_ENV].to_options 
    fetcher = Fetcher.create({:receiver => MailProcessor}.merge(config)) 
    fetcher.fetch 
    end 
end 

lib 디렉토리/작업/mail.rake : 여기

development: 
    type: pop 
    server: pop.gmail.com 
    port: 995 
    ssl: true 
    username: [email protected] 
    password: mypassword 

당신이 처리하는 데 필요한 코드입니다

그러면 스크립트/디렉토리에 자동 생성 된 mailer_daemon_fetcher.rb 파일을 던질 수 있습니다.

다른 사람에게 도움이되기를 바랍니다. 테스트를 원할 경우 콘솔에서 MailProcessor.grab_bounces를 호출하면됩니다. 받은 편지함에 액세스하도록 구성된 이메일이 있는지 확인하십시오.