Home / Companies / Twilio / Blog / March 2021

March 2021 Summaries

61 posts from Twilio

Filter
Month: Year:
Post Summaries Back to Blog
To build a WhatsApp bot that sends basic stock quote information when a user sends a valid ticker symbol, you'll use the Finnhub.io Stock API and Twilio's Programmable Messaging service. You'll need to set up a Java project using Spring Initializr, create a controller to handle messaging, and start the server with ngrok. Then, you'll create a service class to make requests to the Finnhub API and map the response to a Price object. Finally, you'll format the message nicely in the Controller and test it out by sending a WhatsApp message with a valid stock symbol.
Mar 31, 2021 1,768 words in the original blog post.
At Twilio, Women's History Month and International Women's Day are celebrated with various events and activities that promote women's empowerment, equality, and inclusion. The company recognizes the importance of acknowledging the challenges faced by women throughout history and encourages individuals to challenge gender bias and inequalities. Through fireside chats, virtual games, podcasts, and employee recognition programs, Twilio shines a light on its own women leaders and empowers them to lead by example. The company's efforts aim to create an inclusive environment where all employees feel like they belong, and it continues to promote women's rights and human rights through storytelling, volunteering, and community engagement initiatives.
Mar 31, 2021 1,042 words in the original blog post.
Twilio Studio is a stateful visual workflow builder that allows users to build interactive voice response (IVR) systems with ease, handling incoming calls and storing patient data in a database for review and follow-up by healthcare professionals. A cloud-based IVR system can be built using Twilio Studio and Twilio Serverless, simulating the functionality of an Electronic Health Record (EHR). The system prompts patients for information, stores their responses in a simulated EHR, and sends the data to Airtable via a Twilio Serverless function. The prototype is designed for healthcare systems struggling with call overflows, providing a solution to improve patient engagement and experience.
Mar 31, 2021 1,664 words in the original blog post.
The updated Twilio Video Open Source ReactJS application now includes out-of-the-box chat support for textual and file-based messaging, allowing developers to launch their own video apps with this feature in minutes. Chat within the video experience provides a valuable channel for users to send clarifying messages, promote inclusivity, encourage participation, and level up productivity. The new feature is built using Twilio's Conversations API, which provides flexibility to manage participants and fetch message history, and is accessible to all end-users throughout the lifetime of the call. The ReactJS app components leverage the MaterialUI library for easy styling and customization of the UI.
Mar 31, 2021 804 words in the original blog post.
Sending appointment reminder texts is a simple yet effective way to reduce no-shows and improve customer engagement. With an open rate of 98%, texting is a reliable channel for reminders, making it ideal for businesses with high appointment rates or those in industries like healthcare where timely follow-ups are crucial. To write effective appointment reminder texts, consider automating reminders, keeping messages short and on-topic, staying on-brand, enabling two-way communication, and using relevant industry language. By implementing these strategies and leveraging software like Twilio Studio, businesses can streamline their workflows, save time, and increase customer satisfaction. With the ability to send mass SMS reminders, schedule recurring texts, and even create HIPAA-compliant messages, businesses can take control of their appointment scheduling process and improve overall revenue.
Mar 31, 2021 1,759 words in the original blog post.
Twilio, a company with a focus on making it easy for developers to sign up, buy a phone number, and send their first message in a matter of minutes, is pioneering a global initiative to help one billion people get the Covid-19 vaccine using SMS. The current 10-digit long codes (10DLC) used for consumer messaging have limitations when used for business messaging, leading to issues with identity and throughput. To address this, Twilio is working with the ecosystem to finalize a transition to A2P 10DLC, which will provide businesses with verification and throughput they need to reliably reach their consumers at scale. This upgrade brings benefits such as verified ecosystems, local recognizable numbers, increased throughput, and improved deliverability rates. The company is working closely with carrier partners to ensure a smooth transition for developers and businesses, including simplifying registration processes and providing support for non-US customers and special use cases.
Mar 30, 2021 615 words in the original blog post.
The tutorial details how to create a mailing list application using Twilio's SendGrid Email API, Laravel, and Vue.js, emphasizing the importance of email marketing in communication strategies due to its high ROI and conversion rates. It guides users through setting up a Laravel project, configuring the database, and integrating Vue.js for the front-end. The tutorial also covers seeding a database with email addresses, installing the Twilio SendGrid SDK, and configuring API keys for sending bulk emails. The process involves creating a form to collect emails, setting up a controller to handle email sending, and using Vue.js for form validation and API calls. It highlights the importance of verifying sender emails on Twilio SendGrid, especially for new accounts, and concludes with testing the application's functionality to send bulk emails successfully.
Mar 30, 2021 2,615 words in the original blog post.
To store multimedia files in a SQLite3 database with Python, you need to convert the file into binary data (blob) and then insert it into the database. The blob is stored as text in the database, but when retrieved, it needs to be converted back into its original form. This can be done by using functions such as `convert_into_binary`, `write_to_file`, and `read_blob_data`. These functions handle the conversion of binary data to a file and vice versa. The blob data is stored in a table called "uploads" with columns for the file name and the binary data itself. When retrieving the blob, it is necessary to parse out the file name from the database record to determine the correct path on disk.
Mar 29, 2021 2,513 words in the original blog post.
A Node.js application using Express, the Twilio Node package, and the Finnhub API is built to reply to incoming SMS messages with stock quotes. The application requires a Twilio account, a Twilio phone number, Node.js installed, ngrok for tunneling, and a Finnhub API key. A configuration file manages environment variables for the API key. The `getQuote` function makes requests to the Finnhub API using the got package and returns a Promise that resolves to an object of type Quote. The application uses TypeScript to compile the code and send back data about the stock prices in response to incoming SMS messages, comparing current price to previous close and displaying an emoji based on whether it is higher or lower.
Mar 29, 2021 1,827 words in the original blog post.
The GraphQL API built with Django and Graphene provides a simple and flexible way to interact with the data model using GraphQL queries and mutations. It allows clients to define the structure of the data required and returns only the necessary data, preventing unnecessary data from being returned. The API includes three primary operations: Queries for reading data, Mutations for writing data, and Subscriptions for automatically receiving real-time data updates. The schema serves as common ground between the client and the server. The API can be tested using tools like GraphIQL and Postman, allowing developers to send GraphQL requests with queries, mutations, or subscriptions.
Mar 26, 2021 1,958 words in the original blog post.
Sam Agnew's article details the process of using Python and Twilio Messaging to track the status of the Ever Given, a container ship that became stuck in the Suez Canal, disrupting global trade. By integrating the Marine Traffic API, a Twilio phone number, and a Flask web application, users can text to receive updates on the vessel's movement. The guide provides a step-by-step walkthrough of setting up a Python environment, installing necessary libraries, retrieving data on the ship's location and speed, and configuring a Twilio phone number to respond to user inquiries via text. Additionally, the article encourages engagement with other Python projects and offers contact information for further questions or showcasing related work.
Mar 25, 2021 870 words in the original blog post.
To check your Twilio account balance using JavaScript, you'll need to set up a Node.js project and install the necessary dependencies, including the Twilio Node Helper Library and dotenv. You'll then create environment variables for your Twilio Account SID and Auth Token, retrieve your account balance using the Twilio client, and log the result to the console. Once you've completed these steps, you can run your script and view your account balance in real-time.
Mar 25, 2021 666 words in the original blog post.
asyncio` and `aiohttp` are being increasingly used in Python development for making asynchronous HTTP requests, which can improve performance when dealing with large numbers of requests. Asynchronous code allows other routines to run while waiting for a result, giving the look and feel of concurrency without blocking other code from running. In this tutorial, we saw how to use `aiohttp` to make asynchronous HTTP requests, including making a single GET request and comparing its performance to synchronous requests using the `requests` library. We also learned about utilizing `asyncio` for improved performance by running multiple requests concurrently as asyncio tasks and then checking the results at the end. This approach can significantly improve performance when dealing with large numbers of requests.
Mar 25, 2021 1,417 words in the original blog post.
You can make a voice call directly from a Node.js app using Twilio Programmable Voice, which allows you to integrate voice communications into your software application. To set up the environment, create a new Node.js project and install the Twilio Node Helper Library, then configure Twilio credentials as environment variables. Next, buy a Twilio phone number and create a TwiML bin that defines how the call should be handled when it's made from the purchased number. Finally, use the Twilio client to make a phone call from your Node.js app by creating a new call with the Twilio phone number, your personal phone number, and the URL of the TwiML bin.
Mar 24, 2021 886 words in the original blog post.
The tutorial covers how to generate vCards (.vcf files) using Ruby and send them to contacts via Twilio Programmable SMS. It requires a Twilio account, a phone number, and Ruby's latest version installed on the machine. The process involves creating a new folder, installing required gems (bundler, vCardigan, and twilio-ruby), generating a vCard file, serving it on Twilio assets, getting a Twilio phone number, adding code for sending the vCard, testing the script, and running the final command to send an SMS with the vCard. The tutorial also covers using arguments from the Ruby CLI in the code through bundler.
Mar 24, 2021 1,083 words in the original blog post.
The use of SMS two-factor authentication (2FA) remains popular despite its flaws because it offers a balance between security and usability. The main reasons for its persistence are that most people can receive text messages, making onboarding easy, and that 96% of Americans have a mobile phone capable of receiving texts. Additionally, SMS 2FA is still effective in blocking automated bots, phishing attacks, and targeted attacks, according to Google research. However, it has limitations, such as being vulnerable to SIM swap attacks and requiring users to opt-in for maximum security benefits. To address these weaknesses, businesses should consider offering a spectrum of 2FA options, including authenticator apps and push authentication, especially for high-value accounts and targets like celebrities or activists.
Mar 23, 2021 1,387 words in the original blog post.
Sending an SMS using the Twilio API with Java requires some setup, including installing Java 8 or newer, a Java IDE like IntelliJ IDEA, and a Twilio account. Using the Apache Maven build tool can simplify this process by downloading and managing dependencies. To create a new project, start by creating a pom.xml file with the necessary configuration, including specifying Java 8 as the target version and the Twilio Helper Library as a dependency. Then, write a Java class called TwilioSendSms in the src/main/java directory, which will authenticate the Twilio client and call the API to send an SMS using environment variables for sensitive information like ACCOUNT_SID and AUTH_TOKEN. Once this code is written, running it can successfully send an SMS with the specified phone numbers.
Mar 23, 2021 739 words in the original blog post.
To respond to incoming SMS messages with Twilio and Java, developers need to configure a URL in their Twilio console that triggers HTTP requests when an incoming message is received. The response to these webhook requests should be written in TwiML, a XML dialect used by Twilio. This can be achieved using the Spring Boot framework, which provides a simple way to create an HTTP endpoint that handles incoming messages and returns responses in TwiML. By using the Twilio Java Helper Library, developers can easily generate TwiML responses without having to write the code from scratch. Once the application is running locally, it can be made public with tools like ngrok, which creates a public URL that forwards requests to the local server, allowing Twilio to receive incoming messages and respond accordingly.
Mar 23, 2021 1,178 words in the original blog post.
To send an SMS from a shell script using cURL, one needs a Twilio account with a purchased phone number, cURL installed, and environment variables set for Twilio credentials and phone numbers. The most secure way to define these values is by setting environment variables such as `TWILIO_ACCOUNT_SID`, `TWILIO_AUTH_TOKEN`, `TWILIO_NUMBER`, and `TO_NUMBER`. With the environment variables set, one can send an SMS with a single-line command using the cURL command-line utility. The syntax may vary slightly depending on whether the user is following the tutorial on a Unix or MacOS computer or a Windows computer.
Mar 23, 2021 786 words in the original blog post.
Implementing two-factor authentication (2FA) with Symfony and Twilio's Authy App and API adds an extra layer of security to your application. This approach uses the Authy app to generate time-based one-time passwords, which are then verified by the user before accessing sensitive areas of the application. By following this tutorial, developers can integrate 2FA into their Symfony applications, providing a more secure experience for users. The process involves creating a new user entity, adding a country code and phone number fields, and configuring the registration form to collect the necessary information. Additionally, a service class is created to handle interactions with the Authy API, including registering users and verifying one-time passwords. By using this approach, developers can enhance the security of their applications and provide a better experience for their users.
Mar 23, 2021 4,520 words in the original blog post.
The guide by Matthew Setter explains how to send emails using PHP's Mezzio framework and Twilio SendGrid's API, focusing on a fictitious e-commerce shop scenario. It covers sending emails with plaintext and HTML bodies, including PDF attachments, and utilizing Twilio SendGrid's transactional templates for easier email body creation. The tutorial involves setting up a base application with necessary dependencies, configuring mail settings, creating a Handler class to send emails, and using transactional email templates to streamline the process. It also demonstrates attaching a PDF invoice to an email, leveraging substitutions for personalization, and emphasizes the benefits of using SendGrid's features to optimize email communication. The article encourages exploring the PHP library's documentation for additional functionalities such as scheduling emails and attaching files from cloud storage.
Mar 23, 2021 3,452 words in the original blog post.
You're going to learn how to create a Node.js application powered by Twilio Functions to receive phone calls on your Twilio number. To follow this tutorial, you need a free Twilio account, a Twilio phone number, and the Twilio CLI. You'll set up a new Twilio Functions service, deploy a serverless environment, and create a protected function that receives incoming phone calls. The protected function uses TwiML to play a message when someone calls your Twilio number. After deploying your function, you'll configure the Voice webhook in the Twilio Console to direct incoming calls to your function. Finally, you'll test your Twilio phone line by calling the purchased number and hearing a pre-recorded message.
Mar 22, 2021 988 words in the original blog post.
This tutorial teaches how to create a mailing list using Twilio's SendGrid Email API with Laravel and a Vue.js frontend, enabling bulk email sending to over 100 recipients at once. The application allows users to enter their email addresses and save them to the database, and then sends out bulk emails to provided email addresses. The process involves setting up a new Laravel project, configuring the database and .env file, creating a controller to handle form validation and sending of emails using SendGrid, and adding a Vue.js frontend to interact with the application.
Mar 18, 2021 2,149 words in the original blog post.
A Python-based encrypted voicemail system was built using Twilio's Programmable Voice API, Flask web framework, and the cryptography library. The application uses a public-private key pair to encrypt voicemails left by callers on a Twilio phone number. A dashboard is provided to view, decrypt, and listen to these voicemails. The application also includes functionality for deleting voicemails stored in Twilio's servers and locally on the system.
Mar 18, 2021 3,696 words in the original blog post.
You're going to build a speech translation bot that analyzes your voice on a call and responds with a translated version in the language of your choice. The bot will use Twilio Programmable Voice and IBM Watson's Speech Translation API, which can be used without an internet connection, making it suitable for even the simplest feature phones. The bot has three functions: greeting.js, handle-language.js, and translate-message.js. Each function is responsible for a specific task in the translation process, such as collecting user input, checking language support, and translating speech. The bot uses Twilio Functions to create webhooks and respond to incoming calls. It also utilizes IBM Watson's Language Translator service to translate speech into different languages. With this tutorial, you'll learn how to build a practical solution for speech translation using these technologies.
Mar 17, 2021 2,491 words in the original blog post.
Twilio Flex is partnering with Glance to provide a validated integration for visual engagement sharing and collaboration, enabling agents to view a customer's screen in real-time, facilitating quicker resolution of issues. This integration allows Twilio Flex customers to launch Glance Cobrowse with 1-Click Connect, providing secure and seamless interactions across multiple browsers and devices. The solution also offers flexible deployment options, allowing users to customize the display of the Glance window on their desktop. With this integration, Twilio Flex customers can easily engage customers, resolve issues quickly, and improve the overall customer experience.
Mar 17, 2021 414 words in the original blog post.
Twilio has acquired ValueFirst, a communications company with a lineup of great products across the messaging stack, MarTech, and Conversational AI, with over 2,500 customers in India including Google and Punjab National Bank. The acquisition strengthens Twilio's commitment to the Indian market by bringing together the world's largest cloud communication company with a leading player, ValueFirst. With a shared history of making communications simple and straightforward, Twilio and ValueFirst are powering the next wave of customer engagement, accelerating business growth in the region through solidifying local presence and connectivity with mobile operators while strengthening relationships with customers. The partnership is driven by a customer-first focus, allowing both companies to serve customers better and build out communications capabilities globally.
Mar 16, 2021 524 words in the original blog post.
You can send an SMS with Node.js using Twilio's API. To start, you need to have a free or paid Twilio account and install the required packages, including the Twilio Node.js Helper Library and dotenv. You also need to set up your project by creating two new files: index.js and .env. In the .env file, you add your Twilio account credentials as environment variables. Next, you buy a Twilio phone number and use it to send an SMS to your personal phone number. The code is then written in index.js using the Twilio library to create a new instance of the client and send an SMS with the message "Ahoy, friend!". After running the code, you see the message SID logged to the terminal, and soon receive a ping on your personal phone with the SMS.
Mar 16, 2021 767 words in the original blog post.
You can receive a phone call in Python using Flask and Twilio by setting up a development server, creating an ngrok tunnel to make the local server accessible over the Internet, defining a webhook to answer the phone call with a custom message, and configuring a Twilio phone number to forward incoming calls to the endpoint. The process involves installing the required packages, setting up a Flask application, creating an ngrok tunnel, answering the phone call with a message, and testing the setup by calling the Twilio phone number.
Mar 16, 2021 1,311 words in the original blog post.
The rise of A2P 10DLC requirements has led businesses to reevaluate their SMS strategies, as toll-free, dedicated short codes, and long codes each have unique benefits and drawbacks. Short codes are ideal for urgent notifications but are being phased out due to shared code issues; they offer high throughput and deliverability but few options are available, and they lack voice capabilities. Toll-free numbers provide flexibility and can be used for both messaging and voice calls, making them suitable for mid-high volume messages. Long codes require a verification process but offer higher throughput, improved deliverability, and the opportunity to create trusted localized experiences; however, getting up-and-running with long codes is becoming more challenging due to increased barriers to entry. Ultimately, businesses must consider their specific use cases and identity when choosing an SMS strategy that balances cost, throughput, security, and customer engagement.
Mar 16, 2021 913 words in the original blog post.
You can make a phone call using Twilio Programmable Voice and Python. To start, you need to set up your environment by creating a new Python project and installing the necessary dependencies. You also need to define your Twilio credentials as environment variables. Next, you buy a Twilio phone number and create a TwiML bin that contains instructions on how to handle the phone call. Finally, you use the Twilio Python Helper library to make a phone call in Python by creating a new instance of the Client class and calling the `calls.create` method with your Twilio phone number, target phone number, and URL to the TwiML bin.
Mar 15, 2021 1,009 words in the original blog post.
The A2P10DLC initiative aims to increase customer trust in SMS and reduce fraud by introducing changes to the way telecommunication carriers handle Application-to-Person (A2P) messages in the US. The new rules will separate trusted senders from untrusted ones, allowing for increased throughput and better handling of application-to-person messaging. This change impacts developers using Twilio's Programmable Messaging for SMS in the US, with some changes including carrier-imposed fees, brand registration requirements, a Trust Score concept, and restrictions on certain use cases such as cannabis-related messages. The goal is to improve the security and trustworthiness of SMS, while minimizing disruptions to developers.
Mar 15, 2021 886 words in the original blog post.
The Twilio CLI is a command line tool that allows developers to quickly send SMS messages using TwiML and the Twilio API, with just a few lines of code. To get started, users need to set up their Twilio account, install the Twilio CLI, log in to their account, purchase a Twilio phone number, and then use the command line to create an SMS message. With this tool, developers can save time by sending quick texts without having to pick up their mobile device, and there are many other cool features and examples available on the Twilio documentation site.
Mar 15, 2021 735 words in the original blog post.
To detect browser support for WebAuthn, developers can check if the `PublicKeyCredential` object is available in JavaScript. Currently, 87.39% of internet users should have support, with platform authenticators being the main method of adoption due to their lower cost and wider availability compared to roaming authenticators. To determine if a platform authenticator is supported, developers can use the `isUserVerifyingPlatformAuthenticatorAvailable()` method. WebAuthn is an API that reduces reliance on passwords by using public key cryptography to create credentials for websites, making it less vulnerable to phishing attacks. Developers who want to learn more about WebAuthn and its implementation can check out resources such as https://webauthn.guide/ or Twilio's Verify API for a wide range of authentication channels.
Mar 15, 2021 435 words in the original blog post.
Twilio is launching a podcast series called After Hours, which aims to create inclusive spaces for professionals in the tech industry. The program was initially launched as an in-person event in 2017 and has since evolved into a thought-provoking podcast that elevates diverse voices and drives richer discussions. The first episode of the podcast features dynamic women in leadership at Twilio who discuss topics such as celebrating and supporting women in the workplace, navigating spaces when you're the only one in the room, and finding community through ERGs. The podcast is available on all major platforms and can also be streamed online. Additionally, a curated playlist featuring the leaders' favorite tracks is available to listen to. Twilio is also seeking talented individuals to join their team and encourages interested parties to check out their current job openings.
Mar 15, 2021 349 words in the original blog post.
Toll-Free messaging has emerged as a compelling channel for customer engagement, offering deliverability, throughput, instant provisioning, and unified channels. The latest development allows businesses to send and receive media messages from recipients in the US and Canada, extending the versatility of Toll-Free numbers. With MMS-enabled Toll-Free numbers, businesses can use rich media to enhance their messages, such as abandoned cart reminders with images, new product announcements, welcome messages, contactless delivery, and customer support. Businesses can start sending media messages on Twilio by including the MediaUrl parameter in their API request, and we are excited to see what they build with Toll-Free MMS!
Mar 15, 2021 521 words in the original blog post.
Hyper-personalization is emerging as the future of customer engagement in retail, allowing brands to deeply understand their customers' needs and wants through real-time data analysis. This approach enables personalized content, offers, and experiences that foster loyalty and positively impact the bottom line. With 72% of consumers saying they engage more with customized marketing messages, brands must adapt to provide relevant and timely interactions, breaking free from legacy communications technology to create seamless customer experiences. By leveraging APIs, SDKs, and other tools, retailers can personalize customer communications, integrate data sources, and drive targeted marketing campaigns that recognize each customer as unique individuals.
Mar 12, 2021 790 words in the original blog post.
The US business messaging landscape is undergoing a significant shift with the implementation of A2P 10DLC requirements, which presents both challenges and opportunities for businesses. SMS remains a critical part of many companies' business strategy due to its effectiveness, global reach, and high ROI. However, poorly timed or unwanted messages erode consumer trust, leading to filtering, carrier disruptions, and negative consumer behavior. A2P 10DLC aims to improve consumer trust and the ROI of every message sent by introducing verified ecosystems, increased transparency, and accountability. This shift represents an opportunity for businesses to innovate and reinvigorate their messaging frameworks on a larger scale, with Twilio providing tools and features to promote trusted relationships between businesses and customers.
Mar 12, 2021 1,198 words in the original blog post.
This month, Twilio is highlighting the importance of challenging gender bias and promoting women's achievements as part of its WePledge 1% initiative. The UN theme for International Women's Day is "Choose to Challenge," emphasizing individual responsibility for creating a more inclusive world. Twilio employees are taking action by supporting charities such as Girls who Code and Malala Fund, amplifying underrepresented voices, reading about intersectional feminism, watching conversation starters, and advocating for policy changes. The company encourages its members to join the movement by signing up at wepledge.org and committing 1% of their time or resources to positive change.
Mar 11, 2021 388 words in the original blog post.
You can use Twilio Programmable Voice to make and receive voice calls in your software application by using the Twilio CLI. To get started, you need a free Twilio account, Node.js installed on your machine, and set up your environment with the Twilio CLI installed. You can buy a Twilio phone number from the CLI and create a TwiML Bin to host your TwiML document. When your Twilio phone number makes a call, Twilio looks up the URL associated with your number and sends a request to that URL. If your URL contains TwiML, Twilio will follow the instructions found in the document. You can use the CLI to make a phone call through your new Twilio phone number by running a specific command, replacing placeholders with your actual phone numbers and the URL of your TwiML Bin.
Mar 11, 2021 741 words in the original blog post.
As a software developer, I'm excited to share my passion for creating engaging technical content with others, just as I did when I was a child asking questions and seeking answers. My journey began as a teacher, where I helped children discover the joy of learning, and later evolved into working with print and e-books, editing and arranging them to share the enjoyment of reading and learning with the world. As I transitioned into software engineering, I continued to learn and build new things, sharing my knowledge with others on my team and eventually leading me to a question about bringing together my code knowledge with my teaching experience. Now, as a Software Developer for Technical Content at Twilio, I'm eager to share interesting and useful posts to help developers build out new project ideas and discover "aha" moments, while also inviting others to reach out and share their own projects with our community.
Mar 11, 2021 612 words in the original blog post.
A Django developer can implement WhatsApp notifications with templates using the Twilio WhatsApp API, requiring a Twilio account, smartphone, WhatsApp account, Python 3, and basic knowledge of Python and Django. The process involves setting up a virtual environment, installing necessary packages, creating a Django project, configuring settings for the Twilio account, choosing an approved WhatsApp message template, creating a Django view to send WhatsApp messages, adding a Django HTML template, and adding a URL pattern for the Django view. A sample application is provided to demonstrate how to implement this process.
Mar 11, 2021 1,823 words in the original blog post.
Just Scream was a viral app created by Chris Gollmar using Twilio's Programmable Voice, designed as a creative outlet for people to scream and air frustrations during the COVID-19 pandemic. The app became an overnight success on TikTok with over 1.2 million videos in its #JustScream tag, where users would upload their own screams or react to others. To handle the sudden growth, Gollmar had to rethink his infrastructure, setting up a new Flask app and webhook to control the flow of traffic. The app's success exceeded Gollmar's expectations, with 131,000 recorded screams still available to listen to, although he has since shifted focus to collecting messages of hope from users instead of just screams.
Mar 10, 2021 1,263 words in the original blog post.
Twilio has partnered with Zoom to introduce Global SIP Trunking for Zoom Phone BYOC, a global PSTN connectivity option that allows IT managers to connect their Zoom Phone service to Twilio's Elastic SIP Trunking service in 100 countries. This solution provides high-quality global PSTN service with on-demand scalability at competitive prices and enables centralized management of trunk and DID provisioning. The partnership aims to reduce complexity and costs associated with traditional PSTN connectivity, while providing flexibility and control over routing policies and security. With this integration, multinational corporations and medium-sized businesses can enjoy a seamless experience, leveraging the scale and innovation of Twilio's global Super Network.
Mar 10, 2021 1,141 words in the original blog post.
Poor VoIP call quality can be frustrating, especially during critical virtual meetings or sales pitches. To understand what's causing poor calls, it's essential to know how data is transferred on a VoIP call, including packetization, routing, and reassembly. Factors such as jitter, packet loss, latency, and network congestion can all contribute to subpar call quality. By identifying the root cause of the issue, businesses can take proactive steps to improve their VoIP calls, including monitoring call quality, increasing bandwidth, upgrading routers, setting up jitter buffers, configuring Quality of Service settings, segmenting traffic with VLANs, converting to ethernet connections, purchasing high-quality headsets, and switching off unnecessary Bluetooth devices. By implementing these strategies, businesses can ensure seamless and reliable VoIP calls that enhance their communication experience.
Mar 10, 2021 1,416 words in the original blog post.
You can receive a phone call in Python using Django and Twilio by creating a web application that listens for incoming calls, processes the call information, and responds accordingly. To start, create a new Django project and virtual environment, install the required packages, including Django, Twilio, and Pyngrok. Configure the Django project to use a Twilio phone number as an endpoint for incoming calls. Use the Twilio Python Helper library to work with voice calls and generate TwiML responses. The TwiML language allows you to instruct Twilio on how to handle the call, such as playing a message or connecting to another call. Once configured, test the application by calling the Twilio phone number and verifying that it responds correctly.
Mar 10, 2021 1,734 words in the original blog post.
To receive and reply to SMS messages with TypeScript and Twilio, you can build an Express application that listens for incoming webhooks from Twilio. You need to install the necessary dependencies, including Express, Twilio, and TypeScript, and set up a configuration file to store your port number. Then, create a route for handling incoming webhook requests using the Twilio package's MessagingResponse class to generate TwiML. To connect the application to a Twilio phone number, you need to access the application from a public URL using ngrok. Finally, you can use TypeScript types to define the shape of your request and response objects, making it easier to catch errors and ensure type safety in your code.
Mar 09, 2021 1,960 words in the original blog post.
Sam Agnew's blog post explores the extensibility of Vim through various plugins, enhancing its functionality for users. He emphasizes the importance of installing and managing plugins using Vim 8's native package support or a plugin manager like Vundle, which simplifies the process for older versions of Vim as well. Agnew highlights five essential Vim plugins: Syntastic for syntax checking, Fugitive as a Git wrapper, NERDTree for file system exploration, Emmet for web development, and Airline for an improved status line. Each plugin is detailed with installation instructions and customization options to enhance the user's workflow. Agnew expresses his enthusiasm for future explorations of lesser-known plugins and invites readers to share their own Vim tips and tricks with him through various contact platforms.
Mar 09, 2021 1,840 words in the original blog post.
"In this blog post, we introduced the fundamentals of Infrastructure as Code (IaC) and how it can be applied to Twilio products. We created a simple example using Pulumi to deploy and manage Twilio resources such as TaskQueues, Workspaces, and Workers. With IaC, you can streamline the creation of resources in all environments, track changes, and integrate it with your CI/CD pipeline. In this series, we will explore how to apply IaC concepts to real-world use cases and see how Pulumi can help."
Mar 09, 2021 2,723 words in the original blog post.
Handling Webhooks with Java, Spring Cloud Function and Azure Functions involves setting up a serverless function to respond to incoming messages from Twilio's API. The function needs to be deployed to an Azure Functions platform, which provides a public URL that can handle incoming requests. The process involves creating a new Spring project using the Spring Initializr tool, defining a WebhookHandler class that handles the incoming request, and deploying the function to Azure using the Azure Functions Core Tools. Once deployed, the function can be tested with curl commands or an SMS test, and it can also be configured to use Twilio's API for sending responses to incoming messages. The function can be made more useful by adding dependencies and configuring the Maven configuration file. Finally, serverless cold starts are discussed, and the Azure Function Premium Plan offers guaranteed-warm function invocations for a price.
Mar 08, 2021 1,482 words in the original blog post.
Alina Rakhmatoullina, Twilio's new Developer Relations Manager for the NAMER region, shares her journey of embracing change and growing into a career in developer relations, tracing her love of technology back to childhood experiences with technology and community-building. Born in northern Russia but raised in Texas, Alina navigated cultural norms and language barriers through technology, connecting with others over gaming platforms and finding her passion for helping developers learn and connect through tech. Her journey took her from customizing early web pages to working as a technical consultant and eventually landing in developer relations, where she fuels the future of communication for Twilio's communities.
Mar 08, 2021 640 words in the original blog post.
The shift to remote work has exposed workplace inequity for neurodivergent employees, who may struggle with stressors such as isolation, economic stress, and political turmoil. To create a more welcoming and productive environment, leaders must communicate clearly, empower staff to make choices, and adapt the environment to meet their unique needs. This includes identifying equity gaps, seeking to understand differences, adapting effectively through clarity and choice, and maintaining equity post-pandemic. By doing so, organizations can foster a more inclusive and effective work culture that leverages the strengths of neurodivergent employees while addressing their challenges.
Mar 05, 2021 1,405 words in the original blog post.
To build a basic custom button component in React TypeScript, start by creating a new project using create-react-app and installing necessary dependencies. Define the properties for the button component, including border, color, children, height, onClick, radius, and width. Create a new folder named components and write a Button object that takes these props as input. Use the component in your React project by importing it into App.tsx and rendering it with different props to test its functionality. You can also experiment with CSS properties using React Developer Tools or other developer tools. By creating custom button components, you can simplify your code, reuse components efficiently, and make your projects more efficient.
Mar 04, 2021 1,721 words in the original blog post.
Twilio experienced a significant 2.5-hour service disruption on February 26, 2021, affecting various products including SMS, Flex, Console, and others, causing increased latency, errors, and delayed launches. The root cause was an overloaded critical service that manages feature-enablement for many Twilio products, which led to multiple product failures. To resolve the issue, Twilio increased server capacity and added additional caching, but acknowledged that their standard procedure didn't fully account for ongoing load. The company is now implementing several improvements to prevent reoccurrence, including reconfiguring auto-scaling behavior, removing critical services from key paths, and refactoring APIs to increase scalability. Additionally, Twilio is reviewing its communication procedures with customers during disruptions and taking steps across their engineering organization to identify similar risk characteristics and remediate them.
Mar 03, 2021 656 words in the original blog post.
I've cloned the repository, installed dependencies, gathered credentials, and set up a Twilio phone number to use with the Twitch phone call system. I have created an ngrok tunnel to expose the server to the internet, updated the phone number to point to the ngrok URL, and added the overlay to OBS using a flag to enable media stream access. Now, when I navigate to localhost:3000/dialpad, I can control whether to answer or end the call through websockets, allowing me to take calls on my Twitch streams live with Twilio's technology.
Mar 03, 2021 1,336 words in the original blog post.
You'll learn to use TypeScript and Twilio Programmable Video to build a video chatting application with muting and unmuting controls. You'll use an existing base project making use of the Twilio Client Library (for front-end video) and the Twilio Server Library (for back-end authentication). The application will have buttons for muting and unmuting audio and video tracks, and will display a notification when another user mutes or unmutes their stream. You'll also manage track attachment and subscription for remote participants, and handle mute and unmute events for tracks this participant has already published. You can run the application by starting your local backend server and client's server, then visit localhost:1234 in your browser to see a preview of your webcam stream after providing the relevant permissions if prompted. By opening two browser windows, you can connect both to the same room but with different identities, and you should see the remote streams. To test the new feature, run the application by starting your local backend server and client's server, then visit localhost:1234 in your browser to interact with the video chatting application.
Mar 02, 2021 3,276 words in the original blog post.
Deploying a Python application, such as an SMS bot, from development to production requires careful consideration. The article provides a step-by-step guide on how to deploy a Flask-based SMS bot on PythonAnywhere, a cloud hosting platform for Python applications. To begin, create a free or paid account on PythonAnywhere and Twilio, and install the required dependencies in a virtual environment. Next, copy the application files to the home directory of the PythonAnywhere account, configure the virtual environment, and tell PythonAnywhere to allocate a web application. The article then guides through configuring the WSGI configuration file and testing the deployed application by connecting it to a Twilio phone number. With these steps, users can deploy their own Flask-based applications on PythonAnywhere and integrate them with Twilio's webhook functionality.
Mar 02, 2021 2,056 words in the original blog post.
Graham Else from Barts BioResource in London developed a C# application for appointment booking using Twilio Voice APIs, but wanted to add appointment reminders without adding extra references to his existing project. He used AWS Lambda to automate this process by creating a lightweight solution that calls an API endpoint in his app to generate reminders. To set up the project, Graham created an IAM user and installed the AWS SDK in Visual Studio, then coded the Lambda function to call the API endpoint, which returns a response indicating whether the reminder was successful or not. He added an API controller to his existing project to handle the request from the Lambda function, and tested the Lambda function using VS Mock Lambda Test and then published it to AWS Lambda. Graham also created a CloudWatch rule to schedule the Lambda function to run daily at 3:00 PM, and demonstrated how to test and enable/disabling the rule.
Mar 02, 2021 1,764 words in the original blog post.
You can authenticate with Twilio's API using the Account ID as the username and the primary or secondary auth token. If the primary token is compromised, you can promote the secondary token to the primary token which will make the old primary token unusable. You can protect your credentials by segmenting your account with subaccounts. Subaccount authentication ensures that an authenticated user's actions are limited to their own subaccount, preventing a potential security breach if an auth token or API Key for a subaccount is compromised. Twilio now recommends using API Keys instead of Account Credentials, offering greater flexibility and control over access to its services. With API Keys, you can create multiple keys with varying levels of access, making it easier to manage permissions and revoke access when necessary.
Mar 01, 2021 1,278 words in the original blog post.
To optimize Twilio IVR flows, A/B testing tools like Optimizely can be used to experiment with different voice messages and analyze their effectiveness. The tutorial demonstrates how to set up an Optimizely project, create an A/B test, and configure Twilio functions to split traffic and send events to Optimizely for reporting purposes. The tutorial also covers setting up a Studio IVR flow using the Optimizely SDKs, configuring the flow to capture survey results and send them to Optimizely, and troubleshooting common issues that may arise during testing. By following this tutorial, users can learn how to use Optimizely to optimize their Twilio IVR flows and improve user experience.
Mar 01, 2021 1,489 words in the original blog post.
The joint Twilio/Ribbon solution for Microsoft Teams offers a global PSTN connectivity solution that combines the scalability of Twilio Elastic SIP Trunking with the security features of Ribbon's SBCs, providing low calling rates and on-demand provisioning in up to 100 countries. This solution eliminates the need for Cloud Connector Edition and provides flexible migration options, routing flexibility, and simplified operations compared to Microsoft Calling Plans. The joint solution is designed to anchor the SIP communications environment, secure voice traffic, and enable interoperability with legacy telephony systems, making it a reliable option for IT managers deploying Microsoft Teams.
Mar 01, 2021 1,332 words in the original blog post.