2025-05-04 19:25:08 -05:00
|
|
|
using System.Net;
|
|
|
|
|
using LANCommander.SDK.Interceptors;
|
|
|
|
|
using LANCommander.SDK.Models;
|
|
|
|
|
|
2025-11-16 12:31:25 -06:00
|
|
|
namespace LANCommander.Server.Services.Interceptors;
|
2025-05-04 19:25:08 -05:00
|
|
|
|
2025-11-16 12:31:25 -06:00
|
|
|
public class BeaconMessageInterceptor(SettingsProvider<Settings.Settings> settingsProvider) : IBeaconMessageInterceptor
|
2025-05-04 19:25:08 -05:00
|
|
|
{
|
|
|
|
|
public async Task<BeaconMessage> ExecuteAsync(BeaconMessage message, IPEndPoint interfaceEndPoint)
|
|
|
|
|
{
|
|
|
|
|
if (String.IsNullOrWhiteSpace(message.Address))
|
|
|
|
|
{
|
2025-11-16 12:31:25 -06:00
|
|
|
if (settingsProvider.CurrentValue.Server.Http.UseSSL)
|
|
|
|
|
message.Address = $"https://{interfaceEndPoint.Address.ToString()}:{settingsProvider.CurrentValue.Server.Http.SSLPort}";
|
2025-05-04 19:25:08 -05:00
|
|
|
else
|
2025-11-16 12:31:25 -06:00
|
|
|
message.Address = $"http://{interfaceEndPoint.Address.ToString()}:{settingsProvider.CurrentValue.Server.Http.Port}";
|
2025-05-04 19:25:08 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return message;
|
|
|
|
|
}
|
|
|
|
|
}
|