public void ListWithDefaultClientTest() { using (var server = new HttpServer(new RequestHandler { EstimatedMethod = "GET", EstimatedPathAndQuery = string.Format("/v1.0/accounts/{0}/availableNumbers?areaCode=866&quantity=5", Helper.AccountId), ContentToSend = Helper.CreateXmlContent(new AvailableNumbersResult { ResultCount = 3, TelephoneNumberList = new[] { "1111", "2222", "3333" } }) })) { var result = AvailableNumbers.List(new Dictionary <string, object> { { "areaCode", 866 }, { "quantity", 5 } }).Result; if (server.Error != null) { throw server.Error; } Assert.AreEqual(3, result.ResultCount); CollectionAssert.AreEqual(new[] { "1111", "2222", "3333" }, result.TelephoneNumberList); } }
public BlackWhitePhone() { AvailableNumbers.AddRange(new List <string> { "Reset" }); }
public void ListWithXmlTest() { using (var server = new HttpServer(new RequestHandler { EstimatedMethod = "GET", EstimatedPathAndQuery = string.Format("/v1.0/accounts/{0}/availableNumbers?areaCode=866&quantity=5", Helper.AccountId), ContentToSend = new StringContent(TestXmlStrings.LocalAreaSearchResultXml, Encoding.UTF8, "application/xml") })) { var client = Helper.CreateClient(); var result = AvailableNumbers.List(client, new Dictionary <string, object> { { "areaCode", 866 }, { "quantity", 5 } }).Result; if (server.Error != null) { throw server.Error; } Assert.AreEqual(2, result.ResultCount); var d = result.TelephoneNumberDetailList[0]; Assert.AreEqual("JERSEY CITY", d.City); Assert.AreEqual("224", d.Lata); Assert.AreEqual("JERSEYCITY", d.RateCenter); Assert.AreEqual("NJ", d.State); Assert.AreEqual("2012001555", d.TelephoneNumber); d = result.TelephoneNumberDetailList[1]; Assert.AreEqual("JERSEY CITY", d.City); Assert.AreEqual("224", d.Lata); Assert.AreEqual("JERSEYCITY", d.RateCenter); Assert.AreEqual("NJ", d.State); Assert.AreEqual("123123123", d.TelephoneNumber); } }
static async Task <AvailableNumbersResult> searchTollFree(Client client, string pattern) { var query = new Dictionary <string, object>(); query.Add("tollFreeWildCardPattern", pattern); query.Add("quantity", 10); AvailableNumbersResult numbers = await AvailableNumbers.List(client, query); return(numbers); }
static async Task <AvailableNumbersResult> searchZipCode(Client client, string zipCode) { var query = new Dictionary <string, object>(); query.Add("zip", zipCode); query.Add("quantity", 10); AvailableNumbersResult numbers = await AvailableNumbers.List(client, query); return(numbers); }
public ButtonPhone() { AvailableNumbers.AddRange(new List <string> { "Enter", "Cancel", "*", "#" }); }
static async Task AvailableNumbersDemo() { var query = new Dictionary <string, object>(); query.Add("areaCode", "805"); query.Add("quantity", 3); var result = await AvailableNumbers.List(_client, query); foreach (string number in result.TelephoneNumberList) { Console.WriteLine(string.Format("Number: {0}", number)); } }
public IEnumerable <AvailableNumbers> GetAvailableNumbers() { string SQL = @"select employee.new_nationalityId,employee.new_nationalityIdName as new_nationalityName ,employee.new_professionId,employee.new_professionIdName as new_professionName, count(distinct employee.new_EmployeeId) as availablecount from new_employee employee inner join new_indvprice on new_nationality = employee.new_nationalityId and new_profession = employee.new_professionId where employee.statecode = 0 and employee.new_employeetype = 3 and employee.statuscode in(279640012,1,279640001,279640000) and employee.new_indivcontract is null and new_indvprice.statecode = 0 and new_indvprice.new_forweb = 1 group by employee.new_nationalityId,employee.new_nationalityIdName,employee.new_professionId,employee.new_professionIdName" ; DataTable dt = CRMAccessDB.SelectQ(SQL).Tables[0]; List <AvailableNumbers> List = new List <AvailableNumbers>(); for (int i = 0; i < dt.Rows.Count; i++) { if (!List.Any(a => a.Nationality == dt.Rows[i]["new_nationalityName"].ToString())) { AvailableNumbers n = new AvailableNumbers(); n.ProfessionCounts = new List <ProfessionCount>(); n.Nationality = dt.Rows[i]["new_nationalityName"].ToString(); n.NationalityId = dt.Rows[i]["new_nationalityId"].ToString(); n.ProfessionCounts.Add(new ProfessionCount() { Profession = dt.Rows[i]["new_professionName"].ToString(), ProfessionId = dt.Rows[i]["new_professionId"].ToString(), Count = dt.Rows[i]["availablecount"].ToString(), }); List.Add(n); } else { List.FirstOrDefault(a => a.Nationality == dt.Rows[i]["new_nationalityName"].ToString()).ProfessionCounts.Add(new ProfessionCount() { Profession = dt.Rows[i]["new_professionName"].ToString(), ProfessionId = dt.Rows[i]["new_professionId"].ToString(), Count = dt.Rows[i]["availablecount"].ToString(), }); } } return(List); }
static void Main(string[] args) { Console.WriteLine("Starting the Phone Number Ordering App"); useHttp(true); //not https port("8080"); startServerInstance(); post("/subscriptions/orders", (EagleRequest request, HttpListenerResponse response) => { XmlSerializer serializer = new XmlSerializer(typeof(Notification)); Notification notification = (Notification)serializer.Deserialize(new MemoryStream(Encoding.UTF8.GetBytes(request.Body))); Console.WriteLine(notification.Status); Console.WriteLine(notification.Message); }); post("/subscriptions/disconnects", (EagleRequest request, HttpListenerResponse response) => { XmlSerializer serializer = new XmlSerializer(typeof(Notification)); Notification notification = (Notification)serializer.Deserialize(new MemoryStream(Encoding.UTF8.GetBytes(request.Body))); Console.WriteLine(notification.Status); Console.WriteLine(notification.Message); var phoneNumber = notification.CompletedTelephoneNumbers[0]; storage.Remove(phoneNumber); }); get("/availablePhoneNumbers", (EagleRequest request, HttpListenerResponse response) => { var queryParams = request.RawRequest.QueryString; var query = new Dictionary <string, object>() { { "quantity", 10 }, }; if (queryParams.Get("zipCode") != null) { query.Add("zip", queryParams.Get("zipCode")); } if (queryParams.Get("areaCode") != null) { query.Add("areaCode", queryParams.Get("areaCode")); } try { var res = AvailableNumbers.List(client, query).Result; return(res.TelephoneNumberList); } catch (AggregateException ex) { if (ex.InnerException is BandwidthIrisException) { response.StatusCode = 400; BandwidthIrisException irisEx = (BandwidthIrisException)ex.InnerException; return(new Error { BandwidthErrorCode = irisEx.Code, BandwidthErrorDescription = irisEx.Body.ToString(), Description = "Bandwidth Invalid User Input", Type = "validation" }); } throw ex; } }); post("/phoneNumbers", (EagleRequest request, HttpListenerResponse response) => { string phoneNumber = request.Body.phoneNumber; if (storage.ContainsKey(phoneNumber)) { return(new Error { Type = "owned number", Description = "You have already ordered this number." }); } OrderResult orderResult; try { orderResult = Order.Create(client, new Order { CustomerOrderId = "customerOrderId", SiteId = SITE_ID, //The site to order the number for ExistingTelephoneNumberOrderType = new ExistingTelephoneNumberOrderType { TelephoneNumberList = new string[] { phoneNumber } } }).Result; } catch (AggregateException ex) { if (ex.InnerException is BandwidthIrisException) { response.StatusCode = 400; BandwidthIrisException irisEx = (BandwidthIrisException)ex.InnerException; return(new Error { BandwidthErrorCode = irisEx.Code, BandwidthErrorDescription = irisEx.Body.ToString(), Description = "Bandwidth Invalid User Input", Type = "validation" }); } throw ex; } var orderIdentifier = new OrderIdentifier { OrderId = orderResult.Order.OrderId, PhoneNumber = phoneNumber }; storage.Add(phoneNumber, orderIdentifier); response.StatusCode = 201; return(orderIdentifier); }); get("/phoneNumbers", (EagleRequest request, HttpListenerResponse response) => { return(storage.Values); }); delete("/phoneNumbers/{phoneNumber}", (EagleRequest request, HttpListenerResponse response) => { string phoneNumber = request.PathInfo.PathParameters.phoneNumber; if (!storage.ContainsKey(phoneNumber)) { response.StatusCode = 404; return(new Error { Description = "This number has not ordered yet, cannot remove.", Type = "not found" }); } try { Disconnect.Create(client, "orderName", phoneNumber); } catch (AggregateException ex) { if (ex.InnerException is BandwidthIrisException) { response.StatusCode = 400; BandwidthIrisException irisEx = (BandwidthIrisException)ex.InnerException; return(new Error { BandwidthErrorCode = irisEx.Code, BandwidthErrorDescription = irisEx.Body.ToString(), Description = "Bandwidth Invalid User Input", Type = "validation" }); } throw ex; } response.StatusCode = 201; return(new Dictionary <string, bool>() { { "Recieved", true } }); }); post("/stop", (EagleRequest request, HttpListenerResponse response) => { stop(); return("Server Shutting Down"); }); Console.WriteLine("Server is Ready!!!!!!!!!"); WaitOnServerToStop(); }