public void Execute() { var VONAGE_API_KEY = Environment.GetEnvironmentVariable("VONAGE_API_KEY") ?? "VONAGE_API_KEY"; var VONAGE_API_SECRET = Environment.GetEnvironmentVariable("VONAGE_API_SECRET") ?? "VONAGE_API_SECRET"; var COUNTRY_CODE = Environment.GetEnvironmentVariable("COUNTRY_CODE") ?? "COUNTRY_CODE"; var VONAGE_NUMBER_TYPE = Environment.GetEnvironmentVariable("VONAGE_NUMBER_TYPE") ?? "VONAGE_NUMBER_TYPE"; var VONAGE_NUMBER_FEATURES = Environment.GetEnvironmentVariable("VONAGE_NUMBER_FEATURES") ?? "VONAGE_NUMBER_FEATURES"; var NUMBER_SEARCH_CRITERIA = Environment.GetEnvironmentVariable("NUMBER_SEARCH_CRITERIA") ?? "NUMBER_SEARCH_CRITERIA"; var NUMBER_SEARCH_PATTERN = (SearchPattern)(Environment.GetEnvironmentVariable("NUMBER_SEARCH_PATTERN") != null ? int.Parse(Environment.GetEnvironmentVariable("NUMBER_SEARCH_PATTERN")) : 0); var credentials = Credentials.FromApiKeyAndSecret(VONAGE_API_KEY, VONAGE_API_SECRET); var client = new VonageClient(credentials); var request = new NumberSearchRequest() { Country = COUNTRY_CODE, Type = VONAGE_NUMBER_TYPE, Features = VONAGE_NUMBER_FEATURES, Pattern = NUMBER_SEARCH_CRITERIA, SearchPattern = NUMBER_SEARCH_PATTERN }; var response = client.NumbersClient.GetAvailableNumbers(request); Console.WriteLine($"Response received first number: {response.Numbers[0].Msisdn}"); }
public void TestSearchNumbers(bool passCreds, bool kitchenSink) { var expetedResponse = @"{ ""count"": 1234, ""numbers"": [ { ""country"": ""GB"", ""msisdn"": ""447700900000"", ""type"": ""mobile-lvn"", ""cost"": ""1.25"", ""features"": [ ""VOICE"", ""SMS"" ] } ] }"; var expectedUri = $"{RestUrl}/number/search"; NumberSearchRequest request; if (kitchenSink) { expectedUri += $"?country=GB&type=mobile-lvn&pattern=12345&search_pattern=1&features=SMS&size=10&index=1&api_key={ApiKey}&api_secret={ApiSecret}&"; request = new NumberSearchRequest { Country = "GB", Type = "mobile-lvn", Pattern = "12345", SearchPattern = SearchPattern.Contains, Features = "SMS", Size = 10, Index = 1 }; } else { expectedUri += $"?country=GB&api_key={ApiKey}&api_secret={ApiSecret}&"; request = new NumberSearchRequest { Country = "GB" }; } Setup(expectedUri, expetedResponse); var creds = Request.Credentials.FromApiKeyAndSecret(ApiKey, ApiSecret); var client = new NexmoClient(creds); NumbersSearchResponse response; if (passCreds) { response = client.NumbersClient.GetAvailableNumbers(request, creds); } else { response = client.NumbersClient.GetAvailableNumbers(request); } var number = response.Numbers[0]; Assert.Equal(1234, response.Count); Assert.Equal("GB", number.Country); Assert.Equal("447700900000", number.Msisdn); Assert.Equal("mobile-lvn", number.Type); Assert.Equal("1.25", number.Cost); Assert.Equal("VOICE", number.Features[0]); Assert.Equal("SMS", number.Features[1]); }
public void Execute() { var VONAGE_API_KEY = Environment.GetEnvironmentVariable("VONAGE_API_KEY") ?? "VONAGE_API_KEY"; var VONAGE_API_SECRET = Environment.GetEnvironmentVariable("VONAGE_API_SECRET") ?? "VONAGE_API_SECRET"; var NUMBER_SEARCH_CRITERIA = Environment.GetEnvironmentVariable("NUMBER_SEARCH_CRITERIA") ?? "NUMBER_SEARCH_CRITERIA"; var NUMBER_SEARCH_PATTERN = (SearchPattern)(Environment.GetEnvironmentVariable("NUMBER_SEARCH_PATTERN") != null ? int.Parse(Environment.GetEnvironmentVariable("NUMBER_SEARCH_PATTERN")) : 0); var credentials = Credentials.FromApiKeyAndSecret(VONAGE_API_KEY, VONAGE_API_SECRET); var client = new VonageClient(credentials); var request = new NumberSearchRequest() { SearchPattern = NUMBER_SEARCH_PATTERN, Pattern = NUMBER_SEARCH_CRITERIA }; var response = client.NumbersClient.GetOwnedNumbers(request); Console.WriteLine($"First Owned Number Matching Criteria : {response.Numbers[0].Msisdn}"); }