public void Test_UpdateBroadcast()
        {
            var broadcast        = new CfBroadcast(BroadcastId, BroadcastName, CfBroadcastStatus.Running, DateTime.Now, CfBroadcastType.Text, null);
            var broadcastRequest = new CfBroadcastRequest("", broadcast);

            Client.UpdateBroadcast(broadcastRequest);
        }
예제 #2
0
        public void Test_LabelBroadcastMandatoryComplete()
        {
            var broadcastRequest = new CfBroadcastRequest(string.Empty, Broadcast);
            var id = BroadcastClient.CreateBroadcast(broadcastRequest);

            Client.LabelBroadcast(id, "NEWLABEL");
        }
        public void FixtureSetup()
        {
            Client          = new SoapLabelClient(MockClient.User(), MockClient.Password());
            BroadcastClient = new SoapBroadcastClient(MockClient.User(), MockClient.Password());

            var localTimeZoneRestriction = new CfLocalTimeZoneRestriction(DateTime.Now, DateTime.Now);

            CfResult[]         result       = { CfResult.Received };
            CfRetryPhoneType[] phoneTypes   = { CfRetryPhoneType.FirstNumber };
            var broadcastConfigRestryConfig = new CfBroadcastConfigRetryConfig(1000, 2, result, phoneTypes);
            var expectedTextBroadcastConfig = new CfTextBroadcastConfig(1, DateTime.Now, null, localTimeZoneRestriction, broadcastConfigRestryConfig, "Test", CfBigMessageStrategy.DoNotSend);
            var expectedBroadcast           = new CfBroadcast(14898, "broadcastSoap", CfBroadcastStatus.Running, DateTime.Now, CfBroadcastType.Text, expectedTextBroadcastConfig);
            var broadcastRequest            = new CfBroadcastRequest("", expectedBroadcast);

            BroadcastId = BroadcastClient.CreateBroadcast(broadcastRequest);

            LabelName = "New SoapLabel";

            Broadcast = new CfBroadcast
            {
                Name = "Name",
                Type = CfBroadcastType.Text,
                Item = new CfTextBroadcastConfig
                {
                    FromNumber  = VerifyShortCode,
                    RetryConfig = new CfBroadcastConfigRetryConfig
                    {
                        RetryPhoneTypes = new[] { CfRetryPhoneType.FirstNumber },
                        RetryResults    = new[] { CfResult.NoAns }
                    },
                    Message = "Message Test",
                },
            };
        }
        public void Test_CreateBroadcast_TextLocalTimeZoneRestrictionEndTimeOnly()
        {
            ExpectedBroadcastText = new CfBroadcast
            {
                Name = "Name",
                Type = CfBroadcastType.Text,
                Item = new CfTextBroadcastConfig
                {
                    FromNumber = VerifyShortCode,
                    LocalTimeZoneRestriction = new CfLocalTimeZoneRestriction
                    {
                        EndTime = new DateTime(2014, 01, 01, 17, 00, 00)
                    },
                    Message            = "Message Test",
                    BigMessageStrategy = CfBigMessageStrategy.DoNotSend
                },
            };
            var broadcastRequest = new CfBroadcastRequest(string.Empty, ExpectedBroadcastText);

            if (Client.GetType() == typeof(RestBroadcastClient))
            {
                var id = Client.CreateBroadcast(broadcastRequest);
                Assert.IsNotNull(id);
            }
            else
            {
                Assert.Throws <FaultException <ServiceFaultInfo> >(() => Client.CreateBroadcast(broadcastRequest));
            }
        }
        public void Test_CreateBroadcast_VoiceRetryConfigComplete()
        {
            ExpectedBroadcastVoice = new CfBroadcast
            {
                Name = "Name",
                Type = CfBroadcastType.Voice,
                Item = new CfVoiceBroadcastConfig
                {
                    FromNumber            = VerifyFromNumber,
                    Item                  = "TTS: eeee",
                    MachineSoundTextVoice = "SPANISH1",
                    Item1                 = "TTS: eeee",
                    RetryConfig           = new CfBroadcastConfigRetryConfig
                    {
                        MaxAttempts            = 2,
                        MinutesBetweenAttempts = 5,
                        RetryPhoneTypes        = new[] { CfRetryPhoneType.HomePhone },
                        RetryResults           = new[] { CfResult.NoAns }
                    }
                },
            };
            var broadcastRequest = new CfBroadcastRequest(string.Empty, ExpectedBroadcastVoice);
            var id = Client.CreateBroadcast(broadcastRequest);

            Assert.IsNotNull(id);
        }
예제 #6
0
        public long CreateBroadcast(CfBroadcastRequest createBroadcast)
        {
            var broadcastRequest   = new BroadcastRequest(createBroadcast.RequestId, BroadcastMapper.ToSoapBroadcast(createBroadcast.Broadcast));
            var resourcerReference = BaseRequest <ResourceReference>(HttpMethod.Post, broadcastRequest, new CallfireRestRoute <Broadcast>());

            return(resourcerReference.Id);
        }
        public void Test_CreateBroadcast_VoiceLocalTimeZoneRestrictionBeginTimeOnly()
        {
            ExpectedBroadcastVoice = new CfBroadcast
            {
                Name = "Name",
                Type = CfBroadcastType.Voice,
                Item = new CfVoiceBroadcastConfig
                {
                    FromNumber               = VerifyFromNumber,
                    Item                     = "TTS: eeee",
                    MachineSoundTextVoice    = "SPANISH1",
                    Item1                    = "TTS: eeee",
                    LocalTimeZoneRestriction = new CfLocalTimeZoneRestriction
                    {
                        BeginTime = new DateTime(2014, 01, 01, 09, 00, 00),
                    },
                },
            };
            var broadcastRequest = new CfBroadcastRequest(string.Empty, ExpectedBroadcastVoice);

            if (Client.GetType() == typeof(RestBroadcastClient))
            {
                var id = Client.CreateBroadcast(broadcastRequest);
                Assert.IsNotNull(id);
            }
            else
            {
                Assert.Throws <FaultException <ServiceFaultInfo> >(() => Client.CreateBroadcast(broadcastRequest));
            }
        }
예제 #8
0
        public void Test_UnlabelBroadcastWrongData()
        {
            var broadcastRequest = new CfBroadcastRequest(string.Empty, Broadcast);
            var id = BroadcastClient.CreateBroadcast(broadcastRequest);

            Client.LabelBroadcast(id, "NEWUNLABEL");
            AssertClientException <WebException, FaultException <ServiceFaultInfo> >(() => Client.UnlabelBroadcast(id, "WRONGLABEL"));
        }
예제 #9
0
        public void Test_DeleteLabelComplete()
        {
            var broadcastRequest = new CfBroadcastRequest(string.Empty, Broadcast);
            var id = BroadcastClient.CreateBroadcast(broadcastRequest);

            Client.LabelBroadcast(id, "LABEL");
            Client.DeleteLabel("LABEL");
        }
        public void Test_CreateBroadcast()
        {
            var broadcast        = new CfBroadcast(ExpectedBroadcast.Id, ExpectedBroadcast.Name, ExpectedBroadcast.Status, ExpectedBroadcast.LastModified, ExpectedBroadcast.Type, ExpectedBroadcast.Item);
            var broadcastRequest = new CfBroadcastRequest("", broadcast);

            var id = Client.CreateBroadcast(broadcastRequest);

            Assert.AreEqual(ExpectedBroadcast.Id, id);
        }
        public void Test_CreateBroadcast_WithNameOnly()
        {
            ExpectedBroadcast = new CfBroadcast
            {
                Name = "Name"
            };

            var broadcastRequest = new CfBroadcastRequest(null, ExpectedBroadcast);

            AssertClientException <WebException, FaultException>(() => Client.CreateBroadcast(broadcastRequest));
        }
        public void Test_CreateBroadcast_WithNameandTypeVoice()
        {
            ExpectedBroadcast = new CfBroadcast
            {
                Name = "Name",
                Type = CfBroadcastType.Voice
            };

            var broadcastRequest = new CfBroadcastRequest(null, ExpectedBroadcast);

            AssertClientException <WebException, FaultException>(() => Client.CreateBroadcast(broadcastRequest));
        }
예제 #13
0
        public void UpdateBroadcast(CfBroadcastRequest updateBroadcast)
        {
            var broadcast = updateBroadcast.Broadcast;

            if (broadcast == null)
            {
                return;
            }
            var broadcastRequest = new BroadcastRequest(updateBroadcast.RequestId, BroadcastMapper.ToSoapBroadcast(broadcast));

            BaseRequest <string>(HttpMethod.Put, broadcastRequest, new CallfireRestRoute <Broadcast>(broadcast.Id));
        }
        public void Test_ControlBroadcastStart()
        {
            var controlBroadcast = new CfControlBroadcast
            {
                Command = CfBroadcastCommand.Start
            };
            var broadcastRequest = new CfBroadcastRequest(string.Empty, ExpectedBroadcastDefault);

            controlBroadcast.Id = Client.CreateBroadcast(broadcastRequest);

            AssertClientException <WebException, FaultException <ServiceFaultInfo> >(() => Client.ControlBroadcast(controlBroadcast));
        }
        public void Test_ControlBroadcastArchive()
        {
            var controlBroadcast = new CfControlBroadcast
            {
                Command = CfBroadcastCommand.Archive
            };
            var broadcastRequest = new CfBroadcastRequest(string.Empty, ExpectedBroadcastDefault);

            controlBroadcast.Id = Client.CreateBroadcast(broadcastRequest);

            Client.ControlBroadcast(controlBroadcast);
            var broadcast = Client.GetBroadcast(controlBroadcast.Id);

            Assert.AreEqual(CfBroadcastStatus.Archived, broadcast.Status);
        }
        public void Test_CreateContactBatchBroadcastId()
        {
            var broadcastRequest = new CfBroadcastRequest(string.Empty, ExpectedBroadcastDefault);
            var id = Client.CreateBroadcast(broadcastRequest);

            object[] contactListId      = { Convert.ToInt64(192949001) };
            var      createContactBatch = new CfCreateContactBatch
            {
                BroadcastId = id,
                Name        = "Test Contact Batch",
                Items       = contactListId,
                ScrubBroadcastDuplicates = false
            };
            var idContactBatch = Client.CreateContactBatch(createContactBatch);

            Assert.NotNull(idContactBatch);
        }
        public void Test_CreateBroadcast_IvrBroadcastConfigComplete()
        {
            ExpectedBroadcastIvr = new CfBroadcast
            {
                Name = "Name",
                Type = CfBroadcastType.Ivr,
                Item = new CfIvrBroadcastConfig
                {
                    FromNumber  = VerifyFromNumber,
                    DialplanXml = "<dialplan><play type=\"tts\">Congratulations! You have successfully configured a CallFire I V R.</play></dialplan>"
                },
            };
            var broadcastRequest = new CfBroadcastRequest(string.Empty, ExpectedBroadcastIvr);
            var id = Client.CreateBroadcast(broadcastRequest);

            Assert.IsNotNull(id);
        }
        public void Test_CreateBroadcast_VoiceBroadcastConfigFaildNumber()
        {
            ExpectedBroadcastVoice = new CfBroadcast
            {
                Name = "Name",
                Type = CfBroadcastType.Voice,
                Item = new CfVoiceBroadcastConfig
                {
                    FromNumber            = "45879163710",
                    Item                  = "TTS: eeee",
                    MachineSoundTextVoice = "SPANISH1",
                    Item1                 = "TTS: eeee"
                },
            };
            var broadcastRequest = new CfBroadcastRequest(string.Empty, ExpectedBroadcastVoice);

            AssertClientException <WebException, FaultException <ServiceFaultInfo> >(() => Client.CreateBroadcast(broadcastRequest));
        }
        public void Test_CreateBroadcast_VoiceBroadcastConfigComplete()
        {
            ExpectedBroadcastVoice = new CfBroadcast
            {
                Name = "Name",
                Type = CfBroadcastType.Voice,
                Item = new CfVoiceBroadcastConfig
                {
                    FromNumber            = VerifyFromNumber,
                    Item                  = "TTS: eeee",
                    MachineSoundTextVoice = "SPANISH1",
                    Item1                 = "TTS: eeee",
                },
            };
            var broadcastRequest = new CfBroadcastRequest(string.Empty, ExpectedBroadcastVoice);
            var id = Client.CreateBroadcast(broadcastRequest);

            Assert.IsNotNull(id);
        }
        public void Test_CreateBroadcast_IvrRetryConfigNODialplanXml()
        {
            ExpectedBroadcastIvr = new CfBroadcast
            {
                Name = "Name",
                Type = CfBroadcastType.Ivr,
                Item = new CfIvrBroadcastConfig
                {
                    FromNumber  = VerifyFromNumber,
                    RetryConfig = new CfBroadcastConfigRetryConfig
                    {
                        RetryPhoneTypes = new[] { CfRetryPhoneType.FirstNumber },
                        RetryResults    = new[] { CfResult.TooBig }
                    },
                },
            };
            var broadcastRequest = new CfBroadcastRequest(string.Empty, ExpectedBroadcastIvr);

            AssertClientException <WebException, FaultException <ServiceFaultInfo> >(() => Client.CreateBroadcast(broadcastRequest));
        }
        public void Test_CreateBroadcast_TextRetryConfigMessage160caracters()
        {
            ExpectedBroadcastText = new CfBroadcast
            {
                Name = "Name",
                Type = CfBroadcastType.Text,
                Item = new CfTextBroadcastConfig
                {
                    Id                 = 1,
                    Created            = new DateTime(2012, 10, 26),
                    FromNumber         = VerifyShortCode,
                    Message            = "Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adineque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adi",
                    BigMessageStrategy = CfBigMessageStrategy.SendMultiple
                },
            };
            var broadcastRequest = new CfBroadcastRequest(string.Empty, ExpectedBroadcastText);
            var id = Client.CreateBroadcast(broadcastRequest);

            Assert.IsNotNull(id);
        }
        public void Test_CreateBroadcast_IvrRetryConfigINVALIDDialplanXml()
        {
            ExpectedBroadcastIvr = new CfBroadcast
            {
                Name = "Name",
                Type = CfBroadcastType.Ivr,
                Item = new CfIvrBroadcastConfig
                {
                    FromNumber  = VerifyFromNumber,
                    DialplanXml = "<dialplan><play type=\"tts\">Congratulations! You have successfully configured a CallFire I V R.",
                    RetryConfig = new CfBroadcastConfigRetryConfig
                    {
                        RetryPhoneTypes = new[] { CfRetryPhoneType.WorkPhone },
                        RetryResults    = new[] { CfResult.CarrierError }
                    },
                },
            };
            var broadcastRequest = new CfBroadcastRequest(string.Empty, ExpectedBroadcastIvr);

            AssertClientException <WebException, FaultException <ServiceFaultInfo> >(() => Client.CreateBroadcast(broadcastRequest));
        }
        public void Test_CreateBroadcast_IvrLocalTimeZoneRestrictionComplete()
        {
            ExpectedBroadcastIvr = new CfBroadcast
            {
                Name = "Name",
                Type = CfBroadcastType.Ivr,
                Item = new CfIvrBroadcastConfig
                {
                    FromNumber  = VerifyFromNumber,
                    DialplanXml = "<dialplan><play type=\"tts\">Congratulations! You have successfully configured a CallFire I V R.</play></dialplan>",
                    LocalTimeZoneRestriction = new CfLocalTimeZoneRestriction
                    {
                        BeginTime = new DateTime(2014, 01, 01, 09, 00, 00),
                        EndTime   = new DateTime(2014, 01, 01, 17, 00, 00)
                    }
                },
            };
            var broadcastRequest = new CfBroadcastRequest(string.Empty, ExpectedBroadcastIvr);
            var id = Client.CreateBroadcast(broadcastRequest);

            Assert.IsNotNull(id);
        }
        public void Test_CreateBroadcast_IvrRetryConfigVALIDDialplanXml()
        {
            ExpectedBroadcastIvr = new CfBroadcast
            {
                Name = "Name",
                Type = CfBroadcastType.Ivr,
                Item = new CfIvrBroadcastConfig
                {
                    FromNumber  = VerifyFromNumber,
                    DialplanXml = "<dialplan><play type=\"tts\">Congratulations! You have successfully configured a CallFire I V R.</play></dialplan>",
                    RetryConfig = new CfBroadcastConfigRetryConfig
                    {
                        RetryPhoneTypes = new[] { CfRetryPhoneType.WorkPhone },
                        RetryResults    = new[] { CfResult.InternalError }
                    },
                },
            };
            var broadcastRequest = new CfBroadcastRequest(string.Empty, ExpectedBroadcastIvr);
            var id = Client.CreateBroadcast(broadcastRequest);

            Assert.IsNotNull(id);
        }
        public void Test_CreateContactBatchComplete()
        {
            var broadcastRequest = new CfBroadcastRequest(string.Empty, ExpectedBroadcastDefault);
            var id = Client.CreateBroadcast(broadcastRequest);

            object[] toNumberList = { new CfToNumber {
                                          Value = VerifyFromNumber, ClientData = "Client1"
                                      },
                                      new CfToNumber {
                                          Value = VerifyShortCode, ClientData = "Client2"
                                      } };
            var      createContactBatch = new CfCreateContactBatch
            {
                BroadcastId = id,
                Name        = "Test Contact Batch",
                Items       = toNumberList,
                ScrubBroadcastDuplicates = true
            };
            var idContactBatch = Client.CreateContactBatch(createContactBatch);

            Assert.NotNull(idContactBatch);
        }
        public void Test_CreateBroadcast_VoiceRetryConfigCompleteItem_Item1_Item2_Item3Long()
        {
            ExpectedBroadcastVoice = new CfBroadcast
            {
                Name = "Name",
                Type = CfBroadcastType.Voice,
                Item = new CfVoiceBroadcastConfig
                {
                    FromNumber            = VerifyFromNumber,
                    Item                  = 460760001,
                    MachineSoundTextVoice = "SPANISH1",
                    Item1                 = 460760001,
                    RetryConfig           = new CfBroadcastConfigRetryConfig
                    {
                        RetryResults = new[] { CfResult.La }
                    }
                },
            };
            var broadcastRequest = new CfBroadcastRequest(string.Empty, ExpectedBroadcastVoice);
            var id = Client.CreateBroadcast(broadcastRequest);

            Assert.IsNotNull(id);
        }
        public void Test_CreateBroadcast_TextRetryConfigNotAllComplete()
        {
            ExpectedBroadcastText = new CfBroadcast
            {
                Name = "Name",
                Type = CfBroadcastType.Text,
                Item = new CfTextBroadcastConfig
                {
                    FromNumber  = VerifyShortCode,
                    RetryConfig = new CfBroadcastConfigRetryConfig
                    {
                        RetryPhoneTypes = new[] { CfRetryPhoneType.FirstNumber },
                        RetryResults    = new[] { CfResult.NoAns }
                    },
                    Message            = "Message Test",
                    BigMessageStrategy = CfBigMessageStrategy.Trim
                },
            };
            var broadcastRequest = new CfBroadcastRequest(string.Empty, ExpectedBroadcastText);
            var id = Client.CreateBroadcast(broadcastRequest);

            Assert.IsNotNull(id);
        }
        public void Test_CreateBroadcast_TextRetryConfigMessage161caractersANDRetryResultsSENT()
        {
            ExpectedBroadcastText = new CfBroadcast
            {
                Name = "Name",
                Type = CfBroadcastType.Text,
                Item = new CfTextBroadcastConfig
                {
                    FromNumber  = VerifyShortCode,
                    RetryConfig = new CfBroadcastConfigRetryConfig
                    {
                        RetryPhoneTypes = new[] { CfRetryPhoneType.FirstNumber },
                        RetryResults    = new[] { CfResult.Sent }
                    },
                    Message            = "Xneque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adineque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adi",
                    BigMessageStrategy = CfBigMessageStrategy.DoNotSend
                },
            };
            var broadcastRequest = new CfBroadcastRequest(string.Empty, ExpectedBroadcastText);
            var id = Client.CreateBroadcast(broadcastRequest);

            Assert.IsNotNull(id);
        }
        public void Test_CreateBroadcast_VoiceLocalTimeZoneRestrictionComplete()
        {
            ExpectedBroadcastVoice = new CfBroadcast
            {
                Name = "Name",
                Type = CfBroadcastType.Voice,
                Item = new CfVoiceBroadcastConfig
                {
                    FromNumber               = VerifyFromNumber,
                    Item                     = "TTS: eeee",
                    MachineSoundTextVoice    = "SPANISH1",
                    Item1                    = "TTS: eeee",
                    LocalTimeZoneRestriction = new CfLocalTimeZoneRestriction
                    {
                        BeginTime = new DateTime(2014, 01, 01, 09, 00, 00),
                        EndTime   = new DateTime(2014, 01, 01, 17, 00, 00)
                    },
                },
            };
            var broadcastRequest = new CfBroadcastRequest(string.Empty, ExpectedBroadcastVoice);
            var id = Client.CreateBroadcast(broadcastRequest);

            Assert.IsNotNull(id);
        }
예제 #30
0
        public void FixtureSetup()
        {
            Client = new RestBroadcastClient(MockClient.User(), MockClient.Password());

            var localTimeZoneRestriction = new CfLocalTimeZoneRestriction(DateTime.Now, DateTime.Now);

            CfResult[]         result       = { CfResult.Received };
            CfRetryPhoneType[] phoneTypes   = { CfRetryPhoneType.FirstNumber };
            var broadcastConfigRestryConfig = new CfBroadcastConfigRetryConfig(1000, 2, result, phoneTypes);
            var expectedTextBroadcastConfig = new CfTextBroadcastConfig(1, DateTime.Now, string.Empty, localTimeZoneRestriction,
                                                                        broadcastConfigRestryConfig, "Test", CfBigMessageStrategy.DoNotSend);

            ExpectedBroadcastDefault = new CfBroadcast(14898, "broadcastRest", CfBroadcastStatus.StartPending, DateTime.Now,
                                                       CfBroadcastType.Text, expectedTextBroadcastConfig);

            CfBroadcastType[] broadcastType = { CfBroadcastType.Text };
            CfQueryBroadcasts = new CfQueryBroadcasts(100, 0, broadcastType, null, null);

            QueryContactBatches   = new CfQueryBroadcastData(100, 0, 1838228001);
            ControlContactBatches = new CfControlContactBatch(1092170001, "ContactBatchRest", true);
            GetBroadcastStats     = new CfGetBroadcastStats(1838228001, new DateTime(2014, 01, 01), new DateTime(2014, 12, 01));

            var textBroadcastConfig = new CfTextBroadcastConfig(1, DateTime.Now, "67076", null, null,
                                                                "Test Message Rest", CfBigMessageStrategy.DoNotSend);
            var broadcast = new CfBroadcast(1838228001, "broadcastUpdated_Rest", CfBroadcastStatus.Running, DateTime.Now,
                                            CfBroadcastType.Text, textBroadcastConfig);

            UpdateBroadcast = new CfBroadcastRequest("", broadcast);

            ControlBroadcast = new CfControlBroadcast(0, null, CfBroadcastCommand.Archive, null);

            const long id = 188717001;

            object[] contactList = { id };
            CreateContactBatch = new CfCreateContactBatch(null, 1907978001, "ContactBatchSoap", contactList, false);
        }