
We take blogging very seriously at Twilio. To help us understand what content works well and what doesn’t on our blog, we have a dashboard that combines the metadata that we maintain for each article such as author, team, product, publication date, etc., with traffic information from Google Analytics. Users can interactively request charts and tables while filtering and grouping the data in many different ways.
I chose SQLite for the database that supports this dashboard, which in early 2021 when I built this system, seemed like a perfect choice for what I thought would be a small, niche application that my teammates and I can use to improve our blogging. But almost a year and a half later, this application tracks daily traffic for close to 8000 articles across the Twilio and SendGrid blogs, with about 6.5 million individual daily traffic records, and with a user base that grew …

Twilio Verify is an easy to use service for user verification. This service now includes support for WhatsApp one-time passcodes (in public beta, as of June 2022). In this tutorial you’ll learn how to implement a WhatsApp user verification flow in a JavaScript application, using Node.js and Express.
Requirements
To work on this tutorial you will need the following items:
- Node.js installed on your machine.
- A Twilio account. If you are new to Twilio click here to create a free account now and receive $10 credit when you upgrade to a paid account. You can review the features and limitations of a free Twilio account.
- An active WhatsApp account, to test the project.
Create a Twilio Verify service
To use Twilio Verify in an application, a Verify service must be created first. Open the Twilio Console in your web browser, type verify in the navigation bar’s search box, …

Twilio Verify is an easy-to-use service for user verification through numeric codes. This service now includes support for WhatsApp (in public beta, as of June 2022). In this tutorial, you’ll learn how to implement a WhatsApp user verification flow in a Python and Flask application.
Requirements
To work on this tutorial you will need the following items:
- Python 3.6 or newer. If your operating system does not provide a Python interpreter, you can go to python.org to download an installer.
- A Twilio account. If you are new to Twilio, click here to create a free account now and receive $10 credit when you upgrade to a paid account. You can review the features and limitations of a free Twilio account.
- An active WhatsApp account, to test the project.
Create a Twilio Verify service
To use Twilio Verify in an application, a Verify service must be created first. Open the …

A common need in video calling applications is to allow a user to play a media file for the other participants in the call. This can enable, for example, a teacher or doctor to share a recording with the call attendees.
In this article I will show you how a participant in a Twilio Video call can share video and audio content in formats such as mp4 or webm.
The MediaStream API
The JavaScript version of the Twilio Video SDK uses existing APIs in the browser to obtain access to the camera and microphone. More specifically, it uses the MediaDevices.getUserMedia() function to access MediaStream objects for these devices, which expose the raw video and audio tracks that are then published to the video call.
But the MediaStream APIs cover much more than webcams and microphones and can be used to obtain MediaStream
objects from other sources. For example, the …

A large number of online tutorials on this blog and elsewhere recommend the use of Ngrok as a quick way to temporarily make a web application running locally on your computer available on the Internet. This tool is an extremely popular solution that enables developers to test their webhooks and other web based applications during development.
Have you tried following a tutorial that uses Ngrok and could not make it work? The reason is likely that Ngrok has recently added some restrictions to its service, making the instructions that you find in a lot of tutorials incorrect for current versions of the tool. This article explains what the changes are, and how to avoid hitting the limitations this service has put in place.
What is Ngrok?
Ngrok is a development tool that you can use to expose a server running locally on a computer, possibly even behind a firewall, to …

Ein Chatbot ist eine Softwareanwendung, die ein Gespräch mit einem menschlichen Nutzer in geschriebener oder gesprochener Sprache führen kann. Der Grad der „Intelligenz“ von Chatbots kann sehr unterschiedlich sein. Während einige Chatbots ein eher einfaches Sprachverständnis zeigen, setzen andere hochkomplexe Algorithmen künstlicher Intelligenz (KI) und maschinelles Lernen (ML) ein, um ein nahezu menschliches Konversationsniveau zu erreichen.
In diesem Tutorial zeige ich Ihnen, wie einfach Sie einen Chatbot für WhatsApp mit der Twilio-API für WhatsApp und dem Flask-Framework für Python erstellen können. Unten sehen Sie ein Beispiel für eine Interaktion, die ich mit diesem Chatbot hatte:
Anforderungen für das Tutorial zum WhatsApp-Chatbot
Für dieses Tutorial benötigen Sie Folgendes:
- Python 3.6 oder höher. Wenn Ihr Betriebssystem keinen Python-Interpreter bereitstellt, können Sie unter python.org einen Installer herunterladen.
- Flask. Wir erstellen eine Webanwendung, die damit auf eingehende WhatsApp-Nachrichten reagiert.
- ngrok. Dieses praktische Dienstprogramm verwenden wir, um die Flask-Anwendung auf Ihrem System mit …

State variables are one of the most important building blocks in front end applications developed with the React library. When a state variable is updated, React automatically re-renders any application components that depend on it, ensuring that the application always displays updated information to the user.
The automatic state update mechanisms in React are fantastic, but they are limited to a single instance of the application. Sometimes, however, an application needs state variables that are automatically synchronized across all running instances of the application. In this tutorial you are going to learn how to create a custom React hook that implements synchronized state variables using Twilio Sync as a cloud storage back end.
Requirements
To work on this tutorial you will need the following items:
- A Twilio account. If you are new to Twilio click here to create a free account now and receive $10 credit when you upgrade to …

Serverless platforms are ideal for the deployment of webhooks such as those used by Twilio services, as they provide flexibility and scalability without the complications involved in hosting on your own infrastructure.
In this tutorial you are going to learn how to create a Twilio SMS webhook written in Python using AWS Lambda, with its brand new function URLs feature.
Requirements
To work on this tutorial you will need the following items:
- A Python 3 interpreter compatible with AWS Lambda (as of April 2022, Python 3.6, 3.7, 3.8 or 3.9). If your operating system does not provide a Python interpreter, you can go to python.org to download an installer.
- Node.js installed on your computer. You can download a Node.js installer from the Node.js website.
- A Twilio account. If you are new to Twilio click here to create a free account now and receive $10 credit when you upgrade …

In this tutorial, you are going to learn how to implement live transcription of phone calls to text. The phone calls will be routed through a Twilio phone number, and we will use the Media Streams API to stream the incoming audio to a small WebSocket server built using Python. Once in your server, the audio stream will be passed to Vosk, a lightweight open-source speech recognition engine that runs locally on your computer, with support for many languages.
Requirements
To work on this tutorial, you will need:
- Python 3.6 or newer. If your operating system does not provide a Python interpreter, you can go to python.org to download an installer.
- A Twilio account. If you are new to Twilio, click here to create a free account now and receive $10 credit when you upgrade to a paid account. You can review the features and limitations of …

A common need in video calling applications is to allow a user to play an audio file for the other participants. This could be used to add background music to a call, to share a recorded conversation, or just to make calls more fun with sound effects or a rickroll.
In this short tutorial you will learn how a participant in a Twilio Video call can publish a secondary audio track and play back an audio file on it.
Brief introduction to the MediaStream API
The JavaScript Twilio Video library uses existing APIs in the browser to obtain access to the camera and microphone. More specifically, it uses the MediaDevices.getUserMedia() function to access MediaStream objects for these devices, which expose the raw video and audio tracks that are then published to the video call.
Interestingly, there are other ways to obtain MediaStream
objects, beyond the camera and the microphone. …