Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CallfireApiClient.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
=============================
Version 1.1.6 - Mar 25 2016
- added mono debug files generation on Windows platform
- removed get/update batch api calls from TextBroadcastsApi

Version 1.1.5 - Mar 14 2016
- added debug support for Mono platform
Expand Down
1 change: 1 addition & 0 deletions Changelog
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ Callfire API client Changelog
=============================
Version 1.1.6 - Mar 25 2016
- added mono debug files generation on Windows platform
- removed get/update batch api calls from TextBroadcastsApi

Version 1.1.5 - Mar 14 2016
- added debug support for Mono platform
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
using CallfireApiClient.Api.Common.Model;
using System.Collections.Generic;
using NUnit.Framework;
using CallfireApiClient.Api.Contacts.Model.Request;

namespace CallfireApiClient.IntegrationTests.Api.CallsTexts
{
Expand All @@ -19,7 +20,7 @@ public void GetCall()

Assert.AreEqual(1, call.Id);
Assert.AreEqual("18088395900", call.ToNumber);
Assert.AreEqual(StateType.FINISHED, call.State);
Assert.AreEqual(StateType.FINISHED, call.State);
}

[Test]
Expand All @@ -42,10 +43,12 @@ public void FindCalls()
[Test]
public void SendCall()
{
var recipient1 = new CallRecipient { ContactId = 463633187003, LiveMessage = "testMessage" };
var recipient2 = new CallRecipient { ContactId = 463633187003, LiveMessage = "testMessage" };
var contacts = Client.ContactsApi.Find(new FindContactsRequest());

var recipient1 = new CallRecipient { ContactId = contacts.Items[0].Id, LiveMessage = "testMessage" };
var recipient2 = new CallRecipient { ContactId = contacts.Items[0].Id, LiveMessage = "testMessage" };
var recipients = new List<CallRecipient> { recipient1, recipient2 };

IList<Call> calls = Client.CallsApi.Send(recipients, null, "items(id,fromNumber,state)");
Console.WriteLine("Calls: " + calls);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,16 @@
using CallfireApiClient.Api.Common.Model;
using NUnit.Framework;
using System.IO;
using CallfireApiClient;

namespace CallfireApiClient.IntegrationTests.Api.CallsTexts
{
[TestFixture, Ignore("temporary disabled")]
public class MediaApiIntegrationTest : AbstractIntegrationTest
{
private const string mp3FilePath = "Resources/File-examples/train.mp3";
private const string wavFilePath = "Resources/File-examples/train.wav";
private const string mp3FilePath = "Resources/File-examples/train1.mp3";
private const string wavFilePath = "Resources/File-examples/train1.wav";

[Test, Ignore("Files should not be uploaded before")]
[Test]
public void TestUpload()
{
String soundName = "mp3_test_" + DateTime.Now.Millisecond.ToString();
Expand All @@ -38,7 +37,7 @@ public void TestGet()
{
mp3ResourceId = new ResourceId { Id = SelectIdFromBadRequestErrorString(e.ApiErrorMessage.Message) };
}

Media media = Client.MediaApi.Get(mp3ResourceId.Id);

Assert.NotNull(media);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ namespace CallfireApiClient.IntegrationTests.Api.Campaigns
public class CallBroadcastsApiIntegrationTest : AbstractIntegrationTest
{
[Test]
public void CrudOperations()
public void VoiceBroadcastCrudOperations()
{
var broadcast = new CallBroadcast
{
Expand Down Expand Up @@ -46,6 +46,34 @@ public void CrudOperations()
Assert.AreEqual(savedBroadcast.Name, updatedBroadcast.Name);
}

[Test]
public void IvrsCrudOperations()
{
var broadcast = new CallBroadcast
{
Name = "ivr_broadcast1",
DialplanXml = "<dialplan name=\"Root\"></dialplan>",
Recipients = new List<Recipient>
{
new Recipient { PhoneNumber = "12132212384" },
new Recipient { PhoneNumber = "12132212385" }
}
};
var id = Client.CallBroadcastsApi.Create(broadcast, true);
Console.WriteLine("ivr id: " + id);
var savedBroadcast = Client.CallBroadcastsApi.Get(id.Id);
Assert.AreEqual(broadcast.Name, savedBroadcast.Name);

savedBroadcast.Name = "updated_name";
savedBroadcast.DialplanXml = "<dialplan name=\"Root\">\r\n\t<play type=\"tts\">Congratulations! You have successfully configured a CallFire I V R.</play>\r\n</dialplan>";
Client.CallBroadcastsApi.Update(savedBroadcast);

var updatedBroadcast = Client.CallBroadcastsApi.Get(id.Id, "id,name");
Assert.Null(updatedBroadcast.Status);
Assert.NotNull(updatedBroadcast.Id);
Assert.AreEqual(savedBroadcast.Name, updatedBroadcast.Name);
}

[Test]
public void StartStopArchiveCampaign()
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@ public void TestUploadMp3WavFilesAndGetThem()
{
String soundName = "mp3_test_" + DateTime.Now.ToString();

string mp3FilePath = "Resources/File-examples/train.mp3";
string wavFilePath = "Resources/File-examples/train.wav";
string mp3FilePath = "Resources/File-examples/train1.mp3";
string wavFilePath = "Resources/File-examples/train1.wav";
ResourceId mp3ResourceId = Client.CampaignSoundsApi.Upload(mp3FilePath, soundName);
ResourceId wavResourceId = Client.CampaignSoundsApi.Upload(wavFilePath);

Expand All @@ -55,19 +55,19 @@ public void TestUploadMp3WavFilesAndGetThem()
// get sound metadata
CampaignSound campaignSound = Client.CampaignSoundsApi.Get(mp3ResourceId.Id, "name,status,lengthInSeconds");
Assert.Null(campaignSound.Id);
Assert.AreEqual(campaignSound.Name, soundName);
Assert.True(campaignSound.Name.Contains("mp3_test"));
Assert.AreEqual(CampaignSound.SoundStatus.ACTIVE, campaignSound.Status);
Assert.AreEqual(6, campaignSound.LengthInSeconds);
Assert.AreEqual(1, campaignSound.LengthInSeconds);

// get mp3
MemoryStream ms = (MemoryStream)Client.CampaignSoundsApi.GetMp3(mp3ResourceId.Id);
string existingFilePath = Path.GetFullPath("Resources/File-examples/train.mp3");
string existingFilePath = Path.GetFullPath("Resources/File-examples/train1.mp3");
string pathToSaveNewFile = existingFilePath.Replace("train.mp3", "mp3_sound.mp3");
File.WriteAllBytes(pathToSaveNewFile, ms.ToArray());

// get wav
ms = (MemoryStream)Client.CampaignSoundsApi.GetWav(wavResourceId.Id);
existingFilePath = Path.GetFullPath("Resources/File-examples/train.wav");
existingFilePath = Path.GetFullPath("Resources/File-examples/train1.wav");
pathToSaveNewFile = existingFilePath.Replace("train.wav", "wav_sound.wav");
File.WriteAllBytes(pathToSaveNewFile, ms.ToArray());
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
using System;
using NUnit.Framework;
using CallfireApiClient.Api.Campaigns.Model;
using System.Linq;
using CallfireApiClient.IntegrationTests.Api;
using CallfireApiClient.Api.Campaigns;
using CallfireApiClient.Api.Campaigns.Model.Request;

namespace CallfireApiClient.IntegrationTests.Api.Campaigns
Expand All @@ -16,20 +13,20 @@ public void CrudOperations()
{
var textAutoReply = new TextAutoReply()
{
Number = "19206596476",
Number = "12132041238",
Message = "test message",
Match = "test match"
};
var resourceId = Client.TextAutoRepliesApi.Create(textAutoReply);
Assert.NotNull(resourceId.Id);

var request = new FindTextAutoRepliesRequest { Number = "19206596476" };
var request = new FindTextAutoRepliesRequest { Number = "12132041238" };
var textAutoReplies = Client.TextAutoRepliesApi.Find(request);
Console.WriteLine(textAutoReplies);

Assert.AreEqual(1, textAutoReplies.TotalCount);
Assert.AreEqual(1, textAutoReplies.Items.Count);
var savedTextAutoReply = textAutoReplies.Items[0];
Assert.True(textAutoReplies.TotalCount > 0);
Assert.AreEqual(textAutoReplies.Items.Count, textAutoReplies.TotalCount);
var savedTextAutoReply = textAutoReplies.Items[textAutoReplies.Items.Count - 1];
Assert.AreEqual(resourceId.Id, savedTextAutoReply.Id);
Assert.AreEqual(textAutoReply.Number, savedTextAutoReply.Number);
Assert.AreEqual(textAutoReply.Message, savedTextAutoReply.Message);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,8 @@ public class TextBroadcastsApiIntegrationTest : AbstractIntegrationTest
public void CrudOperations()
{
var broadcast = new TextBroadcast
{
Name = "voice_broadcast",
FromNumber = "12132212384",
{
Name = "text_broadcast",
BigMessageStrategy = BigMessageStrategy.SEND_MULTIPLE,
Message = "test_msg",
LocalTimeRestriction = new LocalTimeRestriction
Expand All @@ -30,8 +29,8 @@ public void CrudOperations()
},
Recipients = new List<TextRecipient>
{
new TextRecipient { PhoneNumber = "12132212384" },
new TextRecipient { PhoneNumber = "12132212385" }
new TextRecipient { PhoneNumber = "14246525473" },
new TextRecipient { PhoneNumber = "12132041238" }
}
};
var id = Client.TextBroadcastsApi.Create(broadcast, true);
Expand Down Expand Up @@ -70,7 +69,18 @@ public void StartStopArchiveCampaign()
[Test]
public void GetBroadcastTexts()
{
var request = new GetByIdRequest { Id = 3 };
var broadcast = new TextBroadcast
{
Name = "text_broadcast_1",
Message = "test_msg",
Recipients = new List<TextRecipient>
{
new TextRecipient { PhoneNumber = "14246525473" }
}
};
var broadcastId = Client.TextBroadcastsApi.Create(broadcast, false);

var request = new GetByIdRequest { Id = broadcastId.Id };
var texts = Client.TextBroadcastsApi.GetTexts(request);
Console.WriteLine(texts);
Assert.That(texts.Items, Is.Not.Empty);
Expand All @@ -79,10 +89,21 @@ public void GetBroadcastTexts()
[Test]
public void GetBroadcastStats()
{
var broadcast = new TextBroadcast
{
Name = "text_broadcast_2",
Message = "test_msg",
Recipients = new List<TextRecipient>
{
new TextRecipient { PhoneNumber = "12132041238" }
}
};
var broadcastId = Client.TextBroadcastsApi.Create(broadcast, true);

var begin = DateTime.Now.AddDays(-5d);
var end = DateTime.Now;
var fields = "TotalOutboundCount,remainingOutboundCount";
var stats = Client.TextBroadcastsApi.GetStats(3, fields, begin, end);
var stats = Client.TextBroadcastsApi.GetStats(broadcastId.Id, fields, begin, end);
Console.WriteLine(stats);
}

Expand All @@ -102,8 +123,8 @@ public void AddRecipientsAndAddRemoveBatches()
// add recipients
var recipients = new List<TextRecipient>
{
new TextRecipient { PhoneNumber = "12132212384" },
new TextRecipient { PhoneNumber = "12132212385" }
new TextRecipient { PhoneNumber = "14246525473" },
new TextRecipient { PhoneNumber = "12132041238" }
};
var texts = Client.TextBroadcastsApi.AddRecipients((long)id, recipients);
Console.WriteLine(texts);
Expand All @@ -122,8 +143,8 @@ public void AddRecipientsAndAddRemoveBatches()
Name = "new_batch",
Recipients = new List<Recipient>
{
new TextRecipient { PhoneNumber = "12132212384" },
new TextRecipient { PhoneNumber = "12132212385" }
new TextRecipient { PhoneNumber = "14246525473" },
new TextRecipient { PhoneNumber = "12132041238" }
}
};
var resourceId = Client.TextBroadcastsApi.AddBatch(addBatchRequest);
Expand All @@ -132,14 +153,13 @@ public void AddRecipientsAndAddRemoveBatches()
Console.WriteLine(batches);
Assert.AreEqual(batches.Items.Count + 1, updatedBatches.Items.Count);

var getBatchRequest = new GetByIdRequest { Id = resourceId.Id };
Batch savedBatch = Client.TextBroadcastsApi.GetBatch(getBatchRequest);
Batch savedBatch = Client.BatchesApi.Get(resourceId.Id);
Assert.True((bool)savedBatch.Enabled);
Assert.AreEqual(addBatchRequest.Name, savedBatch.Name);

savedBatch.Enabled = false;
Client.TextBroadcastsApi.UpdateBatch(savedBatch);
Batch updatedBatch = Client.TextBroadcastsApi.GetBatch(getBatchRequest);
Client.BatchesApi.Update(savedBatch);
Batch updatedBatch = Client.BatchesApi.Get(resourceId.Id);
Assert.False((bool)updatedBatch.Enabled);
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,35 +24,15 @@ public void GetUpdateKeywordLease()
// get testing
var keywordLease = Client.KeywordLeasesApi.Get("TEST_KEYWORD");
Assert.AreEqual(keywordLease.KeywordName, "TEST_KEYWORD");
Assert.AreEqual(keywordLease.Status, LeaseStatus.ACTIVE);
Assert.IsTrue(keywordLease.Status.Equals(LeaseStatus.PENDING) || keywordLease.Status.Equals(LeaseStatus.ACTIVE));

// update testing
bool? savedAutoRenew = keywordLease.AutoRenew;
keywordLease.AutoRenew = !savedAutoRenew;

if (savedAutoRenew == false)
{
var ex1 = Assert.Throws<BadRequestException>(() => Client.KeywordLeasesApi.Update(keywordLease));
Assert.That(ex1.ApiErrorMessage.Message, Is.StringMatching("Can't change autoRenew once it is false"));
}
else
{
Client.KeywordLeasesApi.Update(keywordLease);
}
Client.KeywordLeasesApi.Update(keywordLease);

// get testing with params
var keywordLeaseUpdated = Client.KeywordLeasesApi.Get(keywordLease.KeywordName, "autoRenew");
Assert.AreEqual(keywordLeaseUpdated.KeywordName, null);
Assert.AreEqual(keywordLeaseUpdated.AutoRenew, savedAutoRenew);

// get back stage before test
keywordLease.AutoRenew = savedAutoRenew;

var ex2 = Assert.Throws<CallfireApiClient.BadRequestException>(() => Client.KeywordLeasesApi.Update(keywordLease));
Assert.That(ex2.ApiErrorMessage.Message, Is.StringMatching("Can't change autoRenew once it is false"));
Assert.Null(keywordLeaseUpdated.KeywordName);
}

}

}

Loading