using Furion.InstantMessaging;
|
using Microsoft.AspNetCore.SignalR;
|
|
namespace WCS.Application;
|
|
/// <summary>
|
/// 任务日志集线器
|
/// </summary>
|
[MapHub("/hubs/TaskLog")]
|
public class TaskLogHub : Hub<ITaskLogHub>
|
{
|
private readonly IHubContext<TaskLogHub, ITaskLogHub> _taskLogHubContext;
|
|
public TaskLogHub(IHubContext<TaskLogHub, ITaskLogHub> taskLogHubContext)
|
{
|
_taskLogHubContext = taskLogHubContext;
|
}
|
|
/// <summary>
|
/// 连接
|
/// </summary>
|
/// <returns></returns>
|
public override async Task OnConnectedAsync()
|
{
|
await base.OnConnectedAsync();
|
}
|
|
/// <summary>
|
/// 断开
|
/// </summary>
|
/// <param name="exception"></param>
|
/// <returns></returns>
|
public override async Task OnDisconnectedAsync(Exception exception)
|
{
|
await base.OnDisconnectedAsync(exception);
|
}
|
|
/// <summary>
|
/// 下发任务
|
/// </summary>
|
/// <returns></returns>
|
public async Task PublicTask(WcsTaskOutput context)
|
{
|
await _taskLogHubContext.Clients.All.PublicTask(context);
|
}
|
|
/// <summary>
|
/// 下发任务明细
|
/// </summary>
|
/// <returns></returns>
|
public async Task PublicTaskMonitor(WcsTaskMonitorOutput context)
|
{
|
await _taskLogHubContext.Clients.All.PublicTaskMonitor(context);
|
}
|
|
}
|