Share
Amazon Chime SDK
What is Chime SDK?
Amazon Web Services (AWS) offers a plethora of different tools for developers and business owners to use that make things run more efficiently. Amazon Chime SDK is just one of these tools. Amazon Chime SDK is a set of real-time communications components that developers may utilize to add messaging, audio, video, and screen sharing capabilities to their web or mobile applications. The same communication infrastructure as Amazon Chime (an online meeting service). An example of this would be to add video chat to an education application so that students can ask in depth questions regarding an assignment, or any other topic they may be struggling with. Amazon Chime SDK removes some of the complexity from developing, particularly in terms of communication services.
We’re a Chime SDK Partner!
As an AWS Chime SDK Partner, AllCode is well-equipped to help its clients integrate Chime SDK into their applications, providing them with a reliable and scalable solution for real-time communication.
Why use AWS Chime SDK?
Chime SDK is a simple to use tool that has many advantages. Let’s take a look:
Speed Up your Builds
By utilizing Amazon Chime SDK’s pre-built communication building blocks in your application’s development, you are speeding up the process. You can use the AWS SDK server application to create sessions and manage attendees. Amazon Chime SDK works for iOS, Android, or Javascript. The bottom line is that Chime SDK’s pre-built communication building blocks streamlines the development process, allowing you to reach your goals faster.
Simplify
By using AWS Chime SDK, you are benefitting from AWS’ expertise. There is no need to manage infrastructure, communication, or networking components. Pay a single rate per minute per user, whether it is for video calls, audio, or screen sharing. AWS Chime SDK allows you to focus on your application and your users.
Extend your Applications
Integration with other AWS Services makes your application more functional. An example would be to enable phone users to call into media sessions by integrating with the Chime Voice Connector.
Image sourced from Amazon Web Services
Download list of all AWS Services PDF
Download our free PDF list of all AWS services. In this list, you will get all of the AWS services in a PDF file that contains descriptions and links on how to get started.
Ways to use AWS Chime SDK
Let’s check out some ways that Chime SDK can be utilized:
Sample Call Flow:
Image Sourced from Amazon Web Services
Steps shown in diagram:
-
The Amazon Chime SDK PSTN audio service receives a call to a phone number that is provisioned in a SIP rule.
-
The PSTN audio service fetches the associated SIP media application and invokes the associated Lambda function with a
NEW_INBOUND_CALL
event (LEG-A). -
The Lambda function returns a list of actions, including
PlayAudioAndGetDigits
, which instructs the PSTN Audio service to answer the call, play an audio file to the caller, and collect the DTMF digits entered by the caller. -
The PSTN Audio service answers the call, plays an audio prompt, and collects DTMF digits input by the caller.
-
The PSTN Audio service invokes the Lambda function with the DTMF digits input. The Lambda function uses the AWS SDK to create an Amazon Chime SDK meeting and a meeting attendee.
-
Once the AWS SDK returns a
MeetingId
andAttendeeId
, the Lambda function returns an action to join the call to the Amazon Chime SDK Meeting (LEG-B). -
A Real-time Transport Protocol (RTP) session is established between the caller from the public switched telephone network (PSTN) and the Amazon Chime Media service.
-
When the PSTN caller hangs up, the PSTN Audio service invokes the Lambda function with a HANGUP event, and the Lambda function deletes the attendee.
Building a PSTN call answering system with the Amazon Chime SDK, Amazon Lex and Amazon Polly:
Image sourced from Amazon Web Services
This diagram is a stellar example of integrating multiple Amazon Web Services together to create a more functional product.
The services utilized in this demo are:
- Amazon Chime SDK PSTN Audio service
- AWS Lambda
- Amazon Simple Cloud Storage (S3)
- Amazon Lex
- Amazon Polly
SIP Trunking Using AWS Voice Connecter:
Amazon Chime Voice Connector offers a pay-as-you-go SIP trunking service. This allows individuals to make or receive calls with their phone systems that are both secure and don’t cost a ton. Since the Amazon Chime Voice Connector is pay-as-you-go, it is an inexpensive alternative to other service provider SIP trunks as well as ISDN and PRIs. Users can enable both inbound and outbound calling. Since the Amazon Chime Voice Connector is on the AWS network, it delivers a high quality calling experience in any AWS region. The service supports any US phone number with low-cost calling to over 115 countries. Users pay a monthly charge, as well as for minutes per call. There are no upfront fees, no concurrent call path charges, no commitments, and no contracts required. Amazon Chime Voice Connector uses your current internet connection or Amazon Direct Connect without requiring dedicated fixed-bandwidth data circuits.
Here are some more features of the Amazon Chime Voice Connector:
Elastic Scaling
Pay-as-you-go pricing
Quality and Reliability
Security and Authentication
Cost-effective Network Access
Phone Number Management and Porting
Setup
Call Health Monitoring
T.38 Fax Support
Third-Party Emergency Services Support
AWS Service Business Continuity Plan
Thousands of businesses lose an unprecedented amount of money every quarter - don’t let yours! Protect your AWS services with this FREE AWS Business Continuity Plan. Learn More
Call routing with Amazon Chime SDK:
Image sourced from Amazon Web Services
How the set up works:
- Answers the call and plays a welcome prompt
- Uses the
From:
parameter (Caller ID) in theNEW_INBOUND_CALL
payload to fetch the associated account ID from a DynamoDB table. - If the Caller ID has an associated account, it plays a prompt and requests the caller to key in ‘1’ for sales or ‘2’ for support.
- If the Caller ID has no associated account ID, the caller will be asked to enter their account ID using their keypad.
- The entered account ID will be stored in DynamoDB.
- The DynamoDB update then triggers the createWav Lambda function to create a wav file of the account ID using the Amazon Polly text to speech service. The resulting .wav file is stored in an S3 bucket that will be accessed by the emulatorSMA Lambda function.
- The incoming call is then transferred to the phone number corresponding to the caller’s selection (‘1’ – salesPhoneNumber or ‘2’ – supportPhoneNumber. The Calling Number of the call to the emulator is the original calling number.
When the transferred call arrives on a phone number associated with the emulatorSMA, it will perform the following steps:
- Using the
From:
parameter (Caller ID) in theNEW_INBOUND_CALL
payload, fetch the associated account ID. - Play the account number back to the caller from the S3 bucket and hang-up.
Conclusion
AWS Chime SDK is a simple to use, but complex in design that developers across the world can utilize. Chime SDK makes building communication platforms within applications a breeze, and the fact that it is built on AWS, makes it reliable and sleek. While we couldn’t cover everything that AWS Chime SDK has to offer, we went over some of the basics as to why it should be a tool in your toolbox as a developer.
Text AWS to (415) 890-6431
Text us and join the 700+ developers that have chosen to opt-in to receive the latest AWS insights directly to their phone. Don’t worry, we’ll only text you 1-2 times a month and won’t send you any promotional campaigns - just great content!
Related Articles
Power BI Professional: Transforming Data into Actionable Insights
One tool that can help you turn data from several sources into interactive dashboards and BI reports is Power BI, which is a Business Intelligence and Data Visualization tool. The software provides a number of connectors and services. Desktop, service-based (SaaS), and mobile Power BI apps are the different versions of Power BI. They have several applications where they are utilized.
ETL Developer Tools and Technologies You Need to Know
ETL tools play a vital role in data management by gathering data from multiple sources such as databases, cloud storage, and third-party applications. These tools extract raw data in various formats, transform it by cleaning, removing duplicates, and standardizing the structure, ensuring quality and consistency. After transformation, the data is then aggregated and loaded into centralized data warehouses or data lakes for analysis and reporting, enabling more efficient and accurate decision-making.
DevOps Rules to Live By
Here are some essential best practices to live by.