From 73ba204c061b64abe371d9545f0c1ad44fcdfde3 Mon Sep 17 00:00:00 2001 From: 103048 <103048@MJ0AJ7XO-LNPC> Date: Wed, 10 Jul 2024 14:14:38 -0500 Subject: [PATCH] Make the send email using SMTP as async --- .../Functions/HandleEmailRequestFn.cs | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/Plugins/BotSharp.Plugin.EmailHandler/Functions/HandleEmailRequestFn.cs b/src/Plugins/BotSharp.Plugin.EmailHandler/Functions/HandleEmailRequestFn.cs index 60edabf8..12c24e3a 100644 --- a/src/Plugins/BotSharp.Plugin.EmailHandler/Functions/HandleEmailRequestFn.cs +++ b/src/Plugins/BotSharp.Plugin.EmailHandler/Functions/HandleEmailRequestFn.cs @@ -52,14 +52,7 @@ namespace BotSharp.Plugin.EmailHandler.Functions { Text = body }; - - using (var smtpClient = new SmtpClient()) - { - smtpClient.Connect(_emailSettings.SMTPServer, _emailSettings.SMTPPort, SecureSocketOptions.StartTls); - smtpClient.Authenticate(_emailSettings.EmailAddress, _emailSettings.Password); - smtpClient.Send(mailMessage); - smtpClient.Disconnect(true); - } + await HandleSendEmailBySMTP(mailMessage); message.Content = $"Email successfully send over to {recipient}. Email Subject: {subject}"; return true; } @@ -71,5 +64,15 @@ namespace BotSharp.Plugin.EmailHandler.Functions return false; } } + public async Task HandleSendEmailBySMTP(MimeMessage mailMessage) + { + using (var smtpClient = new SmtpClient()) + { + await smtpClient.ConnectAsync(_emailSettings.SMTPServer, _emailSettings.SMTPPort, SecureSocketOptions.StartTls); + await smtpClient.AuthenticateAsync(_emailSettings.EmailAddress, _emailSettings.Password); + await smtpClient.SendAsync(mailMessage); + smtpClient.Disconnect(true); + } + } } }