Skip to content

Commit 698b4f8

Browse files
author
Karthikeyan
authored
Support Amazon Connect (#1072)
* Support Amazon Connect * Support Amazon Connect
1 parent 05c393a commit 698b4f8

File tree

195 files changed

+33262
-97
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

195 files changed

+33262
-97
lines changed

.circleci/config.yml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1258,6 +1258,16 @@ workflows:
12581258
only:
12591259
- master
12601260
- develop
1261+
- integrationtest:
1262+
name: connect
1263+
testmodule: aws-android-sdk-connect-test
1264+
requires:
1265+
- pre_integrationtest
1266+
filters:
1267+
branches:
1268+
only:
1269+
- master
1270+
- develop
12611271
- integrationtest:
12621272
name: ddb-mapper
12631273
testmodule: aws-android-sdk-ddb-mapper-test
@@ -1503,6 +1513,7 @@ workflows:
15031513
# - kinesisvideo-archivedmedia
15041514
# - kinesisvideo
15051515
- mobile-client
1516+
- connect
15061517
- textract
15071518
- translate
15081519
- transcribe
@@ -1631,6 +1642,16 @@ workflows:
16311642
ignore: /.*/
16321643
tags:
16331644
only: /^(release|beta)_v[0-9]+.[0-9]+.[0-9]+$/
1645+
- integrationtest:
1646+
name: connect
1647+
testmodule: aws-android-sdk-connect-test
1648+
requires:
1649+
- pre_integrationtest
1650+
filters:
1651+
branches:
1652+
ignore: /.*/
1653+
tags:
1654+
only: /^(release|beta)_v[0-9]+.[0-9]+.[0-9]+$/
16341655
- integrationtest:
16351656
name: ddb-mapper
16361657
testmodule: aws-android-sdk-ddb-mapper-test
@@ -1877,6 +1898,7 @@ workflows:
18771898
# - kinesisvideo-archivedmedia
18781899
# - kinesisvideo
18791900
- mobile-client
1901+
- connect
18801902
- textract
18811903
- translate
18821904
- transcribe

.idea/modules.xml

Lines changed: 3 additions & 69 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@
22

33
## [Release 2.14.0](https://github.com/aws/aws-sdk-android/releases/tag/release_v2.14.0)
44

5+
### New Features
6+
7+
* **Amazon Connect**
8+
* Amazon Connect is a self-service, cloud-based contact center service that makes it easy for any business to deliver better customer service at lower cost. Amazon Connect is based on the same contact center technology used by Amazon customer service associates around the world to power millions of customer conversations. The self-service graphical interface in Amazon Connect makes it easy for non-technical users to design contact flows, manage agents, and track performance metrics – no specialized skills required. There are no up-front payments or long-term commitments and no infrastructure to manage with Amazon Connect; customers pay by the minute for Amazon Connect usage plus any associated telephony services. See [Amazon Connect Documentation](https://aws.amazon.com/connect/) for more details.
9+
510
### Misc. Updates
611

712
- Model updates for the following services

CircleciScripts/ReleaseConfiguration.json

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
// "aws-android-sdk-cognitoauth",
1919
"aws-android-sdk-cognitoidentityprovider",
2020
"aws-android-sdk-comprehend",
21+
"aws-android-sdk-connect",
2122
"aws-android-sdk-core",
2223
"aws-android-sdk-ddb",
2324
"aws-android-sdk-ddb-document",
@@ -215,6 +216,12 @@
215216
"${service.prefix}.comprehend*"
216217
]
217218
},
219+
{
220+
title : "Amazon Connect" ,
221+
packages : [
222+
"${service.prefix}.connect*"
223+
]
224+
},
218225
{
219226
title : "Amazon EC2" ,
220227
packages : [
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/build
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
apply plugin: 'com.android.library'
2+
3+
android {
4+
compileSdkVersion 27
5+
6+
defaultConfig {
7+
minSdkVersion 15
8+
targetSdkVersion 27
9+
versionCode 1
10+
versionName "1.0"
11+
12+
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
13+
}
14+
15+
buildTypes {
16+
release {
17+
minifyEnabled false
18+
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
19+
}
20+
}
21+
}
22+
23+
dependencies {
24+
implementation fileTree(dir: 'libs', include: ['*.jar'])
25+
api (project(":aws-android-sdk-connect")) {
26+
exclude group: "com.google.android", module: "android"
27+
}
28+
androidTestImplementation project(":aws-android-sdk-testutils")
29+
implementation 'com.android.support:appcompat-v7:27.0.0'
30+
testImplementation 'junit:junit:4.12'
31+
androidTestImplementation 'com.android.support.test:runner:1.0.2'
32+
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
33+
}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Add project specific ProGuard rules here.
2+
# You can control the set of applied configuration files using the
3+
# proguardFiles setting in build.gradle.
4+
#
5+
# For more details, see
6+
# http://developer.android.com/guide/developing/tools/proguard.html
7+
8+
# If your project uses WebView with JS, uncomment the following
9+
# and specify the fully qualified class name to the JavaScript interface
10+
# class:
11+
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
12+
# public *;
13+
#}
14+
15+
# Uncomment this to preserve the line number information for
16+
# debugging stack traces.
17+
#-keepattributes SourceFile,LineNumberTable
18+
19+
# If you keep the line number information, uncomment this to
20+
# hide the original source file name.
21+
#-renamesourcefileattribute SourceFile
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
/*
2+
* Copyright 2010-2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License").
5+
* You may not use this file except in compliance with the License.
6+
* A copy of the License is located at
7+
*
8+
* http://aws.amazon.com/apache2.0
9+
*
10+
* or in the "license" file accompanying this file. This file is distributed
11+
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12+
* express or implied. See the License for the specific language governing
13+
* permissions and limitations under the License.
14+
*/
15+
16+
package com.amazonaws.servces.connect;
17+
18+
import android.content.Context;
19+
import android.support.test.InstrumentationRegistry;
20+
import android.support.test.runner.AndroidJUnit4;
21+
import android.util.Log;
22+
23+
import com.amazonaws.services.connect.AmazonConnectClient;
24+
import com.amazonaws.services.connect.model.ListUsersRequest;
25+
import com.amazonaws.services.connect.model.ListUsersResult;
26+
import com.amazonaws.services.connect.model.UserSummary;
27+
import com.amazonaws.testutils.AWSTestBase;
28+
29+
import org.junit.Before;
30+
import org.junit.Test;
31+
import org.junit.runner.RunWith;
32+
33+
import java.io.IOException;
34+
import java.util.ArrayList;
35+
import java.util.List;
36+
37+
import static org.junit.Assert.*;
38+
39+
/**
40+
* Instrumented test, which will execute on an Android device.
41+
*
42+
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
43+
*/
44+
@RunWith(AndroidJUnit4.class)
45+
public class ConnectInstrumentedTest extends AWSTestBase {
46+
47+
private AmazonConnectClient connectClient;
48+
private String instanceId;
49+
private String adminUserName;
50+
51+
private String TAG = ConnectInstrumentedTest.class.getSimpleName();
52+
53+
@Before
54+
public void setUp() throws Exception {
55+
setUpCredentials();
56+
connectClient = new AmazonConnectClient(credentials);
57+
58+
instanceId = getPackageConfigure("connect").getString("instanceId");
59+
adminUserName = getPackageConfigure("connect").getString("adminUserName");
60+
}
61+
62+
@Test
63+
public void testListUsers() {
64+
ListUsersRequest listUsersRequest = new ListUsersRequest();
65+
listUsersRequest.setInstanceId(instanceId);
66+
ListUsersResult listUsersResult = connectClient.listUsers(listUsersRequest);
67+
68+
assert listUsersResult.getUserSummaryList().size() > 0;
69+
List<String> userNames = new ArrayList<>();
70+
for (UserSummary userSummary : listUsersResult.getUserSummaryList()) {
71+
userNames.add(userSummary.getUsername());
72+
}
73+
74+
assertTrue("UserSummaryList should have admin username.", userNames.contains(adminUserName));
75+
}
76+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
2+
package="com.amazonaws.servces.connect">
3+
<uses-permission android:name="android.permission.INTERNET"/>
4+
</manifest>
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
<resources>
2+
<string name="app_name">connectTests</string>
3+
<string name="package_name">connect</string>
4+
</resources>

0 commit comments

Comments
 (0)