Top / memo / android / CarrierIndependentRealtimeEmailNotification


目的

  • キャリアメール以外のメール着信を、リアルタイム通知する


背景

  • たかがメール通知の為に、キャリア契約したくない(金銭的な面)
  • ポーリングやIMAP IDLEをしたくない(張りっぱなしTCPの追加がイヤだ)
  • それでもメールが着たら、ラグ無しで通知してほしい



概要

  • Gmailの通知を使う
  • メール全体または着信をGmailに自動送信する
    • 方法1. メールを無加工転送する。お手軽
      • 問題: Googleに全文献上することになる。会社などでは使えない。
      • 問題: GmailアプリにはGoogleAnalyticsが入っていて、なんかコワい。
    • 方法2. メール着信のみを通知
      • 問題: «メールが来た»というメールをGmailに送信するための環境が必要

        例えばVPS.



準備

  • Googleアカウント
  • Gmailアプリが使えるスマホ
    • Androidのみ?
    • Gmailアプリを無効化している場合は、有効に戻す
  • 外部メールサーバー
    • 別アドレスにメール転送できるもの
    • ※ Gmailからのfetchは、通知ラグがメーラーによるポーリングと大差無いため、扱わない。

準備(方法2 のみ)

  • メール加工用サーバー



構成(方法1)

 送信メール --> メールサーバー --> Gmail --> メール着信通知

手順 :

  1. メールサーバーにて、Gmailへのメール転送設定をする
  2. 完了

構成(方法2)

 送信メール --> メールサーバー --> メール加工用サーバー --> Gmail --> メール着信通知

手順 :

  1. メールサーバーにて、メール加工用サーバーへの転送設定をする
  2. メール加工用サーバーのセットアップ(例)
    1. Postfix, procmail, phpをインストール
    • Postfix
      • virtual_map などでエイリアスを適宜設定し、転送されてきたメールが受信されるようにする
    • procmail
      • /etc/procmailrc または ~/.procmailrc で通知用スクリプトを起動するよう設定
    • php
      • SMTP認証を通して、Gmailに通知を送信
      • PHPMailerを利用するのが多分一番簡単
  3. SMTP認証をGmailが許可するよう設定
    1. Gmailの設定でIMAPとSMTP認証を有効化
    2. Googleアカウントセキュリティで、SMTP送信用のアプリパスワードを生成
    3. メール加工用サーバーのSMTP認証のパスワード欄に、生成したアプリパスワードを入力
  4. 完了

トップ 編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード 新規 一覧 単語検索 最終更新 ヘルプ 最終更新のRSS xenowire
Last-modified: 2018-01-25 (木) 15:10:51