ローカルリポジトリ、IMAP、および新しいEメールの即時プッシュでmuttを使用する方法は?

ローカルリポジトリ、IMAP、および新しいEメールの即時プッシュでmuttを使用する方法は?

代わりに電子メールを使用することを検討していますmutt。しかし、いくつかの要件があります。

  1. メールをオフラインで保存したいです。
  2. 電子メールを定期的にポーリングする代わりに(IMAP IDLEを使用するなど)、ローカルコンピュータにすぐにプッシュしたいと思います。

imapofflineオフライン保存の場合またはを使用できますisync。私が理解したのは、後者がより安定しています。しかし、リクエスト時に電子メールをプッシュするために私がisyncで見つけた唯一のオプションは次のとおりです。マイクロソフトウォッチ。残念ながら、これを行うにはリモート電子メールサーバーにプログラムをインストールする必要がありますが、これは不可能です。muttオフラインEメールを保存し、すぐにEメール配信を使用できるソリューションはありますか?

ベストアンサー1

残念ながら、反対側で提案された2つの可能性は、回答不完全だ。offlineimap最高の時期にはかなり問題があります。たとえば、新しいメールが届いた後にスクリプトを自動的に実行する方法はありません。fetchmail双方向同期はありません。

代わりに、私が使用した解決策は次の組み合わせでした。通知するそして同期imapnotify新しいEメールがトリガーされると(IDLEを介して)スクリプトを実行するように設定しました。

スクリプトはmbsync "${channel}:INBOX"メールがあるアカウントに従って実行されます。次に実行されますnotmuch new。最後に、以下のように未読メールの数をファイルに記録します。このファイルの内容は、デスクトップ環境のパネルに表示されます。

mail_count_file="/home/foo/.cache/new_mail_count"
new_count=$(find ~/.mail/*/Inbox/new -type f | wc -l)
if [[ $new_count > 0 ]]; then
  echo $new_count > "$mail_count_file"
else
  if [[ -f "$mail_count_file" ]]; then
    rm "$mail_count_file"
  fi
fi

修正する

imapnotify(nodejs-imapnotify)は、警告/エラーなしで頻繁に切断され、新しいメッセージを見逃すことがよくあります。Python-imapnotifyまた、断続的に動作します。しかし、ゴイマップ通知私の経験では素晴らしい作品です。オフラインになることはほとんどありません。オフラインになると(ネットワークの切断や停止などのため)、混乱なく素早く再起動します。

おすすめ記事