public async Task <UserAgentsResultV2> UserAgents(UserAgentSearchParamsV2 searchParams) { if (searchParams == null) { throw new HttpResponseException(HttpStatusCode.BadRequest); } var searchParamsDto = new UserAgentSearchParamsDto() { Caller = searchParams.Caller, Callee = searchParams.Callee, IncludeCodecsInCall = searchParams.IncludeCodecsInCall, Filters = searchParams.Filters }; UserAgentsResultDto uaResult = await _discoveryService.GetUserAgentsAsync(searchParamsDto); var result = new UserAgentsResultV2 { Profiles = uaResult.Profiles.Select(p => new ProfileDtoV2() { Name = p.Name, Sdp = p.Sdp }).ToList(), UserAgents = uaResult.UserAgents.Select(ua => new UserAgentDtoV2() { SipId = ua.SipId, ConnectedTo = ua.ConnectedTo, Profiles = ua.Profiles, MetaData = ua.MetaData.Select(m => new KeyValuePairDtoV2(m.Key, m.Value)).ToList() }).ToList() }; return(result); }
public async Task <UserAgentsResultV2> UserAgents(UserAgentSearchParamsV2 searchParams) { log.Trace("Discovery V2 API - requesting 'useragents'", searchParams); if (searchParams == null) { log.Debug("Requesting useragents from Discovery V2, but search params is null"); throw new HttpResponseException(HttpStatusCode.BadRequest); } var searchParamsDto = new UserAgentSearchParamsDto { Caller = searchParams.Caller, Callee = searchParams.Callee, IncludeCodecsInCall = searchParams.IncludeCodecsInCall, Filters = searchParams.Filters }; UserAgentsResultDto uaResult = await _discoveryService.GetUserAgentsAsync(searchParamsDto, Request); log.Debug("Returning {0} useragents and {1} profiles (V2).", uaResult.UserAgents?.Count ?? 0, uaResult.Profiles?.Count ?? 0); var result = new UserAgentsResultV2 { Profiles = uaResult?.Profiles?.Select(p => new ProfileDtoV2 { Name = p.Name, Sdp = p.Sdp }).ToList() ?? new List <ProfileDtoV2>(), UserAgents = uaResult?.UserAgents?.Select(ua => new UserAgentDtoV2 { SipId = ua.SipId, ConnectedTo = ua.ConnectedTo, Profiles = ua.Profiles, MetaData = ua.MetaData?.Select(m => new KeyValuePairDtoV2(m.Key, m.Value)).ToList() ?? new List <KeyValuePairDtoV2>() }).ToList() ?? new List <UserAgentDtoV2>() }; return(result); }