Пример #1
0
        public async Task SetSipTrunkForResource()
        {
            var modifiedTrunk = new SipTrunk(TestData.TrunkList[0].Fqdn, 9999);
            var client        = InitializeTest();

            await client.SetTrunkAsync(modifiedTrunk).ConfigureAwait(false);

            var actualTrunk = await client.GetTrunkAsync(TestData.TrunkList[0].Fqdn).ConfigureAwait(false);

            Assert.AreEqual(modifiedTrunk.SipSignalingPort, actualTrunk.Value.SipSignalingPort);
        }
Пример #2
0
 protected bool TrunkAreEqual(SipTrunk expected, SipTrunk actual)
 {
     return(expected.Fqdn == actual.Fqdn && expected.SipSignalingPort == actual.SipSignalingPort);
 }
Пример #3
0
        public void ManageSipConfiguration()
        {
            if (SkipSipRoutingLiveTests)
            {
                Assert.Ignore("Skip SIP routing live tests flag is on.");
            }

            var connectionString = TestEnvironment.LiveTestStaticConnectionString;

            #region Snippet:CreateSipRoutingClient
            // Get a connection string to Azure Communication resource.
            //@@var connectionString = "<connection_string>";
            var client = new SipRoutingClient(connectionString);
            #endregion Snippet:CreateSipRoutingClient

            #region Snippet:CreateSipRoutingClientWithTokenCredential
            // Get an endpoint to our Azure Communication resource.
            //@@var endpoint = new Uri("<endpoint_url>");
            //@@TokenCredential tokenCredential = new DefaultAzureCredential();
            //@@client = new SipRoutingClient(endpoint, tokenCredential);
            #endregion Snippet:CreateSipRoutingClientWithTokenCredential

            client = CreateClient();
            var newTrunks = new List <SipTrunk> {
                TestData.NewTrunk
            };
            var newRoutes = new List <SipTrunkRoute> {
                TestData.RuleNavigateToNewTrunk
            };

            #region Snippet:Replace
            // The service will not allow trunks that are used in any of the routes to be deleted, therefore first set the routes as empty list, and then update the routes.
            //@@var newTrunks = "<new_trunks_list>";
            //@@var newRoutes = "<new_routes_list>";
            client.SetRoutes(new List <SipTrunkRoute>());
            client.SetTrunks(newTrunks);
            client.SetRoutes(newRoutes);
            #endregion Snippet:Replace

            #region Snippet:RetrieveList
            var trunksResponse = client.GetTrunks();
            var routesResponse = client.GetRoutes();
            #endregion Snippet:RetrieveList

            Assert.AreEqual(1, trunksResponse.Value.Count);
            Assert.IsTrue(TrunkAreEqual(TestData.NewTrunk, trunksResponse.Value[0]));
            Assert.AreEqual(1, routesResponse.Value.Count);
            Assert.IsTrue(RouteAreEqual(TestData.RuleNavigateToNewTrunk, routesResponse.Value[0]));

            var fqdnToRetrieve = TestData.NewTrunk.Fqdn;

            #region Snippet:RetrieveTrunk
            // Get trunk object, based on it's FQDN.
            //@@var fqdnToRetrieve = "<fqdn>";
            var trunkResponse = client.GetTrunk(fqdnToRetrieve);
            #endregion Snippet:RetrieveTrunk

            var trunkToSet = new SipTrunk(TestData.NewTrunk.Fqdn, 9999);

            #region Snippet:SetTrunk
            // Set function will either modify existing item or add new item to the collection.
            // The trunk is matched based on it's FQDN.
            //@@var trunkToSet = "<trunk_to_set>";
            client.SetTrunk(trunkToSet);
            #endregion Snippet:SetTrunk

            client.SetTrunk(TestData.TrunkList[0]);
            var fqdnToDelete = TestData.Fqdns[0];

            #region Snippet:DeleteTrunk
            // Deletes trunk with supplied FQDN.
            //@@var fqdnToDelete = "<fqdn>";
            client.DeleteTrunk(fqdnToDelete);
            #endregion Snippet:DeleteTrunk

            var trunksFinalResponse = client.GetTrunks();
            var routesFinalResponse = client.GetRoutes();

            Assert.AreEqual(1, trunksFinalResponse.Value.Count);
            Assert.IsTrue(TrunkAreEqual(trunkToSet, trunksFinalResponse.Value[0]));
            Assert.AreEqual(1, routesFinalResponse.Value.Count);
        }
Пример #4
0
        public async Task ManageSipConfigurationAsync()
        {
            if (SkipSipRoutingLiveTests)
            {
                Assert.Ignore("Skip SIP routing live tests flag is on.");
            }

            var client    = CreateClient();
            var newTrunks = new List <SipTrunk> {
                TestData.NewTrunk
            };
            var newRoutes = new List <SipTrunkRoute> {
                TestData.RuleNavigateToNewTrunk
            };

            #region Snippet:ReplaceAsync
            // The service will not allow trunks that are used in any of the routes to be deleted, therefore first set the routes as empty list, and then update the routes.
            //@@var newTrunks = "<new_trunks_list>";
            //@@var newRoutes = "<new_routes_list>";
            await client.SetRoutesAsync(new List <SipTrunkRoute>());

            await client.SetTrunksAsync(newTrunks);

            await client.SetRoutesAsync(newRoutes);

            #endregion Snippet:ReplaceAsync

            #region Snippet:RetrieveListAsync
            var trunksResponse = await client.GetTrunksAsync();

            var routesResponse = await client.GetRoutesAsync();

            #endregion Snippet:RetrieveListAsync

            Assert.AreEqual(1, trunksResponse.Value.Count);
            Assert.IsTrue(TrunkAreEqual(TestData.NewTrunk, trunksResponse.Value[0]));
            Assert.AreEqual(1, routesResponse.Value.Count);
            Assert.IsTrue(RouteAreEqual(TestData.RuleNavigateToNewTrunk, routesResponse.Value[0]));

            var fqdnToRetrieve = TestData.NewTrunk.Fqdn;

            #region Snippet:RetrieveTrunkAsync
            // Get trunk object, based on it's FQDN.
            //@@var fqdnToRetrieve = "<fqdn>";
            var trunkResponse = await client.GetTrunkAsync(fqdnToRetrieve);

            #endregion Snippet:RetrieveTrunkAsync

            var trunkToSet = new SipTrunk(TestData.NewTrunk.Fqdn, 9999);

            #region Snippet:SetTrunkAsync
            // Set function will either modify existing item or add new item to the collection.
            // The trunk is matched based on it's FQDN.
            //@@var trunkToSet = "<trunk_to_set>";
            await client.SetTrunkAsync(trunkToSet);

            #endregion Snippet:SetTrunkAsync

            await client.SetTrunkAsync(TestData.TrunkList[0]);

            var fqdnToDelete = TestData.Fqdns[0];

            #region Snippet:DeleteTrunkAsync
            // Deletes trunk with supplied FQDN.
            //@@var fqdnToDelete = "<fqdn>";
            await client.DeleteTrunkAsync(fqdnToDelete);

            #endregion Snippet:DeleteTrunkAsync

            var trunksFinalResponse = client.GetTrunksAsync();
            var routesFinalResponse = client.GetRoutesAsync();

            Assert.AreEqual(1, trunksFinalResponse.Result.Value.Count);
            Assert.IsTrue(TrunkAreEqual(trunkToSet, trunksFinalResponse.Result.Value[0]));
            Assert.AreEqual(1, routesFinalResponse.Result.Value.Count);
        }