Files
ClientApiPoC/ApiService/TunnelServer.cs
2026-03-13 10:23:47 +01:00

24 lines
1015 B
C#

using Microsoft.AspNetCore.SignalR;
using ClientApiPoC.Shared.SignalR;
using ClientApiPoC.Shared.Models;
namespace ClientApiPoC.ApiService {
public class TunnelServer : TunnelServerBase {
public TunnelServer(IHubContext<TunnelHub> hubContext, ClientTracker clientTracker) : base(hubContext, clientTracker) { }
public async Task<IEnumerable<ClientResultModel>> GetDataFromAllClientsAsync() {
var timestampServer = DateTime.UtcNow;
var results = new List<ClientResultModel>();
var clients = this.GetAllClients();
foreach (var client in clients) {
var clientData = await client.Value.InvokeAsync<ClientDataModel>("GetClientData", timestampServer, CancellationToken.None);
var result = new ClientResultModel() {
ClientId = client.Key,
ClientData = clientData
};
results.Add(result);
}
return results;
}
}
}