示例#1
0
        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}");
        }
示例#2
0
        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]);
        }
示例#3
0
        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}");
        }