Skip to content

Commit b9aaa34

Browse files
authored
Merge pull request #38 from CallFire/develop
Develop
2 parents 8cb1c53 + 1fd9a80 commit b9aaa34

File tree

5 files changed

+151
-124
lines changed

5 files changed

+151
-124
lines changed

CallfireApiClient.nuspec

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44
<version>1.1.9</version>
55
<title>CallFire API v2 client</title>
66
<authors>
7-
Vladimir Mikhailov
8-
Vladimir Malinovskiy
9-
</authors>
7+
Vladimir Mikhailov
8+
Vladimir Malinovskiy
9+
</authors>
1010
<owners>CallFire Inc.</owners>
1111
<projectUrl>https://github.com/CallFire/callfire-api-client-csharp</projectUrl>
1212
<licenseUrl>https://github.com/CallFire/callfire-api-client-csharp/blob/master/LICENSE</licenseUrl>
@@ -16,50 +16,50 @@
1616
<releaseNotes>Callfire API client Changelog
1717
=============================
1818
Version 1.1.9 - Jul 11 2016
19-
- added loading labels parameter in Number Lease objects
19+
- added loading labels parameter in Number Lease objects
2020
Version 1.1.8 - May 27 2016
21-
- defaultLiveMessage, defaultMachineMessage, defaultLiveMessageSoundId, defaultMachineMessageSoundId, defaultVoice params added to send calls api
22-
- added batch id filter parameter for get broadcast calls/texts
23-
- added fields filter parameter for add sound via call, returns CampaignSound object
24-
- added fields filter parameter for add sound via text-to-speech, returns CampaignSound object
25-
- defaultMessage parameter added to send texts function
26-
- added findWebhookResource and findWebhookResources methods to use new webhooks apis
27-
- resumeNextDay parameter added to CallBroadcast object
28-
- transferMessage, transferMessageSoundId, transferDigit, transferNumber params added to CallRecipient object for sending calls and texts
29-
- added questionResponses parameter to CallRecord object
30-
- added duplicate parameter to CampaignSound object
31-
- get call recordings api functions implemented in CallsApi
21+
- defaultLiveMessage, defaultMachineMessage, defaultLiveMessageSoundId, defaultMachineMessageSoundId, defaultVoice params added to send calls api
22+
- added batch id filter parameter for get broadcast calls/texts
23+
- added fields filter parameter for add sound via call, returns CampaignSound object
24+
- added fields filter parameter for add sound via text-to-speech, returns CampaignSound object
25+
- defaultMessage parameter added to send texts function
26+
- added findWebhookResource and findWebhookResources methods to use new webhooks apis
27+
- resumeNextDay parameter added to CallBroadcast object
28+
- transferMessage, transferMessageSoundId, transferDigit, transferNumber params added to CallRecipient object for sending calls and texts
29+
- added questionResponses parameter to CallRecord object
30+
- added duplicate parameter to CampaignSound object
31+
- get call recordings api functions implemented in CallsApi
3232

3333
Version 1.1.7 - Apr 18 2016
34-
- migration to 4.5 net framework
35-
- migration to gradle
34+
- migration to 4.5 net framework
35+
- migration to gradle
3636

3737
Version 1.1.6 - Mar 25 2016
38-
- added mono debug files generation on Windows platform
39-
- removed get/update batch api calls from TextBroadcastsApi
38+
- added mono debug files generation on Windows platform
39+
- removed get/update batch api calls from TextBroadcastsApi
4040

4141
Version 1.1.5 - Mar 14 2016
42-
- added debug support for Mono platform
43-
- fixed issue with uploading mp3 media
42+
- added debug support for Mono platform
43+
- fixed issue with uploading mp3 media
4444

4545
Version 1.1.4 - Mar 4 2016
46-
- added proxy with basic authorization support, see out docs how to configure it.
46+
- added proxy with basic authorization support, see out docs how to configure it.
4747

4848
Version 1.1.3 - Feb 16 2016
49-
- added nuget symbolsource package to debug source code.
49+
- added nuget symbolsource package to debug source code.
5050

5151
Version 1.1.2 - Jan 27 2016
52-
- added find by batchId parameter to FindCalls &amp; FindTexts requests.
53-
- fixed NumberApi.findNumbersLocal and NumberApi.findNumbersTollfree methods to accept an updated server responses
52+
- added find by batchId parameter to FindCalls &amp; FindTexts requests.
53+
- fixed NumberApi.findNumbersLocal and NumberApi.findNumbersTollfree methods to accept an updated server responses
5454

5555
Version 1.1.1 - Jan 25 2016
56-
- default policy set to ignore unknown json fields on deserializing
56+
- default policy set to ignore unknown json fields on deserializing
5757

5858
Version 1.1.0 - Jan 11 2016
59-
- added Subscriptions API
59+
- added Subscriptions API
6060

6161
Version 1.0.0 - Dec 29 2015
62-
- initial release
62+
- initial release
6363
</releaseNotes>
6464
<copyright>Copyright (c) 2015 CallFire Inc.</copyright>
6565
<tags>Callfire rest api client</tags>

Changelog.txt

Lines changed: 26 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,47 +1,48 @@
11
Callfire API client Changelog
22
=============================
33
Version 1.1.9 - Jul 11 2016
4-
- added loading labels parameter in Number Lease objects
4+
- added loading labels parameter in Number Lease objects
5+
56
Version 1.1.8 - May 27 2016
6-
- defaultLiveMessage, defaultMachineMessage, defaultLiveMessageSoundId, defaultMachineMessageSoundId, defaultVoice params added to send calls api
7-
- added batch id filter parameter for get broadcast calls/texts
8-
- added fields filter parameter for add sound via call, returns CampaignSound object
9-
- added fields filter parameter for add sound via text-to-speech, returns CampaignSound object
10-
- defaultMessage parameter added to send texts function
11-
- added findWebhookResource and findWebhookResources methods to use new webhooks apis
12-
- resumeNextDay parameter added to CallBroadcast object
13-
- transferMessage, transferMessageSoundId, transferDigit, transferNumber params added to CallRecipient object for sending calls and texts
14-
- added questionResponses parameter to CallRecord object
15-
- added duplicate parameter to CampaignSound object
16-
- get call recordings api functions implemented in CallsApi
7+
- defaultLiveMessage, defaultMachineMessage, defaultLiveMessageSoundId, defaultMachineMessageSoundId, defaultVoice params added to send calls api
8+
- added batch id filter parameter for get broadcast calls/texts
9+
- added fields filter parameter for add sound via call, returns CampaignSound object
10+
- added fields filter parameter for add sound via text-to-speech, returns CampaignSound object
11+
- defaultMessage parameter added to send texts function
12+
- added findWebhookResource and findWebhookResources methods to use new webhooks apis
13+
- resumeNextDay parameter added to CallBroadcast object
14+
- transferMessage, transferMessageSoundId, transferDigit, transferNumber params added to CallRecipient object for sending calls and texts
15+
- added questionResponses parameter to CallRecord object
16+
- added duplicate parameter to CampaignSound object
17+
- get call recordings api functions implemented in CallsApi
1718

1819
Version 1.1.7 - Apr 18 2016
19-
- migration to 4.5 net framework
20-
- migration to gradle
20+
- migration to 4.5 net framework
21+
- migration to gradle
2122

2223
Version 1.1.6 - Mar 25 2016
23-
- added mono debug files generation on Windows platform
24-
- removed get/update batch api calls from TextBroadcastsApi
24+
- added mono debug files generation on Windows platform
25+
- removed get/update batch api calls from TextBroadcastsApi
2526

2627
Version 1.1.5 - Mar 14 2016
27-
- added debug support for Mono platform
28-
- fixed issue with uploading mp3 media
28+
- added debug support for Mono platform
29+
- fixed issue with uploading mp3 media
2930

3031
Version 1.1.4 - Mar 4 2016
31-
- added proxy with basic authorization support, see out docs how to configure it.
32+
- added proxy with basic authorization support, see out docs how to configure it.
3233

3334
Version 1.1.3 - Feb 16 2016
34-
- added nuget symbolsource package to debug source code.
35+
- added nuget symbolsource package to debug source code.
3536

3637
Version 1.1.2 - Jan 27 2016
37-
- added find by batchId parameter to FindCalls & FindTexts requests.
38-
- fixed NumberApi.findNumbersLocal and NumberApi.findNumbersTollfree methods to accept an updated server responses
38+
- added find by batchId parameter to FindCalls & FindTexts requests.
39+
- fixed NumberApi.findNumbersLocal and NumberApi.findNumbersTollfree methods to accept an updated server responses
3940

4041
Version 1.1.1 - Jan 25 2016
41-
- default policy set to ignore unknown json fields on deserializing
42+
- default policy set to ignore unknown json fields on deserializing
4243

4344
Version 1.1.0 - Jan 11 2016
44-
- added Subscriptions API
45+
- added Subscriptions API
4546

4647
Version 1.0.0 - Dec 29 2015
47-
- initial release
48+
- initial release

CurrentReleaseChanges.txt

Lines changed: 0 additions & 1 deletion
This file was deleted.

build.gradle

Lines changed: 77 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -32,16 +32,16 @@ nuget {
3232

3333
msbuild.dependsOn nugetRestore
3434
msbuild {
35-
solutionFile = 'callfire-api-client-csharp.sln'
36-
configuration = buildReleaseConfiguration
37-
projectName = 'CallfireApiClient'
38-
generateDoc = true
35+
solutionFile = 'callfire-api-client-csharp.sln'
36+
configuration = buildReleaseConfiguration
37+
projectName = 'CallfireApiClient'
38+
generateDoc = true
3939
}
4040

4141
task msbuildDebug (type: com.ullink.Msbuild) {
42-
solutionFile = 'callfire-api-client-csharp.sln'
43-
configuration = buildDebugConfiguration
44-
projectName = 'CallfireApiClient'
42+
solutionFile = 'callfire-api-client-csharp.sln'
43+
configuration = buildDebugConfiguration
44+
projectName = 'CallfireApiClient'
4545
}
4646
msbuildDebug.dependsOn nunit
4747

@@ -60,25 +60,25 @@ task updateNuspecFile << {
6060
// cleanup previous lib/ and src/ files since they depend on build configuration
6161
spec.files.file.findAll { it.@target == 'lib' || it.@target == 'src' }.each { it.replaceNode {} }
6262

63-
def isWindowsOs = Os.isFamily(Os.FAMILY_WINDOWS)
64-
def monoInstallation = "$System.env.MONO_HOME"
65-
def pdbToMdbConverter
66-
if (isWindowsOs) {
67-
if (monoInstallation != 'null') {
68-
pdbToMdbConverter = "$System.env.MONO_HOME" + "\\bin\\pdb2mdb.bat"
69-
exec { commandLine = [pdbToMdbConverter, "$assemblyBinDebugDir/${archivesBaseName}.dll"] }
70-
}
71-
}
72-
63+
def isWindowsOs = Os.isFamily(Os.FAMILY_WINDOWS)
64+
def monoInstallation = "$System.env.MONO_HOME"
65+
def pdbToMdbConverter
66+
if (isWindowsOs) {
67+
if (monoInstallation != 'null') {
68+
pdbToMdbConverter = "$System.env.MONO_HOME" + "\\bin\\pdb2mdb.bat"
69+
exec { commandLine = [pdbToMdbConverter, "$assemblyBinDebugDir/${archivesBaseName}.dll"] }
70+
}
71+
}
72+
7373
spec.files.appendNode {
74-
file(src: "src/**/*.cs", target: 'src') {}
74+
file(src: "src/**/*.cs", target: 'src') {}
7575
file(src: "$assemblyBinDebugDir/${archivesBaseName}.dll", target: 'lib') {}
7676
file(src: "$assemblyBinReleaseDir/${archivesBaseName}.dll.config", target: 'lib') {}
7777
file(src: "$assemblyBinReleaseDir/${archivesBaseName}.xml", target: 'lib') {}
78-
if (isWindowsOs) {
79-
file(src: "$assemblyBinDebugDir/${archivesBaseName}.pdb", target: 'lib') {}
80-
}
81-
file(src: "$assemblyBinDebugDir/${archivesBaseName}.dll.mdb", target: 'lib') {}
78+
if (isWindowsOs) {
79+
file(src: "$assemblyBinDebugDir/${archivesBaseName}.pdb", target: 'lib') {}
80+
}
81+
file(src: "$assemblyBinDebugDir/${archivesBaseName}.dll.mdb", target: 'lib') {}
8282
}
8383

8484
def fw = new FileWriter('CallfireApiClient.nuspec')
@@ -123,71 +123,71 @@ nugetPack {
123123
nugetPack.dependsOn zipBinaries
124124

125125
task prepareTestData () << {
126-
def inFile = file('src/CallfireApiClient.IntegrationTests/App.config')
127-
def xml = new XmlSlurper().parse(inFile)
128-
129-
def apiLogin
130-
def apiPassword
131-
132-
try {
133-
apiLogin = "${testApiUsername}"
134-
apiPassword = "${testApiPassword}"
135-
println([ msbuild.projects['CallfireApiClient.IntegrationTests'].properties.TargetPath ])
136-
} catch(Exception ex) {
137-
println("Api Username and/or Password are empty, you can't run integrationTests task, set them with -PtestApiUsername/-PtestApiPassword options")
138-
apiLogin = "login"
139-
apiPassword = "password"
140-
}
141-
142-
if (apiLogin != 'null' && apiPassword != 'null') {
143-
xml.appSettings.add.findAll { it.@key == 'testLogin' || it.@key == 'testPassword' }.each { it.replaceNode {} }
144-
xml.appSettings.appendNode {
145-
add(key: "testLogin", value: apiLogin) {}
146-
add(key: "testPassword", value: apiPassword) {}
147-
}
148-
}
149-
def fw = new FileWriter('src/CallfireApiClient.IntegrationTests/App.config')
126+
def inFile = file('src/CallfireApiClient.IntegrationTests/App.config')
127+
def xml = new XmlSlurper().parse(inFile)
128+
129+
def apiLogin
130+
def apiPassword
131+
132+
try {
133+
apiLogin = "${testApiUsername}"
134+
apiPassword = "${testApiPassword}"
135+
println([ msbuild.projects['CallfireApiClient.IntegrationTests'].properties.TargetPath ])
136+
} catch(Exception ex) {
137+
println("Api Username and/or Password are empty, you can't run integrationTests task, set them with -PtestApiUsername/-PtestApiPassword options")
138+
apiLogin = "login"
139+
apiPassword = "password"
140+
}
141+
142+
if (apiLogin != 'null' && apiPassword != 'null') {
143+
xml.appSettings.add.findAll { it.@key == 'testLogin' || it.@key == 'testPassword' }.each { it.replaceNode {} }
144+
xml.appSettings.appendNode {
145+
add(key: "testLogin", value: apiLogin) {}
146+
add(key: "testPassword", value: apiPassword) {}
147+
}
148+
}
149+
def fw = new FileWriter('src/CallfireApiClient.IntegrationTests/App.config')
150150
XmlUtil.serialize(xml, fw)
151151
// have to close manually because on windows file remains locked
152152
fw.close()
153153
}
154154

155155
task msbuildForIntegrationTests (type: com.ullink.Msbuild) {
156-
solutionFile = 'callfire-api-client-csharp.sln'
157-
configuration = buildReleaseConfiguration
158-
projectName = 'CallfireApiClient'
156+
solutionFile = 'callfire-api-client-csharp.sln'
157+
configuration = buildReleaseConfiguration
158+
projectName = 'CallfireApiClient'
159159
}
160160
msbuildForIntegrationTests.dependsOn prepareTestData
161161

162162
task integrationTests (type: com.ullink.gradle.nunit.NUnit) {
163-
testAssemblies = [ msbuild.projects['CallfireApiClient.IntegrationTests'].properties.TargetPath ]
163+
testAssemblies = [ msbuild.projects['CallfireApiClient.IntegrationTests'].properties.TargetPath ]
164164
}
165165
integrationTests.dependsOn msbuildForIntegrationTests
166166

167167
task prepareReleaseData () << {
168-
try {
169-
println("${gitHubOwner}")
170-
println("${gitHubToken}")
171-
} catch(Exception ex) {
172-
println("GitHub Owner and/or Token are empty, you can't run github release task, set them with -PgitHubOwner/-PgitHubToken options")
173-
}
168+
try {
169+
println("${gitHubOwner}")
170+
println("${gitHubToken}")
171+
} catch(Exception ex) {
172+
println("GitHub Owner and/or Token are empty, you can't run github release task, set them with -PgitHubOwner/-PgitHubToken options")
173+
}
174174
}
175175
prepareReleaseData.dependsOn nugetPack
176176

177177
task configureCustomGitHubRelease () << {
178-
github {
179-
owner = "${gitHubOwner}"
180-
repo = 'callfire-api-client-csharp'
181-
token = "${gitHubToken}"
182-
tagName = project.version
183-
targetCommitish = 'master'
184-
name = project.version
185-
body = file('CurrentReleaseChanges.txt').text
186-
assets = [
187-
'build/dist/CallfireApiClient-' + project.version + '.zip',
188-
'build/dist/CallfireApiClient.' + project.version + '.nupkg'
189-
]
190-
}
178+
github {
179+
owner = "${gitHubOwner}"
180+
repo = 'callfire-api-client-csharp'
181+
token = "${gitHubToken}"
182+
tagName = project.version
183+
targetCommitish = 'master'
184+
name = project.version
185+
body = releaseDescription()
186+
assets = [
187+
'build/dist/CallfireApiClient-' + project.version + '.zip',
188+
'build/dist/CallfireApiClient.' + project.version + '.nupkg'
189+
]
190+
}
191191
}
192192
configureCustomGitHubRelease.dependsOn prepareReleaseData
193193
githubRelease.dependsOn configureCustomGitHubRelease
@@ -196,4 +196,12 @@ githubRelease.dependsOn configureCustomGitHubRelease
196196
nugetPush {
197197
apiKey = System.properties[ 'NUGET_API_KEY' ] ?: "key not set"
198198
nupkgFile = nugetPack.packageFile
199+
}
200+
201+
def releaseDescription() {
202+
String releaseNotes = file("Changelog.txt").text
203+
Integer start = releaseNotes.indexOf("Version") + 28;
204+
Integer end = releaseNotes.indexOf("Version", start);
205+
String currentReleaseChanges = releaseNotes.substring(start, end).trim()
206+
"$currentReleaseChanges"
199207
}

src/CallfireApiClient.IntegrationTests/Api/Campaigns/CallBroadcastsApiIntegrationTest.cs

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,26 @@ public void IvrsCrudOperations()
8080
[Test]
8181
public void StartStopArchiveCampaign()
8282
{
83-
CallBroadcast campaign = Client.CallBroadcastsApi.Get(8729046003);
83+
var broadcast = new CallBroadcast
84+
{
85+
Name = "call_broadcast",
86+
AnsweringMachineConfig = AnsweringMachineConfig.AM_AND_LIVE,
87+
Sounds = new CallBroadcastSounds
88+
{
89+
LiveSoundText = "Hello! This is a live answer text to speech recording",
90+
LiveSoundTextVoice = Voice.MALE1,
91+
MachineSoundText = "This is an answering machine text to speech recording",
92+
MachineSoundTextVoice = Voice.MALE1
93+
},
94+
Recipients = new List<Recipient>
95+
{
96+
new Recipient { PhoneNumber = "12132041238" },
97+
new Recipient { PhoneNumber = "14246525473" }
98+
}
99+
};
100+
var id = Client.CallBroadcastsApi.Create(broadcast, true);
101+
102+
CallBroadcast campaign = Client.CallBroadcastsApi.Get(id.Id);
84103
Console.WriteLine(campaign);
85104
Assert.NotNull(campaign);
86105
// start

0 commit comments

Comments
 (0)