Skip to content

Commit 4851e29

Browse files
Calls Module added
1 parent d923255 commit 4851e29

File tree

26 files changed

+114
-519
lines changed

26 files changed

+114
-519
lines changed

restcomm-connect.java.sdk/src/main/java/org/restcomm/connect/java/sdk/Calls/Call.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -54,11 +54,6 @@ public CallModifier modifyLiveCall()
5454
return new CallModifier(BASE_URL+this.getSid());
5555
}
5656

57-
public static CallsList getCallsList()
58-
{
59-
return new CallsList(BASE_URL);
60-
}
61-
6257

6358
private String to;
6459

restcomm-connect.java.sdk/src/main/java/org/restcomm/connect/java/sdk/Calls/CallsList.java

Lines changed: 28 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -10,52 +10,60 @@
1010
import java.lang.reflect.Type;
1111
import com.google.gson.reflect.TypeToken;
1212
import com.google.gson.Gson;
13+
import com.google.gson.annotations.SerializedName;
14+
1315
import java.util.ArrayList;
1416
import java.util.List;
1517
import org.restcomm.connect.java.sdk.ListUtil;
1618
import org.apache.http.ParseException;
17-
19+
import com.google.gson.annotations.SerializedName;
1820

1921
public class CallsList extends ListUtil {
2022

21-
private static String BASE_URL;// = Constants.COMMON_URL+"Accounts/"+Credentials.getAuthID()+"/Calls";
22-
private Request request;
23-
private List<Call> List;
23+
private static String BASE_URL = Restcomm.COMMON_URL+"Accounts/"+Restcomm.getAuthID()+"/Calls.json/";
24+
private static Request request;
25+
26+
static public void SubAccountAccess(String sid) //To access the Applications connected to SubAccounts
27+
{
28+
BASE_URL = Restcomm.COMMON_URL+"Accounts/"+sid+"/Calls.json/";
29+
}
30+
private List<Call> calls;
31+
2432

2533
public Call get(int index)
2634
{
27-
return List.get(index);
35+
return calls.get(index);
2836
}
2937
public int size()
3038
{
31-
return List.size();
39+
return calls.size();
3240
}
33-
private void setList (List<Call> List)
41+
private void setList (List<Call> Calls)
3442
{
35-
this.List = List;
43+
this.calls = Calls;
3644
}
37-
public CallsList(final String BASE_URL)
45+
public static CallsList getCallsList()
3846
{
39-
this.BASE_URL = BASE_URL;
40-
this.request = new Request(HttpMethod.GET,BASE_URL);
41-
42-
Restcomm.sendRequest(new Request(HttpMethod.GET,BASE_URL));
43-
Type ListType = new TypeToken< ArrayList<Call> >(){}.getType();
47+
request = new Request(HttpMethod.GET,BASE_URL);
48+
Restcomm.sendRequest(request);
4449
Gson gson = new Gson();
45-
List = gson.fromJson(Restcomm.getJSONResponse(),ListType);
50+
//System.out.println(Restcomm.getJSONResponse());
51+
request = new Request(HttpMethod.GET,BASE_URL);
52+
return gson.fromJson(Restcomm.getJSONResponse(),CallsList.class);
4653
}
54+
4755
public CallsList addFilterParam(String param,String value) throws Exception
4856
{
4957
request.addGetParameters(param,value);
5058
return this;
5159
}
52-
public void Filter()
60+
public CallsList Filter()
5361
{
54-
55-
Restcomm.sendRequest(this.request);
56-
Type ListType = new TypeToken< ArrayList<Call> >(){}.getType();
62+
Restcomm.sendRequest(this.request);
5763
Gson gson = new Gson();
58-
List = gson.fromJson(Restcomm.getJSONResponse(),ListType);
64+
request = new Request(HttpMethod.GET,BASE_URL);
65+
//System.out.println(Restcomm.getJSONResponse());
66+
return gson.fromJson(Restcomm.getJSONResponse(),CallsList.class);
5967
}
6068

6169
}

restcomm-connect.java.sdk/src/test/java/org/restcomm/connect/java/sdk/Calls/CallTest.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,5 +110,23 @@ public void testModifyLiveCall() throws Exception{
110110
assertEquals("COMPLETED",a.getStatus());
111111
}
112112
/* Need to add test for CallsList*/
113+
@Test
114+
public void testGetCallList() throws Exception{
115+
WireMock.stubFor(WireMock.get(WireMock.urlPathMatching("/Accounts/"+Restcomm.getAuthID()+"/Calls.json/"))
116+
.withBasicAuth(Restcomm.getAuthID(),Restcomm.getPassword())
117+
.willReturn(WireMock.aResponse()
118+
.withStatus(200)
119+
.withHeader("Content-Type", "application/json")
120+
.withBody(readFile(path+"getCallList.txt"))));
121+
122+
CallsList a = CallsList.getCallsList();
123+
124+
Call b = a.get(0);
113125

126+
127+
WireMock.verify(WireMock.getRequestedFor(WireMock.urlEqualTo("/Accounts/"+Restcomm.getAuthID()+"/Calls.json/")));
128+
assertEquals(200,Restcomm.getStatusCode());
129+
assertNotNull(a);
130+
assertEquals("mithileshkarnati",b.getTo());
131+
}
114132
}
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
{
2+
"page": 0,
3+
"num_pages": 182,
4+
"page_size": 1,
5+
"total": 182,
6+
"start": "0",
7+
"end": "0",
8+
"uri": "/2012-04-24/Accounts/AC13b4372c92ed5c07d951cf842e2664ff/Calls.json",
9+
"first_page_uri": "/2012-04-24/Accounts/AC13b4372c92ed5c07d951cf842e2664ff/Calls.json?Page\u003d0\u0026PageSize\u003d1",
10+
"previous_page_uri": "null",
11+
"next_page_uri": "/2012-04-24/Accounts/AC13b4372c92ed5c07d951cf842e2664ff/Calls.json?Page\u003d1\u0026PageSize\u003d1\u0026AfterSid\u003dCA014fffb9a47b421f934d49e0afd490a3",
12+
"last_page_uri": "/2012-04-24/Accounts/AC13b4372c92ed5c07d951cf842e2664ff/Calls.json?Page\u003d182\u0026PageSize\u003d1",
13+
"calls": [
14+
{
15+
"sid": "CA014fffb9a47b421f934d49e0afd490a3",
16+
"InstanceId": "ID8deb35fc5121429fa96635aebe3976d2",
17+
"date_created": "Wed, 17 May 2017 11:07:39 +0000",
18+
"date_updated": "Wed, 17 May 2017 11:07:40 +0000",
19+
"account_sid": "AC13b4372c92ed5c07d951cf842e2664ff",
20+
"to": "mithileshkarnati",
21+
"from": "paras",
22+
"status": "FAILED",
23+
"price_unit": "USD",
24+
"direction": "Client-To-Client",
25+
"api_version": "2012-04-24",
26+
"caller_name": "paras",
27+
"uri": "/2012-04-24/Accounts/AC13b4372c92ed5c07d951cf842e2664ff/Calls/CLf14ad69d87034f338630b2a63b4a4d5b.json"
28+
}
29+
]
30+
}

restcomm-connect.java.sdk/target/classes/META-INF/MANIFEST.MF

Lines changed: 0 additions & 5 deletions
This file was deleted.

restcomm-connect.java.sdk/target/classes/META-INF/maven/org.restcomm/restcomm-connect.java.sdk/pom.properties

Lines changed: 0 additions & 7 deletions
This file was deleted.

restcomm-connect.java.sdk/target/classes/META-INF/maven/org.restcomm/restcomm-connect.java.sdk/pom.xml

Lines changed: 0 additions & 77 deletions
This file was deleted.
Binary file not shown.
Binary file not shown.
Binary file not shown.

0 commit comments

Comments
 (0)