Home / Companies / Twilio / Blog / March 2020

March 2020 Summaries

74 posts from Twilio

Filter
Month: Year:
Post Summaries Back to Blog
Twilio, a cloud communication platform provider, celebrates Women's History Month by highlighting the impact of its employees who make their work experience better through their contributions. The company features stories of dozens of women and non-binary individuals who are proud of and excited to celebrate their peers and leaders across various channels. These individuals have made significant contributions to the company, including leadership roles, innovative ideas, and a commitment to diversity and inclusion. They are recognized for their dedication to creating a positive work environment, supporting their colleagues, and driving success in their respective teams.
Mar 31, 2020 1,143 words in the original blog post.
As a former ballet dancer, content writer, social media manager, public relations account executive, and software engineer, Liz Moy has had four distinct careers, each informing her approach to her latest role as a Developer Evangelist at Twilio. With experience in the music industry, working with large companies like Disney, and navigating challenges in coding, she brings a unique perspective to her new position. Moy is excited to serve the enterprise developer community, leveraging her cross-disciplinary skills to provide tools and opportunities for developers to build amazing things with Twilio. Her enthusiasm stems from seeing the benefits of collaboration and learning that come with working together across different fields and communities.
Mar 31, 2020 693 words in the original blog post.
Twilio Flex aims to revolutionize contact center technology by providing programmability, which allows customers to use code to modify and extend the behavior, user experience, and functionality of Twilio Flex to fit their ongoing needs. This approach contrasts with traditional contact centers that rely on pre-defined features and integrations, limiting flexibility and customizability. With programmability, businesses can create new capabilities, change existing ones, and access multiple points of record through REST APIs, improving operational insight into their contact center. Twilio Flex also offers a programmable dialpad with capabilities such as outbound calling, cold and warm transfers, and real-time reporting, empowering agents to automate contact outreach and improve customer experience.
Mar 31, 2020 879 words in the original blog post.
The Flex Boost program, launched by Twilio, aims to provide technical, operational, and financial resources to contact centers impacted by COVID-19. It offers extended free hours, technical resources, and operational guidance to help organizations quickly transition to work-from-home models. The program includes 10,000 free Active User Hours per month for up to three months, and an additional 20,000 hours for public benefit projects until August. Twilio has also created tutorials, guides, plugins, and sample code to facilitate the deployment of Flex with Flex Boost, as well as operational resources such as expert interviews and articles on best practices for managing a distributed workforce during a crisis.
Mar 31, 2020 920 words in the original blog post.
The Web Contact Picker API is now available in Chrome 80 on Android M or later, providing developers with access to users' contacts while maintaining security and privacy expectations. The API consists of the ContactsManager object, which can be accessed through the navigator object. Developers can check for support by verifying if the "contacts" property exists in the navigator object and if the "ContactsManager" property exists in the window object. Once supported, developers can use the `navigator.contacts.select` function to show a modal interface that allows users to select contacts, which returns an array of contacts with requested properties. The API requires a user gesture and will only run on secure domains, and it does not provide permanent access to users' contacts. To add this feature to an application, developers need to check for support, trigger the API when a button is clicked, listen to the click event, call the Contact Picker API, handle the response, and fill in the input with the contact's number.
Mar 31, 2020 1,672 words in the original blog post.
Twilio Sync provides a powerful and flexible API that helps developers add real-time capabilities to their applications. In this article, we have seen how it can be used to power a simple API analytics tool with Laravel and Vue.js. The application allows users to create recipes and view the API calls made to these resources in real time. We also implemented an exception handler to log errors that occur during API requests.
Mar 30, 2020 2,189 words in the original blog post.
The chatbot is a simple yet expressive tool that uses Flask, pandas, and the Twilio API for WhatsApp to provide information about soccer matches and statistics. It can answer questions such as "How many goals did Arsenal score?" or "What was the result of Chelsea vs Everton?" The chatbot's logic is implemented using conditional statements that check for specific keywords in the user's message. If the keyword is found, it retrieves relevant data from a CSV file and formats the response accordingly. The chatbot also includes a welcome message with example questions to help users understand how to use it.
Mar 30, 2020 3,350 words in the original blog post.
Verifying email addresses in PHP has become easier thanks to Twilio Verify, which supports email verification with a single API call. To use it, developers need to create an email template using SendGrid and link it to their Twilio account. They then write a PHP script to send a verification request to the user's email address, which includes a unique token that must be clicked on to validate the email address. The verification process involves sending a verification check request to the Twilio Verify API, which checks if the token is correct and updates the user record accordingly. This system can be used not only for email verification but also for other admin-type emails, making it a convenient solution for developers to stop repeatedly solving the same problems.
Mar 30, 2020 1,690 words in the original blog post.
This post explores various machine learning models and APIs provided by DeepAI, a platform that increases AI accessibility to developers and consumers. It covers generating text from another text or image using the text-generator API, recognizing celebrities' faces with the Celebrity Recognition API, colorizing photos and videos with the Colorizer API, and performing neural style transfer with the Fast Style Transfer API. The post provides example code in JavaScript for each of these tasks, showcasing how developers can use DeepAI to create art with machine learning.
Mar 29, 2020 911 words in the original blog post.
In this article, Corey Weathers explains how to build a conference line using Twilio with ASP.NET Core and C#. The process involves setting up the developer environment, creating an API route to receive incoming calls, and connecting the app to Twilio. The article provides step-by-step instructions on how to create a basic conference call and offers suggestions for further development of the feature. To run the app, developers need to install the .NET Core SDK, Visual Studio Code, and the C# extension, as well as create an ASP.NET Core project and add the Twilio helper library. The article also mentions the use of ngrok to provide a URL that allows Twilio to reach the local machine. With this guide, developers can build their own conference line using Twilio and explore other features from the Conference TwiML documentation.
Mar 27, 2020 677 words in the original blog post.
Twilio Client is a web-based voice client that allows users to make calls using their data connection, bypassing congested public telephone networks. It enables customers and staff to connect to contact centers or business-critical services with reduced congestion issues. Twilio Client can be used for direct routing to existing infrastructure via SIP, routing to non-congested links, and handling security and fraud considerations. The client setup involves generating a valid Access Token, securing the web-based client, and setting up routing options such as direct routing, routing to SIP infrastructure, and routing to an alternate PSTN link.
Mar 27, 2020 1,114 words in the original blog post.
The article provides instructions on how to build a protected conference line using Twilio Studio in just a few minutes. The process involves creating a flow, setting up the studio widgets, and configuring the Twilio number. A customer can call the Twilio number, hear a greeting, enter a PIN, and join the conference bridge. If they enter the wrong PIN, they will be prompted to re-enter it. The article also provides an example of how to import a pre-built flow for a protected conference line, allowing developers to quickly get started with building their own solutions.
Mar 27, 2020 1,094 words in the original blog post.
By Chas Bowman, a Contact Center Solution Architect with Twilio, this article guides you through the process of creating queues and skills for your Flex contact center. The author begins by explaining the importance of routing and queueing strategies in the contact center business and then dives into building two new Task Queues: Customer Service and Employee Service. These queues are set up to segment customer and employee traffic, enabling easy reporting and segmentation. Skills-based routing is also implemented to ensure calls are routed to the correct agents based on their skills or attributes. The author then outlines the steps for building skills, creating Workflows, setting up Studio flows, adding additional phone numbers, and testing the queues and skills routing. The article concludes by emphasizing the importance of exploring more advanced customizations, such as using the Flex UI and Flex Plugins, to further enhance your contact center solution.
Mar 26, 2020 1,923 words in the original blog post.
Twilio is offering a program called Flex Boost to provide up to $100,000 in free Active User Hours to organizations impacted by or responding to COVID-19. The article guides the reader through deploying Twilio Flex, a cloud-based contact center with native WebRTC support, in just 30 minutes. To get started, one needs a Twilio account and can immediately start testing voice calls, SMS, and web-chat after provisioning a new Flex Instance. The first time accessing Flex provides initial tasks that guide the user through additional steps to set up Flex. Flex leverages Single Sign-On (SSO) to automatically provision contact center agents, and users must upgrade from a trial account by accepting the Fair Use Policy for Flex and selecting a pricing plan. After deploying the instance, users can enhance voice quality using WebRTC and test their instance by calling in and sending SMS messages to the provided phone number. With a running Flex instance, users are in great shape and should consider setting up an IVR, routing incoming interactions to agents, and customizing branding and front-end elements.
Mar 26, 2020 1,402 words in the original blog post.
You can build a conference call line with Twilio Studio without writing any code. To start, create a new flow in the Studio Dashboard and select "start from scratch." Add a "Say/Play" widget to provide a message to callers before connecting them to the conference. Then add a "Connect Call To" widget to connect participants to the conference. Finally, configure your Twilio phone number to use the studio flow by selecting the correct options in the Phone Numbers dashboard. With these steps, you can create a fully functional conference call line using Twilio Studio.
Mar 26, 2020 447 words in the original blog post.
Twilio has announced two new features for its Programmable Voice SIP Interfaces: Secure media using SRTP (Secure Real-time Protocol) and Emergency Calling capability for SIP Endpoints. These features aim to enhance security and emergency calling capabilities for contact centers, allowing agents to use SIP phones to make emergency calls while securing communications with SRTP encryption. With the Emergency Calling feature, Twilio routes calls to the nearest Public Safety Answering Point (PSAP) to get help in case of an emergency, while Secure media uses SRTP to encrypt media traffic and protect it from hackers and cybercriminals.
Mar 26, 2020 964 words in the original blog post.
A COVID-19 tracking project provides up-to-date statistics on tests administered, positive cases, and death tolls for each US state via an API. To build a text-message-based tracker in Python using this API and Twilio Programmable Messaging, you need to set up your environment, install dependencies, retrieve data from the API, and create a Flask app that responds to incoming texts with COVID-19 statistics. The app uses ngrok to provide a publicly accessible URL for the Flask app, and you can test it by texting your Twilio number. The project emphasizes the importance of staying home, social distancing, and taking care of yourself during the pandemic.
Mar 25, 2020 1,422 words in the original blog post.
A Raspberry Pi-based system using machine learning and Twilio Programmable SMS can be used to create a 24/7 "rent-a-cop" for monitoring areas of homes, particularly for detecting cats. The system uses YOLO (You Only Look Once), a real-time object detection library, Darknet, an open-source neural network framework, OpenCV, a library for image processing, NNPack, a package for accelerating neural network computation, and Twilio to send notifications. The setup involves installing the necessary software, compiling the code, and configuring the system to use a webcam and send SMS notifications when a cat is detected. The system can be customized to detect specific objects, such as cats, and send notifications with a delay to prevent spamming.
Mar 25, 2020 1,874 words in the original blog post.
To build a conference line with Twilio and Java, start by setting up a Spring Boot project and adding the Twilio Helper Library to it. Then, create a new class that handles incoming calls and generates a VoiceResponse containing a welcome message and a Dial verb to connect the caller to a conference room. Use ngrok to create a temporary public URL for your localhost app so that Twilio's webhook can call into it. Set up a Twilio phone number and configure it with the ngrok URL, then test out the conference call by calling the number and joining with friends. The project also discusses how to build off of this basic example with additional features such as joining on mute or making calls moderated.
Mar 25, 2020 887 words in the original blog post.
The use of `app.run()` versus `flask run` in Flask applications has evolved over time, with the latter becoming the recommended method by the Flask project. The main difference between the two is that `flask run` requires setting an environment variable to point to the application instance, while `app.run()` directly invokes the `run()` method on the application object. Both methods have their advantages and disadvantages, including differences in reloader robustness and command-line interface availability. Ultimately, there is no exclusive choice between the two methods, and both can be used together without conflict.
Mar 25, 2020 1,659 words in the original blog post.
The article demonstrates how to use Twilio Lookup to obtain carrier information associated with a phone number, using ASP.NET Core Razor Pages and the Twilio Helper Library for .NET. The code initializes an instance of the Twilio client using credentials stored as environment variables, then uses the `PhoneNumberResource` class to make an asynchronous call to the API to validate the phone number and retrieve carrier information. If the value of `PhoneNumberRaw` can be validated for `CountryCodeSelected`, the API returns the phone number formatted in the appropriate national format and E.164 format. If carrier is requested from the API, it returns a dictionary object that may have an error code set. The article provides examples and explanations of how to use the Twilio Lookup API with the Twilio Helper Library for .NET, including handling errors returned through the API and in error codes included in the retrieved information.
Mar 25, 2020 2,818 words in the original blog post.
Creating a conference line with Twilio Functions allows for easy and seamless joining of calls without the need for additional setup or configuration. A Twilio account is required to create a new Function, which can be configured to handle incoming calls by generating TwiML that tells Twilio to dial the caller into a conference room. With the basic code in place, users can then buy a Twilio number and configure it to call their function whenever someone calls the number, allowing for the creation of a fully functional conference line.
Mar 25, 2020 397 words in the original blog post.
The article highlights 7 cool APIs that developers can play with and build upon, including the Dog API for dog photos, the Pokemon API for Pokémon data, Fun Translations to translate quirky languages, affirmations.dev for personalized affirmations, Http Status Cats for illustrating HTTP status codes, I Can Has Cheezburger's Dad Jokes API for dad jokes, and NASA's Big Collection of Sciency APIs for space-related data. These APIs can be used to build projects, learn about programming, or simply have fun with coding. The article aims to spark joy in developers and encourage them to explore these APIs further.
Mar 24, 2020 1,223 words in the original blog post.
This tutorial demonstrates how to create a custom conference call solution using PHP and Twilio Programmable Voice, allowing team members to connect from anywhere in the world. To build this application, you need to have PHP 5 or above, Composer globally installed, Ngrok installed, and a Twilio account. You will also need to install the Twilio PHP helper library. The tutorial guides you through creating a new project directory, defining your composer.json file to include the Twilio SDK, handling incoming calls via PHP, making your application accessible to the internet using ngrok, and connecting the webhook to a Twilio phone number. With this solution, you can create your own custom conference call line in just ten lines of PHP code.
Mar 24, 2020 1,088 words in the original blog post.
The author, Nathaniel Okenwa, created a personalized Mother's Day gift for his mother by using WhatsApp and Cloudinary. He designed an overlay with names and used it to add photos from family members and friends to create a scrapbook. To do this, he used Twilio Serverless Function to manipulate the images, adding the overlay and text with their messages. The author also created another function to turn messages into images. Finally, he set up a conversation flow using Twilio Studio for users to send photos and messages, which were then stored in Cloudinary's media library and printed out to create the scrapbook.
Mar 24, 2020 1,089 words in the original blog post.
Simple Urgent SMS Notifications with Google Sheets and Twilio allows users to send urgent messages to customers or staff without needing access to developers or usual tools. The tutorial requires a Twilio account, a Google or G-Suite account, and the ability to choose from different number types such as standard phone numbers, Toll Free Numbers, Short Codes, and Alphanumeric Sender IDs. To set up, users create a copy of the provided Google Sheet, enter their Twilio credentials, decide on a sending method, test the setup, send bulk messages by filling in greeting and message boxes, and check message status periodically. The script uses the REST API to send SMS messages and stores the initial status response for later checking. Users can troubleshoot issues by checking account details, numbers sheets for errors, and logs inside the Script Editor.
Mar 24, 2020 1,109 words in the original blog post.
To build a conference line with Twilio and Node.js, you'll need to set up an Express server to receive incoming calls, install the necessary libraries, and configure your Twilio account to make your number publicly accessible. You can then use ngrok to provide a publicly accessible URL for your Express app, allowing it to be visible from the internet and receive requests from Twilio. Once you've completed these steps, you'll be able to join conference calls using a unique PIN or log-in, making it easy to connect with others over the phone.
Mar 24, 2020 663 words in the original blog post.
SendGrid` is a popular email service provider used to send emails programmatically. The Laravel Task Scheduler allows developers to define tasks as code, leveraging the framework's logging and error handling features. In this tutorial, we will use `SendGrid` to send daily reports of new signups on a Laravel application. To achieve this, we need to create a recurring task that sends an email to the administrator with the number of new users each day. The task is defined as an invokable object and uses the `Carbon` library to calculate the percentage difference between the previous day's and today's user count. The email is sent using the `SendGrid` API, which requires an API key to be set up in the `.env` file. The Laravel Task Scheduler is then used to schedule the task to run daily at 11:59 PM and append the output to a log file.
Mar 24, 2020 1,233 words in the original blog post.
DKIM (DomainKeys Identified Mail) is a cryptographic email authentication technology developed by Cisco and Yahoo to combat domain spoofing by allowing email senders to sign their messages, thereby verifying their identity to inbox providers like Gmail and Microsoft. This technology helps prevent malicious actors from sending fraudulent emails from domains they do not control, thereby enhancing email security and deliverability. To implement DKIM, senders must add a private key to their mail servers, which is then verified through a public key stored in the DNS records of the sending domain. While DKIM is crucial for verifying the authenticity of the sender and the integrity of the message content, it does not instruct inbox providers on how to handle verified messages, nor does it prevent emails from being misused by being forwarded. To fully secure email communication, DKIM should be used alongside SPF (Sender Policy Framework) and DMARC (Domain-based Message Authentication, Reporting, and Conformance), as each addresses different aspects of email security. Implementing DKIM correctly is vital for brands to protect their reputation and ensure their emails reach the intended recipients without being blocked by inbox providers.
Mar 23, 2020 1,333 words in the original blog post.
Machine learning algorithms can be challenging to understand, but knowing about supervised and unsupervised learning, as well as common algorithms like linear regression, logistic regression, Naive Bayes, KNN (K-nearest neighbors), and Random Forest, can make machine learning more accessible to developers. Supervised learning involves training models on labeled data to predict continuous or categorical outcomes, such as weight and height in linear regression, or probability of success in logistic regression. Naive Bayes is a family of supervised classification algorithms that calculate conditional probabilities, while KNN uses the average of k nearest neighbors to make predictions. Random Forest is an ensemble algorithm that combines multiple decision trees for higher accuracy in both regression and classification problems, making it suitable for tasks such as image recognition, recommendations, and decision-making models.
Mar 20, 2020 1,434 words in the original blog post.
The tutorial covers the importance of state management in software applications, specifically for web and mobile apps. It introduces MobX as a simple and scalable state management solution that can be used with React. The tutorial guides readers through building a shopping cart application using Symfony and React, leveraging MobX to manage the state of the application data. The application is structured into components such as Product and Cart, which are connected to the MobX store. The tutorial also covers how to use decorators from MobX to make the code more readable and maintainable. Throughout the tutorial, readers learn about the benefits of using MobX for state management, including its ability to optimize synchronizing application state with React components and provide a portable solution that can be used with other JavaScript frontend frameworks apart from React.
Mar 20, 2020 2,779 words in the original blog post.
Virtual volunteering has become increasingly important as the COVID-19 pandemic has led to a significant decline in in-person volunteer opportunities. Many nonprofits are now seeking virtual volunteers who can provide support and guidance remotely, filling gaps in their services and helping people make a positive impact from home. Virtual volunteering offers a safe and creative way for individuals to help others while also providing a much-needed break from the isolation of remote work. A variety of virtual volunteer opportunities exist across different skill sets and needs, including mentorship, career advice, empowerment, micro-mentoring, tech support, community outreach, language access, and more. Organizations such as CodePath, MicroMentor, and Volunteer Vision offer virtual mentoring programs, while others like Be My Eyes and Crisis Text Line provide critical support to individuals in need. Additionally, many charitable organizations are seeking virtual volunteers with specific skill sets, such as website updating or data entry, to help them respond to the COVID-19 crisis. Donations are also a vital way for individuals to support their favorite nonprofits during this challenging time.
Mar 20, 2020 1,055 words in the original blog post.
This tutorial provides a step-by-step guide to implementing a click-to-call button in a Laravel application using the Twilio Programmable Voice API. The process involves setting up a new Laravel project, installing the required dependencies, authenticating with the Twilio account, and creating a form to collect the user's phone number. Once the form is submitted, the application uses the Twilio SDK to place an outbound call to the provided phone number, playing a message with a pseudo confirmation pin before hanging up. The tutorial covers all necessary steps, including generating routes for the application, testing the implementation, and registering for any available resources. With this guide, developers can build their own click-to-call buttons in Laravel applications using Twilio's Programmable Voice API.
Mar 19, 2020 1,542 words in the original blog post.
This article demonstrates how to build an ASP.NET Core web application that uses Twilio Programmable SMS and the Twitter API to receive notifications when someone mentions you on Twitter. The application allows users to retweet these mentions with a quick text response, without having to install an app on their phone or open their phone's browser. The project requires setting up a Twitter developer account, creating a Twilio phone number, building an ASP.NET Core web application, and deploying it to Azure. The application uses the Tweetinvi library to interact with the Twitter API and the Twilio.AspNet.Core library to handle SMS messages. Once deployed, the application can be tested by sending mentions on Twitter, which will trigger text message notifications that can be responded to with a quick "Yes" to retweet the mention.
Mar 19, 2020 3,993 words in the original blog post.
Twilio Conversations enables unified spaces for users on different platforms to communicate, while Twilio Studio is a visual application builder that allows handling messaging flows without writing code. Integrating Studio and Conversations with SMS involves configuring the Default Conversations Service, associating a Twilio number with it, and setting up a Messaging Service to automatically create new Conversations for each unique sender. A Conversation Scoped Webhook Resource links the Studio Flow to the Conversation. The process also includes creating a Twilio Function to dynamically generate this webhook, configuring the Conversations webhooks, and accessing status callbacks and chat transcriptions through Functions.
Mar 19, 2020 1,677 words in the original blog post.
Twilio TV aims to entertain and inform a global network of developers by delivering video content that can be engaged with both live and on demand. The platform features various shows, including "The Baby Developer Show", "BubbleSort - A Developer Game and Variety Show", and "Coding with Layla", which focus on different aspects of web development, game development, and .NET development. Other shows include "Follow Up Fridays" for checking out tech news and games, "Friday Foolery" for messing around with new tools, and "Twilio Insiders" for an AMA and pair coding session featuring Twilio engineers and product managers. The platform also features on-demand content on its YouTube channel, including developer interviews, tutorials, and showcases of creative projects built with Twilio.
Mar 19, 2020 1,287 words in the original blog post.
Setting up work from home agents with Twilio Flex can be achieved by changing the default codec to Opus, which delivers higher voice quality while using less bandwidth, and utilizing the Twilio Voice Client for routing calls. A company in the US was able to keep their existing telecom infrastructure intact while implementing a solution that allowed their 800 contact center agents to work from home using Twilio Flex and the Twilio Voice Client, with modifications made to the client-voice function to route calls to the correct destination. The changes can be made through the Flex Configuration API or by modifying existing functions, and it is recommended to use a secure solution in a production environment.
Mar 19, 2020 823 words in the original blog post.
Several popular libraries are available for making HTTP requests in Node.js, including the built-in `http` and `https` modules, Got, Axios, SuperAgent, and node-fetch. Each library has its own strengths and weaknesses, with varying levels of complexity and functionality. For example, the built-in `http` module requires manual parsing of response data and does not support HTTPS by default, while Got is a lightweight library that uses promises and is easy to use, but does not parse JSON responses automatically. Axios is another popular option that parses JSON responses by default and allows for concurrent requests with `axios.all`. SuperAgent offers additional functionality such as query parameters and automatic parsing of response data. node-fetch is a lightweight module that brings the browser library `window.fetch` to Node.js with minimal code. The choice of library depends on the specific needs of the project, including desired level of complexity and functionality.
Mar 19, 2020 1,094 words in the original blog post.
Coronavirus FAQ Chatbot Template Now Available to Health Organizations` is a chatbot template provided by Twilio, based on the World Health Organization's COVID-19 FAQ. The template aims to provide timely, accurate, and trusted health information to public health organizations, hospitals, and health-focused non-profits. It can be deployed across various communication channels, including SMS, voice, Facebook Messenger, and webchat. The chatbot is powered by Twilio's Language Understanding platform, Autopilot, and allows users to ask questions in a variety of ways while getting the right answer. The template provides customization options through the Twilio Console, enabling organizations to update topics, examples, queries, and training data as needed. It also includes features for expanding functionality, adapting channels, and handing off to human consultations if necessary. The goal is to help health organizations accelerate the development and deployment of communications apps that can aid in the coronavirus response.
Mar 19, 2020 952 words in the original blog post.
This tutorial provides a comprehensive guide on creating a simple notification system using Twilio CLI, Programmable Voice, and Programmable Messaging. The author outlines the prerequisites for setting up the project, including obtaining a Twilio account, installing Twilio CLI, and configuring the login credentials. The tutorial then covers how to list available phone numbers, purchase an incoming phone number, and test the Twilio CLI by sending a simple message to a mobile device. Next, it explains how to create a CSV file containing the information for recipients, including name, date, hours start, and hours stop. The author provides a bash script that parses the CSV file and contacts the recipients accordingly, using either SMS or voice messages depending on the channel specified in the CSV file. Finally, the tutorial offers suggestions for improving the script, such as adding email as a channel option and sending notifications using Twilio APIs instead.
Mar 18, 2020 1,441 words in the original blog post.
The article describes how a volunteer support line was built for a local community in the UK using Twilio Studio, a tool for creating and managing communication workflows. The flow allows incoming SMS messages to be forwarded to multiple volunteers, while incoming voice calls trigger a recording of a message by a volunteer team member, which is then sent to other volunteers via SMS. To build this system, users need a Twilio account, which can be upgraded from Trial to paid status. The Studio Flow is created using an import JSON definition and customized to include the real phone numbers of multiple volunteers. Once complete, the flow is published and hooked up to a real phone number, allowing it to handle incoming calls and SMS messages.
Mar 18, 2020 1,382 words in the original blog post.
You are receiving emails with Python, Flask, and Twilio SendGrid. You set up Twilio SendGrid's Inbound Parse feature, which simplifies the process of receiving emails based on webhooks. To do this, you authenticated your domain with Twilio SendGrid, added DNS records to your domain, and configured a Flask application to receive incoming emails. The application defines a single route that prints email information to the console when an incoming email is received. You used ngrok to create a public URL that SendGrid can use to forward requests to your locally running Flask application. Finally, you registered the webhook with SendGrid and defined a subdomain on which you will receive emails. The subdomain needs to be defined in your domain provider's DNS configuration with an MX record.
Mar 18, 2020 2,411 words in the original blog post.
This tutorial describes how to integrate Twilio's VoIP service with 3CX, a free IP Private Branch Exchange (PBX) system. The integration allows users to make and receive phone calls using their existing VoIP phones or mobile devices, while also providing features such as caller ID, call routing, and access control. To accomplish this, the tutorial uses Python and the Twilio library to automate tasks, including updating Twilio's IP Access Control List when the user's external IP address changes. The integration is completed by configuring 3CX to connect with Twilio's SIP Trunking solution, which provides a robust and flexible connection to the Public Switched Telephone Network (PSTN).
Mar 18, 2020 1,792 words in the original blog post.
To build a location-aware WhatsApp weather bot with Ruby, Sinatra, and Twilio, one needs to install necessary dependencies, configure the sandbox, set up the Ruby application, receive and process location messages, and send a localized weather report using the Dark Sky API. The application uses Sinatra to receive incoming webhooks from Twilio, which are then processed in the `bot.rb` file. If a location message is received, it makes an HTTP request to the Dark Sky API using a custom class to retrieve the weather forecast for that location. The response is then sent back to the user as a localized weather report.
Mar 18, 2020 1,372 words in the original blog post.
This tutorial teaches developers how to route customer service calls to agents in a PHP application using Twilio Programmable Voice and Laravel. To achieve this, they need to set up a new Laravel project, install the Twilio PHP SDK, and create a CallController that handles incoming call requests. The controller uses TwiML to construct a response when a call comes in, including gathering user input and redirecting to a third-party phone number or inspirational message. The tutorial also covers registering routes for the CallController, updating webhook settings with ngrok, and testing the application.
Mar 17, 2020 2,006 words in the original blog post.
Twilio.org is committing $1.5 million to support global and local efforts in the COVID-19 crisis response, including funding organizations driving medical responses and serving low-income populations. The organization is also providing crisis response support through its products, offering Twilio credits for thousands of calls and messages, and expanding eligibility for volunteer developers building apps related to coronavirus response. Additionally, Twilio is highlighting employee volunteer opportunities and matching employee donations 2:1 for charitable organizations focused on COVID-19 response. The company is also taking steps to support customers, employees, and partners, including keeping hourly employees on the payroll, providing best practice content and product support, and conducting virtual events and interviews.
Mar 17, 2020 819 words in the original blog post.
At a time when COVID-19 is affecting many lives and organizations are responding to the crisis, Twilio's distributed workforce has enabled it to maintain operational continuity with its global customer base. The company has successfully migrated to a fully virtual operational model and is now supporting customers in developing new use-cases to communicate with teams and customers amid the pandemic. Additionally, Twilio is taking on HIPAA-compliant workloads and providing resources to help organizations comply with regulations, while also making grants from its Impact Fund to assist with recovery efforts worldwide.
Mar 17, 2020 683 words in the original blog post.
In today's critical election landscape, protecting inboxes from phishing attacks is a civic duty that requires attention to Domain Messaging Authentication Reporting and Conformance (DMARC) records, Sender Policy Framework (SPF), Domain Keys Identified Mail (DKIM), multi-factor authentication, and monitoring email traffic for abuse vectors. The lack of focus on these security measures among the private sector has significant implications, as seen in recent phishing attacks against Burisma and Democratic Presidential Candidates. Twilio SendGrid's 360-degree view of traffic and senders helps identify malicious activity, while machine learning processes scan content for abuse vectors. A holistic approach to compliance is crucial to prevent bad actors from taking advantage of the election "noise" to barrage innocent people with socially engineered attacks, ultimately safeguarding business communications and customers' trust. By prioritizing compliance, deploying these security measures, and advocating for tools to simplify DMARC publication, individuals can help insulate themselves and their customers from phishing attacks.
Mar 17, 2020 1,362 words in the original blog post.
Authy Desktop is now available in Beta for Linux users. Initially launched in 2014 as a Chrome browser app, it later became a standalone desktop app for macOS and Windows. However, due to Google's decision to end support for Chrome Apps, the Chrome version was discontinued. The new Authy Desktop for Linux app has been released into public beta, incorporating the latest UI with grid or list view options and a search bar. It is supported by Ubuntu, Debian, Manjaro, Fedora, and potentially other distributions.
Mar 17, 2020 452 words in the original blog post.
Java 14 is set to be released on March 17th and brings several new features for developers, including Improved NullPointerExceptions that provide more detailed error messages, Switch Expressions that allow for cleaner code without fall-through cases, Text Blocks that enable embedding other languages in Java source code, Pattern Matching for instanceof tests that improves code readability, and Records that simplify the creation of data holder classes with automatic generation of hashcode, equals, and toString methods. These features are designed to improve developer productivity and performance, and will be available as preview features until their release as part of the language.
Mar 16, 2020 2,006 words in the original blog post.
Dart is a client-optimized language for fast apps on any platform, developed by Google to build mobile, desktop, backend, and web applications. Dart code is easy to write without hassle with memory management and build systems. Twilio's Programmable SMS API makes sending and receiving SMS easy, allowing developers to create tools for the command line on macOS, Windows, or Linux. The my_twilio package structure includes a pubspec.yaml file, a lib folder containing src files, an example directory, and a main.dart file that uses the package to send text messages via Twilio's API. The package can be used in other Dart projects by adding it as a dependency in the pubspec.yaml file. A standalone executable version of the package can be created using dart2native, which takes arguments such as --from, --to, and --body to customize the message. The my_twilio package provides a simple way for developers to send text messages via Twilio's API from Dart code.
Mar 13, 2020 3,221 words in the original blog post.
This tutorial guides users through creating an MMS messaging app using Django and Twilio Programmable SMS. The process involves setting up a free Twilio account, provisioning a phone number, and creating a virtual environment for the project. Users are then prompted to add necessary components such as Python 3.6 or newer, a text editor, ngrok, and a smartphone capable of sending and receiving MMS messages. Once these requirements are met, users can configure their project settings, create URL patterns, and add a webhook to their Twilio phone number. The tutorial concludes with adding view logic to read inbound SMS content and determine the response based on the content. However, it also highlights limitations of Twilio MMS such as formatting and resizing media files, limits on size and amount of media files, and considerations for non-MMS enabled devices and carriers.
Mar 13, 2020 1,906 words in the original blog post.
The author of the article is Delores Diei, a software engineer who created a microlearning application using Python and Twilio SendGrid. The application delivers daily chapters from the Python Language Reference to an email address. To build this application, one needs to create a GitHub repository, install necessary packages, scrape data from the Python documentation, set up an email service using Twilio SendGrid, deploy the application on Heroku with a scheduler add-on, and configure environment variables. The application is designed to be automated, sending daily emails at a specified time.
Mar 13, 2020 2,310 words in the original blog post.
Twilio Video Recordings has introduced four new features to provide developers with increased flexibility and control: the Video Compositions API, Composition Hooks API, Public Key Encryption for Recordings & Compositions, and External AWS S3 Storage. These features allow developers to create custom video layouts, automate recording workflows, enhance security with public key encryption, and store recordings in external storage buckets. With these updates, businesses can now tailor their recording services to meet specific use cases and security needs, ensuring compliance with industry regulations. The new features are available as part of the Twilio Enterprise Edition.
Mar 13, 2020 791 words in the original blog post.
The Twilio team has released three open-sourced video collaboration apps that can be deployed in five minutes or less, providing a fully functioning video app for developers to use as a reference. These apps are available on GitHub under the Apache 2.0 license and showcase the Programmable Video capabilities, offering a canonical reference for developers building out their communication solutions. The applications provide features such as connecting to a room, publishing audio & video tracks, screen sharing, defining participant bandwidth usage, and monitoring network conditions. The Twilio CLI RTC plugin supports quickly developing and deploying real-time communication applications using the Twilio Runtime.
Mar 12, 2020 847 words in the original blog post.
Laravel 7 has released, bringing new and exciting features. Custom casting with Eloquent allows for decoupling data between the database state and application state on read and write. This feature enables storing data one way in the database and interacting with it another way in the application. Blade components offer a server-side alternative to front-end frameworks like React or Vue, allowing for reusable code to solve repeated problems. The new HTTP client wrapper simplifies making common HTTP requests predictably and memorably, while the test runner provides improved visuals and halts on the first failure by default. These features aim to simplify tasks and improve developer productivity.
Mar 11, 2020 1,486 words in the original blog post.
A shipment notification service is built using Python, Flask, Twilio, and EasyPost APIs. The service allows for automatic tracking of shipments and sends notifications via SMS when a shipment reaches certain stages, such as being out for delivery or delivered. The service handles webhook events from EasyPost, processes them asynchronously, and uses Twilio to send SMS notifications. It also includes features like event deduplication, security measures, and the ability to scale horizontally. The service is designed to be scalable and can handle high volumes of traffic.
Mar 09, 2020 3,275 words in the original blog post.
This SMS dashboard in Java using Spring Boot and Twilio allows users to send SMS messages to multiple recipients with a timely channel for critical notification messages. The development environment includes Java 8 or newer, the Spring Initializr tool, and Twilio account setup. The front-end is configured using Thymeleaf templating engine, while the back-end uses Spring Web and Twilio helper library. A new controller class, SMSController, is created to handle sending messages, which initializes Twilio with the account SID and Auth Token from application.properties. The code also includes a MessageDetails inner class to parse JSON posted in from the dashboard. After setting up the environment and adding dependencies, users can run the application and test it by adding contacts and sending SMS messages.
Mar 09, 2020 1,385 words in the original blog post.
The article is a step-by-step guide to building a WhatsApp chatbot using the Twilio WhatsApp API, PHP, and Laravel. The chatbot allows users to get information about a developer's GitHub profile using their username. To build the chatbot, one needs to have basic knowledge of Laravel, install the necessary packages, set up a Twilio account, and obtain a WhatsApp-enabled Twilio number. The chatbot is built using a controller that processes incoming messages, makes HTTP requests to the GitHub API, and sends responses back to the user via WhatsApp. The article also covers setting up a webhook, exposing the application to the internet, testing the chatbot, and provides resources for further learning.
Mar 06, 2020 1,796 words in the original blog post.
The COVID-19 pandemic highlights the importance of effective public health crisis communications using technology. Organizations working in government, healthcare, and non-profit sectors can apply best practices such as reducing hotline backlogs by using IVR, chatbots, and AI to provide efficient service; combating misinformation with proactive alerts; reaching more people through preferred communication channels; and automating patient appointment reminders and scheduling. These strategies can help organizations scale response quickly, iterate on what's working best, and deliver critical messages to constituents in a timely manner. Additionally, industry trends such as the digitization of customer service and increased mobile access to contact centers are supporting these efforts, and Twilio offers resources and support to help organizations implement these best practices.
Mar 05, 2020 1,256 words in the original blog post.
Sending one-time passwords via WhatsApp using PHP, Laravel, and the Twilio API for WhatsApp allows businesses to engage with customers securely and in real-time. To achieve this, developers need to set up a database, install the Twilio SDK, and modify the registration logic to include generating an OTP at the time of registration and delivering it via the Twilio API for WhatsApp. The application should then update the view to include the phone_number field in the registration form. Testing involves running the application with `php artisan serve` and navigating to the registration page to send an OTP, which will result in a WhatsApp message shortly with the OTP.
Mar 04, 2020 1,847 words in the original blog post.
This tutorial guides users through setting up a two-way email to SMS forwarding solution using Twilio SendGrid and Zeit. The process involves creating a shared inbox, sending inbound SMS messages to emails, and vice versa. Users need to set up their Twilio account, create a SendGrid API key, and configure MX records for the dedicated subdomain domain. They can deploy the application to Zeit Now using Quick Deploy or command-line setup. Once deployed, users can test the forwarding by sending an SMS to the Twilio phone number, which should receive an email with a reply link, allowing them to respond directly. The solution is simple and can be extended to support multiple inbox-to-phone number mappings using an array or database.
Mar 04, 2020 1,630 words in the original blog post.
The project creates a daily SMS with a countdown to NASA's Astronomy Picture of the Day using Python, Twilio, and Azure Functions. The code uses environment variables to store credentials for the NASA API and Twilio account, and imports necessary modules such as `requests` and `emoji`. It sets up a countdown timer based on the current date and target date, and retrieves data from the NASA API to include in the SMS message. The code also uses Twilio's messaging service to send the SMS with the picture URL and title of the day's astronomy image. The project can be deployed to Azure for production use.
Mar 04, 2020 4,259 words in the original blog post.
Managing multiple versions of Java and related tools can be difficult and time-consuming. Enter SDKMAN!, a tool that allows users to easily install, select, and manage different versions of Java, as well as other development tools like Maven, Gradle, and VisualVM. With SDKMAN!, users can quickly switch between versions and have them available for use in the terminal or IDEs like IntelliJ IDEA and Eclipse. The tool also provides features like tab completion and automatic environment variable updates, making it easier to work with multiple versions of Java and related tools. By using SDKMAN!, developers can save time and reduce frustration when working with different versions of Java and other development tools.
Mar 04, 2020 877 words in the original blog post.
Twilio Functions provides a complete runtime environment for executing Node.js scripts, integrating the popular package manager npm and offering a low-latency Twilio-hosted environment. To connect to a local or remote database such as MySQL using Twilio Functions, one needs to sign up for a free Twilio Account, configure MySQL on a local machine, expose network services with ngrok, and create a new Function in the Twilio Console. The functions script accepts context object information about runtime configuration variables, environment variables, HTTP parameters from an incoming request, and callback function completion of code execution. The database connection is established using the exposed service's host, port, user, password, and database values obtained from validating the exposed services. The MySQL instance can be created with a user table and inserted some values to demonstrate its functionality. Twilio Functions allows developers to read and write data from a database in an object-oriented programming approach in JavaScript. Debugging functions involves addressing specific errors related to MySQL authentication protocol requested by server; consider upgrading MySQL client, and testing the functions quickly using Twilio Studio or buying a phone number to receive incoming calls and connect them to the functions widget.
Mar 04, 2020 1,217 words in the original blog post.
Twilio Startups is a program that helps startups accelerate their growth through access to resources such as seed funding, mentorship, and a global network of investors and talent. The program's CEO, David Brown, emphasizes the importance of finding product-market fit faster and being able to scale quickly. Accelerator programs like Techstars provide founders with an immersive learning environment that allows them to benefit from years worth of learning in just a few months. The program looks for indications of long-term success, not just immediate financial payoff, and places emphasis on the founders themselves and their team dynamics. Graduating from a Techstars accelerator program is not the end of the journey, as additional resources and programs are available to help founders at every stage.
Mar 04, 2020 1,081 words in the original blog post.
This guide provides a step-by-step tutorial on creating a contact form in PHP with Laravel and Twilio SendGrid. The tutorial covers installing dependencies, setting up the SendGrid account, creating a controller to handle email functionality, and testing the application. The application allows users to input their email addresses, subject, and body, which are then sent via email using Twilio SendGrid. The guide also includes tips for extending the application, such as adding a MySQL database to store user information.
Mar 03, 2020 1,119 words in the original blog post.
npm scripts allow developers to create custom CLI tools and automate tasks in their Node.js projects. They can be used to set up build, dev, or start scripts, as well as perform pre- and post-scripts that can chain commands together without convoluting the script. Environment variables are also augmented when running a command or script through npm run..., providing access to general npm configuration and project-specific settings. Argument passing and parsing can be done using two methods: directly passing arguments to the actual command, or using npm's built-in argument parser. Useful tools such as rimraf, ncp, npm-run-all, cross-env, and others can help bring npm scripts to the next level by providing additional functionality for tasks like deleting build artifacts, running linters before tests, and working with environment variables across platforms.
Mar 03, 2020 1,538 words in the original blog post.
Twilio has canceled its customer events and involvement in third-party industry events for the month of March due to COVID-19 concerns. The decision is made with caution to protect its community, including employees, customers, and partners, amidst heightened health concerns. Several impacted events include Twilio Engage + Superclass events, Twilio Talks, and other customer and third-party events scheduled in various cities across the US and internationally. Additionally, Twilio has canceled or postponed several industry conferences and events, including SXSW, Enterprise Connect, and SIGNAL, with updates to be provided based on developments with COVID-19.
Mar 03, 2020 419 words in the original blog post.
Sender Policy Framework (SPF) is a crucial email authentication method designed to prevent phishing and spoofing by verifying that incoming emails are genuinely from the domain they claim to be. It does this by checking the SPF record, a text entry in the domain's DNS, which specifies the authorized mail servers allowed to send emails on behalf of the domain. The SPF record contains various mechanisms such as INCLUDE, A, MX, IP4, and IP6 to validate the sender's IP address, while the PTR mechanism is discouraged due to technical limitations. SPF is part of a broader email security strategy, often used alongside Sender ID, DKIM, and DMARC to enhance email authenticity and protect brand reputation. Despite its limitations, SPF acts as a deterrent to malicious actors and helps maintain trust in email communications. Twilio SendGrid provides tools and documentation to assist users in setting up and validating their SPF records to ensure effective email delivery and security.
Mar 03, 2020 1,571 words in the original blog post.
We have built a Secret Santa bot that receives messages, processes them and replies to the users. The bot uses Twilio's WhatsApp API and Flask as the backend framework. It models a database to store the Secret Santa event and its participants. We tested our bot code using pytest and verified its functionality with several test cases.
Mar 02, 2020 5,162 words in the original blog post.
Raising investment is not validation for startups, and they should only do so to develop and scale their business. Founders should understand equity management and fundraising best practices to secure the right investors and avoid giving away too much equity too early. A well-structured Cap Table is crucial for a startup's success, as it determines the ownership structure and valuation of the company. By keeping the Cap Table simple and aligning it with the company's house filings, founders can make informed decisions about their equity management and fundraising strategy.
Mar 02, 2020 720 words in the original blog post.
You can create a bot that replicates your voice and connects it to a Twilio number, allowing loved ones or customers to reach out to you at any time. Twilio's Autopilot platform now supports playing audio files for conversational bot phone calls, enabling businesses to improve their customers' experience when interacting with IVR bots. By creating tasks that include "listen" and "play" actions, you can train the bot to respond to specific questions or phrases, ensuring a more human-like interaction. The process involves signing up for a free Twilio account, navigating to the Autopilot Console, and creating tasks using JSON code. Once trained, the bot can be tested in the Autopilot Simulator and connected to a Twilio phone number, allowing it to receive calls from multiple users simultaneously. This technology has the potential to increase customer satisfaction and productivity for contact centers by automating basic requests and freeing up human agents to focus on more complex tasks.
Mar 02, 2020 1,366 words in the original blog post.
Tax-related identity theft is a significant issue during tax season, with many taxpayers remaining unaware of necessary safeguards. Despite the Internal Revenue Service's efforts to reduce criminal activity, a pattern of poor practices leaves many online users vulnerable. To protect themselves from tax fraud and identity theft, individuals should use complex passwords, enable two-factor authentication (2FA) on all accounts, be cautious of pop-up storefronts offering tax preparation services, encrypt sensitive documents, file taxes early, and avoid sharing personal information on social media. Additionally, using reputable online tax filing services that offer 2FA can further enhance security.
Mar 01, 2020 570 words in the original blog post.