using AsbCloudApp.Data; using AsbCloudApp.Services; using AsbCloudWebApi.WebSocket; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.SignalR; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; namespace AsbCloudWebApi.Controllers { /// /// Контроллер сбора данных от буровых /// [Route("api/telemetry")] [ApiController] public class TelemetryController : ControllerBase { private readonly ITelemetryService telemetryService; private readonly IHubContext telemetryHubContext; public TelemetryController(ITelemetryService telemetryService, IHubContext telemetryHubContext) { this.telemetryService = telemetryService; this.telemetryHubContext = telemetryHubContext; } /// /// Принимает общую информацию по скважине /// /// Уникальный идентификатор отправителя /// нформация об отправителе /// [HttpPost] [Route("{uid}/info")] public IActionResult Info(string uid, [FromBody] TelemetryInfoDto info) { telemetryService.UpdateInfo(uid, info); return Ok(); } /// /// Принимает данные от разных систем по скважине /// /// Уникальный идентификатор отправителя /// Данные /// [HttpPost] [Route("{uid}/data")] public IActionResult Data(string uid, [FromBody] TelemetryDataDto data) { telemetryService.UpdateData(uid, data); //telemetryHubContext.Clients.Group(""). return Ok(); } } }