Skip to content

amazon-connect/amazon-connect-in-app-calling-examples

Amazon Connect In-App Calling Examples

Amazon Connect’s out of the box communication widget and agent workspace allow you to add in-app, web, and video calling capabilities to your website or mobile application with a few lines of code. This repository contains examples of: 1) how to integrate in-app calling into iOS and Android applications, 2) an example backend that works with these iOS and Android mobile samples, and 3) while web calling works out of the box with custom CCPs for voice call, we show to integrate video calling into an custom CCP.

New to Amazon Connect and looking to onboard with in-app calling capabilities? Refer to “Set up in-app, web, and video calling capabilities”.

Examples

At the moment, there are 4 the examples in this repository:

  1. iOS Customer Integration Example This example demonstrates how to interact with Amazon Connect api for placing an inbound in-app, web or video call to a contact, and establishing the underlying audio/video call connection between customer and agent by utilizing Amazon Chime SDK for iOS.

  2. Android Customer Integration Example This example demonstrates how to interact with Amazon Connect api for placing an inbound in-app, web or video call to a contact, and establishing the underlying audio/video call connection between customer and agent by utilizing Amazon Chime SDK for Android.

  3. CCP Web Calling Example This example demonstrates how to integrate video calling into your custom agent desktop by leveraging the capabilities of Amazon Connect Streams and Amazon Connect SDK for Javascript. It utilizes the pre-built CCP UI offered by amazon-connect-streams as an engine, handling the agent and contact events, and integrating the WebRTC video calling using amazon-chime-sdk-js.

  4. StartWebRTCContact Example This example demonstrates how to invoke Amazon Connect StartWebRTCConnect API from AWS Lambda, an Amazon API Gateway is also to integrate with the Lambda, in order to serve as the backend for the iOS/Android customer integration examples, for placing inbound in-app, web or video calls to a contact.

Use Cases

Below are the common use cases can be referenced using those examples:

  1. I want to enable in-app calling in my mobile applications, so that users can reach out to our customer support while staying in the app, and the app is able to send needed information(such as user info or current page) to customer support along the call.

The iOS/Android integration examples and StartWebRTCContact example are needed to achieve this use case: iOS/Android examples demonstrates the mobile application part including invoke StartWebRTCContact api(through StartWebRTC example), sending contact attributes, start audio/video call session, as well as sending DTMF; StartWebRTCContact example acts as a proxy API, relaying the StartWebRTCContact request from mobile applications to Amazon Connect.

  1. I have my web application for agents, I would like to enable video capablity on my agent application so that agents can send/receive videos while supporting customers.

CCP Web Calling Example demonstrates how this can be achieved in 2 ways: embed the pre-built CPP UI or create custom UI based on amazon-connect-streams.

Setup

Those examples run on various platforms, please follow the README under each example for detail setup instructions.

Resources

Here are a few resources to help you implement in-app, web or video calls in your applications:

Troubleshooting and Support

Review the resources given in the README files for guidance on how to setup those examples. Additionally, search our issues database to see if your issue is already addressed. If not please cut us an issue using the provided templates.

If you have more questions, or require support for your business, you can reach out to AWS Customer support. You can review our support plans here.

License Summary

This sample code is made available under the MIT-0 license. See the LICENSE file.