protected override void OnReceived(byte[] buffer, long offset, long size) { var message = Encoding.UTF8.GetString(buffer, (int)offset, (int)size); try { #if DEBUG log.Debug("Incoming: " + message); #endif var strings = message.Split(new[] { (char)0x1A }); foreach (var str in strings) { if (string.IsNullOrEmpty(str)) { continue; } var signal = SignalInfo.Create(str); handler.PostSignal(signal, mServer); } } catch (Exception e) { log.Error($"OnReceived: {message} e={e}"); } }
public ActionResult SendSignal() { Task <string> response = null; try { using (var reader = new StreamReader(Request.Body)) { response = reader.ReadToEndAsync(); if (string.IsNullOrEmpty(response.Result)) { return(Problem("Empty data passed as a parameter", "Error", StatusCodes.Status500InternalServerError)); } var signal = SignalInfo.Create(response.Result); var result = MainService.SendSignal(signal); return(Ok(result)); } } catch (Exception e) { if (response != null && !string.IsNullOrEmpty(response.Result)) { log.Error($"Result error:{response.Result} {e}"); } else { log.Error(e.ToString()); } return(Problem(e.ToString(), "Error", StatusCodes.Status500InternalServerError)); } }
public ActionResult PostSignal() { Task <string> response = null; SignalInfo signal = null; try { using (var reader = new StreamReader(Request.Body)) { response = reader.ReadToEndAsync(); if (string.IsNullOrEmpty(response.Result)) { return(Problem("NULL Signal passed as a parameter", "Error", StatusCodes.Status500InternalServerError)); } signal = SignalInfo.Create(response.Result); if (signal == null) { return(Problem("Broken Signal passed as a parameter", "Error", StatusCodes.Status500InternalServerError)); } MainService.PostSignalTo(signal); } return(Ok()); } catch (Exception e) { if (response != null && !string.IsNullOrEmpty(response.Result)) { log.Error($"Result error:{response.Result} {e}"); if (signal != null) { log.Error($"Signal.Data={signal.Data}"); } } else { log.Error(e.ToString()); } return(Problem(e.ToString(), "Error", StatusCodes.Status500InternalServerError)); } }