RobotNet/RobotNet.RobotManager/HubClients/OpenIddictHubClient.cs
2025-10-15 15:15:53 +07:00

24 lines
625 B
C#

using OpenIddict.Client;
using RobotNet.Clients;
namespace RobotNet.RobotManager.HubClients;
public class OpenIddictHubClient(string url, OpenIddictClientService openIddictClient, string[] scopes) : HubClient(new Uri(url),
async () =>
{
var result = await openIddictClient.AuthenticateWithClientCredentialsAsync(new()
{
Scopes = [.. scopes],
});
if (result == null || result.AccessToken == null || result.AccessTokenExpirationDate == null)
{
return null;
}
else
{
return result.AccessToken;
}
})
{
}