public async Task <QueueApiViewModel> GetQueueRestApi(long queueNumber) { retry: string token = await GetNewTokenRest(); ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(delegate { return(true); }); HttpClient client = new HttpClient(); string postadd = "https://" + IssabeLIP + "/pbxapi/queues/" + queueNumber.ToString(); var request = new HttpRequestMessage(HttpMethod.Get, postadd); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); var response = await client.SendAsync(request); string res = await response.Content.ReadAsStringAsync(); if (response.IsSuccessStatusCode) { if (res.Contains("password")) { res = res.Substring(31); res = res.Substring(0, (res.Length - 2)); //return res; QueueApi queue = QueueApi.FromJson(res); QueueApiViewModel queuemodel = new QueueApiViewModel(); queuemodel.Extension = Convert.ToInt32(queue.Extension); queuemodel.Name = queue.Name; queuemodel.Password = queue.Password; //queuemodel.StaticMembers.Add("2000");// = queue.StaticMembers; queuemodel.RingStrategy = queue.RingStrategy; queuemodel.SkipBusyAgents = queue.SkipBusyAgents; queuemodel.JoinAnnounceId = queue.JoinAnnounceId; queuemodel.MonitorFormat = queue.MonitorFormat; //queuemodel.MonitorJoin = "yes"; queuemodel.MonitorType = queue.MonitorType; queuemodel.MaxWait = queue.MaxWait; // queuemodel.SoundThankYou = "queue-thankyou"; //queuemodel.SoundCallsWaiting = "queue-callswaiting"; //queuemodel.SoundThereAre = "queue-thereare"; // queuemodel.SoundYouAreNext = "queue-youarenext"; queuemodel.TimeoutPriority = queue.TimeoutPriority; /////Max Wait Time Mode queuemodel.Timeout = queue.Timeout; /////////// Agent Timeout queuemodel.AgentRetry = queue.AgentRetry; queuemodel.ReportHoldTime = queue.ReportHoldTime; queuemodel.AutoPause = queue.AutoPause; queuemodel.AutoPauseDelay = Convert.ToInt32(queue.AutoPauseDelay); queuemodel.AutoPauseIfBusy = queue.AutoPauseIfBusy; queuemodel.AutoPauseIfUnavailable = queue.AutoPauseIfUnavailable; queuemodel.MaxCallersWaiting = queue.MaxCallersWaiting; queuemodel.JoinEmpty = queue.JoinEmpty; queuemodel.LeaveWhenEmpty = queue.LeaveWhenEmpty; queuemodel.AnnounceFrequency = queue.AnnounceFrequency; queuemodel.AnnounceHoldtime = queue.AnnounceHoldtime; queuemodel.AnnouncePosition = queue.AnnouncePosition; //queuemodel.EventMemberStatus = "yes"; //queuemodel.EventWhenCalled = "yes"; queuemodel.CronSchedule = queue.CronSchedule; return(queuemodel); } else { return(null); } } else if (response.StatusCode.ToString() == "500") { //GetNewToken(); goto retry; } else { return(null); } //ExtensionApiViewModel extensionViewModel = new ExtensionApiViewModel(); //extensionViewModel.Extension = extension.Extension.Value; //extensionViewModel.Name = extension.Name; //extensionViewModel.Secret = extension.Secret; //extensionViewModel.DeviceOptions_DtmfMode = extension.DeviceOptions.DtmfMode; //extensionViewModel.DeviceOptions_Encryption = extension.DeviceOptions.Encryption; //extensionViewModel.DeviceOptions_Nat = extension.DeviceOptions.Nat; //extensionViewModel.DeviceOptions_Port = extension.DeviceOptions.Port.Value; //extensionViewModel.DeviceOptions_Transport = extension.DeviceOptions.Transport; //extensionViewModel.Recording_InboundExternal = extension.Recording.InboundExternal; //extensionViewModel.Recording_InboundInternal = extension.Recording.InboundInternal; //extensionViewModel.Recording_OutboundExternal = extension.Recording.OutboundExternal; //extensionViewModel.Recording_OutboundInternal = extension.Recording.OutboundInternal; //extensionViewModel.Recording_Priority = extension.Recording.Priority.Value; //extensionViewModel.Voicemail_Voicemail = "selected"; //extensionViewModel.Voicemail_Password = 2222; //extensionViewModel.Voicemail_EmailAddress = "*****@*****.**"; //extensionViewModel.Voicemail_EmailAttachmen = "yes"; //extensionViewModel.Voicemail_PlayCID = "yes"; //extensionViewModel.Voicemail_PlayEnvelope = "yes"; //extensionViewModel.Voicemail_DeleteVoicemail = "yes"; //return extensionViewModel; }