Skip to content

Commit ce74d44

Browse files
committed
Fixed paramters.
1 parent 6a3b2de commit ce74d44

4 files changed

Lines changed: 18 additions & 8 deletions

File tree

Shuttle.Pigeon.MailKit/MailKitMessageSender.cs

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ namespace Shuttle.Pigeon.MailKit;
88

99
public class MailKitMessageSender(IOptions<MailKitOptions> mailKitOptions) : IMessageSender
1010
{
11-
private readonly MailKitOptions _mailKitOptions = Guard.AgainstNull(Guard.AgainstNull(mailKitOptions).Value);
11+
private readonly MailKitOptions _mailKitOptions = Guard.AgainstNull(mailKitOptions).Value;
1212

1313
public string Channel => "email";
1414
public string Name => "mailKit";
@@ -27,17 +27,17 @@ public async Task SendAsync(Message message, CancellationToken cancellationToken
2727
{
2828
case RecipientType.To:
2929
{
30-
mimeMessage.To.Add(new MailboxAddress(recipient.HasDisplayName ? recipient.DisplayName : recipient.Identifier, recipient.Identifier));
30+
mimeMessage.To.Add(new MailboxAddress(recipient.DisplayName, recipient.Identifier));
3131
break;
3232
}
3333
case RecipientType.Cc:
3434
{
35-
mimeMessage.Cc.Add(new MailboxAddress(recipient.HasDisplayName ? recipient.DisplayName : recipient.Identifier, recipient.Identifier));
35+
mimeMessage.Cc.Add(new MailboxAddress(recipient.DisplayName, recipient.Identifier));
3636
break;
3737
}
3838
case RecipientType.Bcc:
3939
{
40-
mimeMessage.Bcc.Add(new MailboxAddress(recipient.HasDisplayName ? recipient.DisplayName : recipient.Identifier, recipient.Identifier));
40+
mimeMessage.Bcc.Add(new MailboxAddress(recipient.DisplayName, recipient.Identifier));
4141
break;
4242
}
4343
}
@@ -57,15 +57,14 @@ public async Task SendAsync(Message message, CancellationToken cancellationToken
5757

5858
foreach (var attachment in message.GetAttachments())
5959
{
60-
using var stream = new MemoryStream(attachment.Content);
61-
await bodyBuilder.Attachments.AddAsync(attachment.Name, stream, ContentType.Parse(attachment.ContentType), CancellationToken.None);
60+
await bodyBuilder.Attachments.AddAsync(attachment.Name, new MemoryStream(attachment.Content), ContentType.Parse(attachment.ContentType), CancellationToken.None);
6261
}
6362

6463
mimeMessage.Body = bodyBuilder.ToMessageBody();
6564

6665
using var client = new SmtpClient();
6766

68-
await client.ConnectAsync(message.FindParameter("Host")?.GetValue<string>() ?? _mailKitOptions.Host, message.FindParameter("Port")?.GetValue<int>() ?? _mailKitOptions.Port, SecureSocketOptions.StartTls, cancellationToken);
67+
await client.ConnectAsync(message.FindParameter("Host")?.GetValue<string>() ?? _mailKitOptions.Host, message.FindParameter("Port")?.GetValue<int>() ?? _mailKitOptions.Port, SecureSocketOptions.Auto, cancellationToken);
6968
await client.AuthenticateAsync(message.FindParameter("Username")?.GetValue<string>() ?? _mailKitOptions.Username, message.FindParameter("Password")?.GetValue<string>() ?? _mailKitOptions.Password, cancellationToken);
7069
await client.SendAsync(mimeMessage, cancellationToken);
7170
await client.DisconnectAsync(true, cancellationToken);

Shuttle.Pigeon.Server/Program.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
using Microsoft.Extensions.Configuration;
1+
using Microsoft.Extensions.Configuration;
22
using Microsoft.Extensions.DependencyInjection;
33
using Microsoft.Extensions.Hosting;
44
using Microsoft.Extensions.Logging;

Shuttle.Pigeon.Server/SendMessageHandler.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ public class SendMessageHandler(IMessageService messageService) : IMessageHandle
1212
{
1313
var pigeonMessage = new Message(message.Id, message.Channel, message.Content, message.ContentType)
1414
.AddRecipients(message.Recipients.Select(item => new Message.Recipient(item.Identifier, (RecipientType)item.Type)))
15+
.AddParameters(message.Parameters.Select(item => new Message.Parameter(item.Name, item.Value)))
1516
.WithSubject(message.Subject);
1617

1718
if (!string.IsNullOrWhiteSpace(message.Sender))

Shuttle.Pigeon/Message.cs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,16 @@ public Message AddParameter(Parameter parameter)
4545
return this;
4646
}
4747

48+
public Message AddParameters(IEnumerable<Parameter> parameters)
49+
{
50+
foreach (var parameter in parameters)
51+
{
52+
AddParameter(parameter);
53+
}
54+
55+
return this;
56+
}
57+
4858
public Message AddRecipient(Recipient recipient)
4959
{
5060
Guard.AgainstNull(recipient);

0 commit comments

Comments
 (0)