How does Callchimp.AI bring the magic of AI to a humble phone call?
Photo by Pavan Trikutam on Unsplash
In today's rapidly evolving digital landscape, the synergy between phone calls and the internet forms the cornerstone of seamless communication. While internet usage continues to surge, traditional phone calls wield enduring power in connecting individuals and businesses worldwide. At callchimp.ai, we recognize the intrinsic value of phone calls and strive to leverage their potential in today's interconnected world.
Despite the exponential growth of internet users, which reached 63% globally in 2021 according to data, the ubiquity of cell phone subscriptions surpassed the global population as early as 2016. This statistic underscores the enduring relevance and accessibility of phone calls, making them a potent tool for communication across diverse demographics and regions.
Telephony and the Internet
Telephony, with its roots dating back over 150 years, represents a testament to humanity's quest for connectivity. From Alexander Graham Bell's historic first call to the advent of modern 4G VoLTE technology, telephony has evolved significantly. However, its essence remains unchanged: facilitating instantaneous connections through voice communication.
Similarly, the internet has revolutionized how we access information and interact globally. With a simple click, users can access a wealth of knowledge, connect with peers, and conduct business transactions across continents. The internet's transformative impact on communication cannot be overstated, offering unparalleled convenience and connectivity.
From a business perspective, leveraging telephony and internet technologies involves navigating complex infrastructure and strategic investments. Companies must customize setups to accommodate multiple calls, manage call queues efficiently, and maintain telephony hardware to ensure uninterrupted operations. These endeavours entail substantial financial commitments and resource allocations, posing significant challenges for businesses of all sizes.
We are going to explain how callchimp.ai handles all of these complex operations and do more in this article.
Tech Stack of Callchimp.AI
Asterisk
Asterisk, our foundational technology, serves as the linchpin of our communication infrastructure. As an open-source software, Asterisk enables the development of diverse communication applications, ranging from VoIP gateways to conference servers. Its flexibility and scalability make it an ideal choice for powering Callchimp's telephony solutions.
AWS
In our pursuit of reliability and scalability, we rely on Amazon Web Services (AWS) for hosting our services. Leveraging a suite of AWS offerings, including EC2 instances, RDS databases, Route53 for DNS management, Lambda for serverless functions, and S3 for file storage, we ensure seamless operation and robust performance for our users.
Django
Django, a high-level Python framework renowned for its simplicity and versatility, forms the backbone of our backend infrastructure. With features like URL routing, built-in database support, and user authentication, Django accelerates web application development while maintaining code quality and scalability. The integration of the Django REST framework further enhances our backend capabilities, enabling the creation of robust REST APIs to power Callchimp's functionality.
Spring Boot
Spring Boot is an open-source JAVA-based framework to build rock-solid apps. While it is mostly meant to build web apps, Spring Boot can be used to make CLIs, batch jobs, serverless functions, and microservices in the Cloud.
Every call from callchimp.ai generates a lot of events per call like onChannelHold
(when a call is on hold), onChannelCreated
(when a call is started), onChannelDestroyed
(when a call is hung up) etc. By leveraging Spring Boot, we handle these events involved in call handling, ensuring reliability and performance across diverse use cases.
PostgreSQL
PostgreSQL, renowned for its reliability, robustness, and extensive feature set, serves as our primary relational database management system (RDBMS). With support for complex queries, transactional integrity, and data integrity constraints, PostgreSQL empowers Callchimp's data management capabilities, facilitating efficient storage and retrieval of mission-critical information.
RabbitMQ
RabbitMQ is an open-source message-brokering software that implements the Advanced Message Queuing Protocol (AMQP). It serves as a message broker, facilitating communication between different components of distributed systems. It is used to communicate between multiple systems of Callchimp.
Celery
Celery is an open-source distributed task queue framework for Python, which is used to execute asynchronous tasks in web applications. It allows you to offload long-running tasks such as sending emails, processing data, or interacting with external APIs to be executed asynchronously in the background, without blocking the main application's execution flow.
In Callchimp call queues, processing call list uploads, recordings, webhook processing, and routine maintenance jobs are handled by Celery.
Next.js
Our frontend, built with Next.js, embodies the principles of modern web development, offering server-rendered React applications with enhanced performance and user experience. With built-in features for server-side rendering, static site generation, and automatic code splitting, Next.js empowers Callchimp's frontend development efforts, enabling seamless interaction and intuitive user interfaces.
SIP Trunks
A Session Initiation Protocol (SIP) trunk is a virtual connection that enables the transmission of voice, video, and other multimedia sessions over the Internet between an organization's private branch exchange (PBX) and an Internet Telephony Service Provider (ITSP) or a telecommunications carrier.
So if we consider the Callchimp server as an IP-based PBX, it needs to connect to one or more SIP Trunk providers to initiate outbound calls and accept inbound calls. Callchimp already has integrations with Twilio for international calls. To do calls in India, Callchimp has integrations with Jio and Tata Teleservices.
Call flow through callchimp
When a call is initiated from Callchimp frontend / CSV upload / REST API, a new call entry is created in the PostgreSQL database.
A scheduled cron job picks up the call entry and communicates with Asterisk to make the call happen.
Asterisk is pre-configured with multiple SIP Trunks. Based on the caller ID assigned to the call campaign, the call is routed to the configured SIP Trunk.
Once the call is connected and picked up the call events start coming to our Spring Boot call event handler.
The call is then bridged to our transcription server and the audio is converted to text.
Reply to the converted text is then generated by Callchimp LLM optimized with business-specific requirements.
The text reply is then converted to the voice of your choice using our custom text-to-speech model and played back to the call.
Simplifying Call Operations with Callchimp
At Callchimp, we are committed to simplifying call centre operations and empowering businesses to connect with their audience effortlessly. Our platform offers AI-first human-like agents, pre-recorded blast marketing campaigns, and transactional campaigns with dynamic content, catering to diverse communication needs.
From call queues and transcription services to detailed campaign reporting, Callchimp streamlines the complexities of call centre management, offering intuitive solutions tailored to the unique requirements of our users. Whether it's engaging customers with personalized messages or analyzing campaign performance, Callchimp equips businesses with the tools they need to thrive in today's dynamic marketplace.
Join Callchimp Today!
Experience the power of AI-driven calling with Callchimp. Sign up today at callchimp.ai/signup and unlock 100 minutes of blast calls, 30 minutes of AI calls, and access to a sandbox environment for dialling verified numbers. Discover the future of communication with Callchimp – where innovation meets simplicity, and every call is an opportunity!