tl; dr:Mail-listener2がタイムアウトしているように見え、スクリプトを再起動せずに電子メールを継続的に聞きたい。Mail-listener2 - 接続の終了
私のnode.jsプロジェクトでmailer-listerner2パッケージ(https://github.com/chirag04/mail-listener2/)を使用しています。特定の受信トレイに到着した電子メールを継続的に聞き取り、さらに処理するためにこれらの電子メールを解析したいと思います。
私は接続が確立されていて、すべて動作していますが、imap接続がタイムアウトしているか、到着する新しい電子メールに少なくとも反応しなくなっているのが見えています。
mail-listener2パッケージはimap npmパッケージを使用しているため、コードを見て、IDLEタイマーを減らして1回ではなく10秒ごとにimap(gmail)サーバーに要求を送信しようとしました30分ごとに
私は以下を参照してください。ログをチェックするために、今朝起きたときに、この実際に改善された状況は、しかし:
<= 'IDLE OK IDLE terminated (Success)'
=> 'IDLE IDLE'
<= '+ idling'
=> DONE
<= 'IDLE OK IDLE terminated (Success)'
=> 'IDLE IDLE'
<= '+ idling'
[connection] Ended
[connection] Closed
接続が&コアIMAPモジュールから来るように見える閉じ終わりました。私は、IDLEチェックを送信すると切断が起こらないことを保証すると思ったが、あなたが見ることができるように、これは当てはまりません。
私もNoopを調べてみましたが、メールが2回読み取られると他の問題が発生するようです。
私のタイマーが低すぎるとわかっています。数秒おきにサーバーの応答をブロックするコールが原因で、メールが継続的に解析される可能性があります。そのため、上記のNoopの問題が発生している可能性があります。
他の人がこの問題にぶつかって克服しているかどうかを知りたければ、これを試してみたいと思いませんか?
接続が閉じている場合、なぜ再接続しようとしませんか?接続が閉じた多くの理由があります。 – Gntem
Yup - これを試しても動作していないようです: mailListener.on( 'server:disconnected'、()=> {console.log( 'imapDisconnected'); mailListener.stop(); mailListener.start() );}); – munkee
他の誰かが同じ問題を抱えているように見えて、私のために再起動しますhttps://github.com/waqassiddiqi/mail-listener2/commit/317cbdde695f10b6ae0982970f619ca37429ace6 – munkee