hMailServer をインストールしており、電子メールをアプリケーションに統合したいと考えています。すべてのフォルダーを取得し (imap_mailboxmsginfo)、すべてのフォルダーからすべてのメッセージを取得し (imap_fetch_overview)、各電子メール (imap_body) からデータを取得するプロトタイプをセットアップしました。これらをローカルに保存できます。
ただし、ユーザーが 100 のフォルダーに 10,000 通の電子メールを持っていて、最後に hMailServer から電子メールをダウンロードしてから特定の電子メールを読んだかどうかを確認したい場合、すべてを取得する必要があります。フォルダからすべての電子メールを取得し、問題の電子メールが見つかるまで一意の message_id を検索します。
「msgno」はまったく一意ではなく、「uid」はフォルダーごとにのみ一意であり、ユーザーがあるフォルダーから別のフォルダーに電子メールを移動すると、「uid」が変更されるため、これを行う必要があります。また、hMailServer データベースの hm_messages テーブルにある "messageid" にアクセスする方法がありません。したがって、「message_id」が電子メールを一意に識別する唯一の方法のようですが、message_id を指定して hMailServer からメッセージを取得できる PHP/IMAP 関数は見つかりません。
(1) hMailServer から message_id を含む電子メールを取得する方法、または (2) 特定のメールが削除、フラグ付け、または別のフォルダに移動されたなどの通知を hMailServer から取得する方法はありますか? PHP 電子メール クライアントはこの問題をどのように解決しますか?