public void Update()
        {
            string requestJson = GetJsonPayload("/contacts/dncApi/request/updateDnc.json");
            var    restRequest = MockRestResponse();

            DoNotContact dnc = new DoNotContact
            {
                Call   = true,
                ListId = TEST_LONG,
                Number = TEST_LONG.ToString(),
                Text   = true
            };

            Client.DncApi.Update(dnc);

            Assert.AreEqual(Method.PUT, restRequest.Value.Method);
            var requestBodyParam = restRequest.Value.Parameters.FirstOrDefault(p => p.Type == ParameterType.RequestBody);

            Assert.That(requestBodyParam.Value, Is.EqualTo(requestJson));
        }
Ejemplo n.º 2
0
        public void CrudAndGetDnc()
        {
            CreateDncsRequest crRequest = new CreateDncsRequest()
            {
                Call    = true,
                Text    = true,
                Numbers = new List <string> {
                    "12135551188"
                },
                Source = "testSource"
            };

            Client.DncApi.Create(crRequest);

            DoNotContact dnc = Client.DncApi.Get("12135551188");

            Assert.AreEqual(dnc.Number, "12135551188");
            Assert.AreEqual(dnc.Call, true);
            Assert.AreEqual(dnc.Text, true);

            UpdateDncRequest updRequest = new UpdateDncRequest()
            {
                Call   = true,
                Text   = false,
                Number = "12135551188"
            };

            Client.DncApi.Update(updRequest);

            dnc = Client.DncApi.Get("12135551188");
            Assert.AreEqual(dnc.Call, true);
            Assert.AreEqual(dnc.Text, false);

            Client.DncApi.Delete("12135551188");

            dnc = Client.DncApi.Get("12135551188");
            Assert.AreEqual(dnc.Call, false);
            Assert.AreEqual(dnc.Text, false);
        }
Ejemplo n.º 3
0
        public void AddDncItems()
        {
            string requestJson = GetJsonPayload("/contacts/dncApi/request/addDncItems.json");
            var    restRequest = MockRestResponse();

            var dncs = new List <DoNotContact>();
            var dnc  = new DoNotContact {
                ListId = TEST_LONG, Number = TEST_LONG.ToString()
            };

            dncs.Add(dnc);
            var request = new AddDncListItemsRequest <DoNotContact>();

            request.ContactListId = TEST_LONG;
            request.Contacts      = dncs;

            Client.DncListsApi.AddListItems(request);

            Assert.AreEqual(Method.POST, restRequest.Value.Method);
            Assert.That(restRequest.Value.Resource, Is.StringContaining("/" + TEST_LONG));
            var requestBodyParam = restRequest.Value.Parameters.FirstOrDefault(p => p.Type == ParameterType.RequestBody);

            Assert.That(requestBodyParam.Value, Is.EqualTo(requestJson));
        }
Ejemplo n.º 4
0
        public void TestDncContactListWithItemsCRUD()
        {
            //test add and get dnc list
            DncList dncList = new DncList {
                Name = "dncList1"
            };
            ResourceId dncListId = Client.DncListsApi.Create(dncList);
            DncList    created   = Client.DncListsApi.Get(dncListId.Id);

            Assert.AreEqual("dncList1", created.Name);
            Assert.Greater(created.Created, DateTime.Now.AddMinutes(-3));

            //test find dnc list
            FindDncListsRequest findRequest = new FindDncListsRequest {
                Name = "dncList1"
            };
            Page <DncList> doNotCallLists = Client.DncListsApi.Find(findRequest);

            Assert.Greater(doNotCallLists.TotalCount, 0);
            Console.WriteLine("Page of dnc list:" + doNotCallLists);

            //test add dnc list items
            DoNotContact dnc1 = new DoNotContact {
                Number = "12135543211", Text = true, Call = false
            };
            DoNotContact dnc2 = new DoNotContact {
                Number = "12135543212", Text = true, Call = false
            };
            DoNotContact dnc3 = new DoNotContact {
                Number = "12135543213", Text = true, Call = false
            };

            AddDncListItemsRequest <DoNotContact> addItemsRequest = new AddDncListItemsRequest <DoNotContact>
            {
                ContactListId = dncListId.Id,
                Contacts      = new List <DoNotContact> {
                    dnc1, dnc2, dnc3
                }
            };

            Client.DncListsApi.AddListItems(addItemsRequest);

            //test get dnc list items
            GetByIdRequest getItemsRequest = new GetByIdRequest {
                Id = dncListId.Id
            };
            Page <DoNotContact>  dncListItems = Client.DncListsApi.GetListItems(getItemsRequest);
            IList <DoNotContact> items        = dncListItems.Items;

            Assert.AreEqual(3, items.Count);

            //test remove dnc list items
            Client.DncListsApi.RemoveListItem(dncListId.Id, "12135543211");
            dncListItems = Client.DncListsApi.GetListItems(getItemsRequest);
            items        = dncListItems.Items;
            Assert.AreEqual(2, items.Count);

            Client.DncListsApi.RemoveListItems(dncListId.Id, new List <string> {
                "12135543212", "12135543213"
            });

            dncListItems = Client.DncListsApi.GetListItems(getItemsRequest);
            Assert.AreEqual(null, dncListItems.Items);
            Assert.AreEqual(0, dncListItems.TotalCount);

            // test delete dnc list
            Client.DncListsApi.Delete(dncListId.Id);

            // test get UniversalDncNumber
            IList <UniversalDnc> universalDncNumber = Client.DncListsApi.GetUniversalDncNumber("12135543212");

            Console.WriteLine("universal:" + universalDncNumber);
        }
Ejemplo n.º 5
0
 public static void Main(string[] args)
 {
     var          client = new CallfireClient("api_login", "api_password");
     DoNotContact dnc    = client.DncApi.Get("12135551126");
 }
Ejemplo n.º 6
0
 /// <summary>
 /// Update a Do Not Contact (DNC) contact value. Can toggle whether the DNC is enabled for calls/texts.
 /// </summary>
 /// <param name="dnc">DNC item to update</param>
 /// <exception cref="BadRequestException">          in case HTTP response code is 400 - Bad request, the request was formatted improperly.</exception>
 /// <exception cref="UnauthorizedException">        in case HTTP response code is 401 - Unauthorized, API Key missing or invalid.</exception>
 /// <exception cref="AccessForbiddenException">     in case HTTP response code is 403 - Forbidden, insufficient permissions.</exception>
 /// <exception cref="ResourceNotFoundException">    in case HTTP response code is 404 - NOT FOUND, the resource requested does not exist.</exception>
 /// <exception cref="InternalServerErrorException"> in case HTTP response code is 500 - Internal Server Error.</exception>
 /// <exception cref="CallfireApiException">         in case HTTP response code is something different from codes listed above.</exception>
 /// <exception cref="CallfireClientException">      in case error has occurred in client.</exception>
 public void Update(DoNotContact dnc)
 {
     Client.Put <DoNotContact>(DNC_PATH, dnc);
 }