/// <summary> /// 通过终端手机号查询对应会话 /// </summary> /// <param name="json"></param> /// <returns></returns> public byte[] QueryTcpSessionByTerminalPhoneNo(string json) { if (string.IsNullOrEmpty(json)) { return(EmptyHttpResponse()); } JT808ResultDto <JT808TcpSessionInfoDto> resultDto = new JT808ResultDto <JT808TcpSessionInfoDto>(); try { JT808TerminalPhoneNoDto parameter = JsonSerializer.Deserialize <JT808TerminalPhoneNoDto>(json); resultDto.Data = SessionManager.GetTcpAll(w => w.TerminalPhoneNo == parameter.TerminalPhoneNo).Select(s => new JT808TcpSessionInfoDto { LastActiveTime = s.ActiveTime, StartTime = s.StartTime, TerminalPhoneNo = s.TerminalPhoneNo, RemoteAddressIP = s.RemoteEndPoint.ToString(), }).FirstOrDefault(); resultDto.Code = JT808ResultCode.Ok; } catch (Exception ex) { resultDto.Data = null; resultDto.Code = JT808ResultCode.Error; resultDto.Message = ex.StackTrace; } return(CreateHttpResponse(resultDto)); }
/// <summary> /// 会话服务-通过设备终端号移除对应会话 /// </summary> /// <param name="json"></param> /// <returns></returns> public byte[] RemoveUdpByTerminalPhoneNo(string json) { if (string.IsNullOrEmpty(json)) { return(EmptyHttpResponse()); } JT808ResultDto <bool> resultDto = new JT808ResultDto <bool>(); try { JT808TerminalPhoneNoDto parameter = JsonSerializer.Deserialize <JT808TerminalPhoneNoDto>(json); SessionManager.RemoveByTerminalPhoneNo(parameter.TerminalPhoneNo); resultDto.Code = JT808ResultCode.Ok; resultDto.Data = true; } catch (AggregateException ex) { resultDto.Data = false; resultDto.Code = 500; resultDto.Message = ex.StackTrace; } catch (Exception ex) { resultDto.Data = false; resultDto.Code = JT808ResultCode.Error; resultDto.Message = ex.StackTrace; } return(CreateHttpResponse(resultDto)); }
/// <summary> /// 会话服务-通过设备终端号移除对应会话 /// </summary> /// <param name="parameter"></param> /// <returns></returns> public async ValueTask <JT808ResultDto <bool> > RemoveTcpByTerminalPhoneNo(JT808TerminalPhoneNoDto parameter) { var response = await HttpClient.PostAsJsonAsync(JT808GatewayConstants.JT808WebApiRouteTable.SessionRemoveByTerminalPhoneNo, parameter); response.EnsureSuccessStatusCode(); var value = await response.Content.ReadFromJsonAsync <JT808ResultDto <bool> >(); return(value); }
/// <summary> /// 会话服务-通过设备终端号移除对应会话 /// </summary> /// <param name="parameter"></param> /// <returns></returns> public async ValueTask <JT808ResultDto <bool> > RemoveTcpByTerminalPhoneNo(JT808TerminalPhoneNoDto parameter) { var request = new HttpRequestMessage(HttpMethod.Post, JT808GatewayConstants.JT808WebApiRouteTable.SessionRemoveByTerminalPhoneNo); request.Content = new StringContent(JsonSerializer.Serialize(parameter)); var response = await HttpClient.SendAsync(request); response.EnsureSuccessStatusCode(); var data = await response.Content.ReadAsStreamAsync(); var value = await JsonSerializer.DeserializeAsync <JT808ResultDto <bool> >(data); return(value); }
public ActionResult <JT808ResultDto <bool> > BlacklistRemove([FromBody] JT808TerminalPhoneNoDto parameter) { JT808ResultDto <bool> resultDto = new JT808ResultDto <bool>(); try { BlacklistManager.Remove(parameter.TerminalPhoneNo); resultDto.Code = JT808ResultCode.Ok; resultDto.Data = true; } catch (Exception ex) { resultDto.Data = false; resultDto.Code = JT808ResultCode.Error; resultDto.Message = ex.StackTrace; } return(resultDto); }
public ActionResult <JT808ResultDto <JT808UdpSessionInfoDto> > QueryUdpSessionByTerminalPhoneNo([FromBody] JT808TerminalPhoneNoDto parameter) { JT808ResultDto <JT808UdpSessionInfoDto> resultDto = new JT808ResultDto <JT808UdpSessionInfoDto>(); try { resultDto.Data = SessionManager.GetUdpAll(w => w.TerminalPhoneNo == parameter.TerminalPhoneNo).Select(s => new JT808UdpSessionInfoDto { LastActiveTime = s.ActiveTime, StartTime = s.StartTime, TerminalPhoneNo = s.TerminalPhoneNo, RemoteAddressIP = s.RemoteEndPoint.ToString(), }).FirstOrDefault(); resultDto.Code = JT808ResultCode.Ok; } catch (Exception ex) { resultDto.Data = null; resultDto.Code = JT808ResultCode.Error; resultDto.Message = ex.StackTrace; } return(resultDto); }