IOT 通知に C# を使用して Gmail からメールを受信するために Mimekit を使用していますが、これは機能しているようです。
私は次のことをしたいと思います:
- Gmail にログイン
- 件名または本文に特定のキーワードを含む受信メールを検索します。
- C# のテキスト ファイルと同じように本文を解析する
- 添付ファイル (test.txt) をダウンロードする
- 消去
この時点で、ログインに成功し、フォルダーのリストと文字列の一致を取得できます。
これが私のコードです:
using (var client = new ImapClient())
{
client.Connect("imap.gmail.com", 993, SecureSocketOptions.SslOnConnect);
// disable OAuth2 authentication unless you are actually using an access_token
client.AuthenticationMechanisms.Remove("XOAUTH2");
client.Authenticate("user@gmail.com", "password");
MessageBox.Show("we're connected");
// The Inbox folder is always available on all IMAP servers...
var inbox = client.Inbox;
inbox.Open(FolderAccess.ReadOnly);
//1. search for all messages containing the string test123
var query = SearchQuery.FromContains("test123");
foreach (var uid in inbox.Search(query))
{
var message = inbox.GetMessage(uid);
System.Diagnostics.Debug.WriteLine("[match] {0}: {1}", uid, message.Subject);
//2. Show all folders in Personal
var personal = client.GetFolder(client.PersonalNamespaces[0]);
foreach (var folder in personal.GetSubfolders(false))
System.Diagnostics.Debug.WriteLine("[folder] {0}", folder.Name);
}
client.Disconnect(true);
MessageBox.Show("disconnected ");
}
私の質問は次のとおりです。手順 3、4、および 5 を達成するにはどうすればよいですか?