Home / Companies / Twilio / Blog / November 2019

November 2019 Summaries

39 posts from Twilio

Filter
Month: Year:
Post Summaries Back to Blog
Sending Bulk Emails 3 Ways With Twilio SendGrid And Node.js` discusses three methods to send bulk emails using Node.js and SendGrid: sending multiple emails to a single recipient, personalizing emails with attributes such as subject lines, headers, substitutions, custom arguments, and send times; and sending an array of message objects to different recipients. The article provides code examples for each method, including how to set up the environment, create API keys, and handle errors. It also discusses the current API rate limit and offers tips for customizing emails. The SendGrid API is highlighted as a flexible and feature-rich tool for sending bulk emails.
Nov 29, 2019 1,056 words in the original blog post.
The application sends emails using the Twilio SendGrid API with Action Mailer and updates their status based on the event webhooks sent by SendGrid. To build this, one needs Ruby, Bundler, ngrok, a Twilio SendGrid account, and to set up an environment with Rails. The application is configured to use the sendgrid-actionmailer gem for sending emails via the SendGrid API. An email template is created within the application for sending emails too. A controller is added to receive webhooks from SendGrid and update the Message object based on the custom parameter sent in the event. A route is also set up for this action, and ngrok is used to tunnel the webhook requests to the local machine. The application is tested by sending a message, waiting for the event notification, and updating the status of the email in the list.
Nov 28, 2019 1,721 words in the original blog post.
The tutorial explains how to containerize an existing .NET Core app with Docker and deploy it to Azure Kubernetes Services (AKS). The process involves refactoring the application using cloud-native principles, abstracting infrastructure dependencies, and deploying it to AKS. The tutorial covers various aspects of cloud migration patterns, including lift and shift, refactor, re-architect, and rewrite. It also provides guidance on building a Docker file, creating an Azure Container Registry (ACR), and deploying the application to AKS. The process involves creating a PowerShell script to build the infrastructure, including an AKS cluster and ACR, and then deploying the application to AKS using a YAML file. The tutorial concludes with instructions on how to test the deployed application and remove the test deployment when finished.
Nov 27, 2019 6,866 words in the original blog post.
Twilio, as an electronic communication service provider, is both a processor and a controller of its customers' personal data under European data protection legislation. As a controller of Usage Data, Twilio determines the purposes and means of processing, including how to use the data for billing, routing messages, troubleshooting, and other operational purposes. Although Twilio's role as a controller is limited in scope and time, it requires strong data protection measures to ensure compliance with applicable law. The company's Binding Corporate Rules reflect its commitment to data protection, and it takes precautions regardless of whether acting as a processor or a controller. As a result, Twilio needs to be transparent about its roles and responsibilities regarding customer personal data.
Nov 27, 2019 896 words in the original blog post.
Twilio has announced the launch of its Interconnect exchange in Frankfurt, Germany, expanding its global coverage of private network connectivity locations and providing customers with better call quality options around the world. The new location adds more coverage to Europe, allowing users to select the connectivity option that best suits their security needs. Twilio Interconnect offers network reliability, scalability, and control over sensitive data and mission-critical workloads, making it an attractive option for businesses focused on network performance. With the addition of DE1 in Frankfurt, Twilio is committed to expanding its global coverage of private network connectivity locations, providing customers with better call quality options around the globe.
Nov 27, 2019 328 words in the original blog post.
A developer has built a simple SMS chatbot using Python, Flask, and Twilio's Programmable SMS service. The chatbot can recognize two keywords ("quote" and "cat") in incoming messages and respond accordingly by sending a random famous quote or a cat picture. To deploy the chatbot, developers need to configure a Twilio phone number, create a virtual environment with Python packages, and set up an ngrok tunnel to expose the Flask application to the public internet. The chatbot can be tested by sending SMS messages to the configured Twilio number, and its responses will trigger third-party APIs for quote and cat content. For production deployment, developers should consider using robust web servers like gunicorn or uWSGI and running the service on a cloud server instead of their local machine.
Nov 27, 2019 2,435 words in the original blog post.
To send emails programmatically using the Twilio SendGrid API in Java, start by creating a free SendGrid account and obtaining an API key. Store the API key securely, such as by setting it as an environment variable, to avoid exposing sensitive information in your code. Then, add the SendGrid helper library to your project configuration and create a new class with the necessary imports and content for sending an email. Use the API key from an environment variable to authenticate your request and send the email successfully. Once you've sent your first email, explore other features of the Twilio SendGrid API, such as processing incoming mail, adding attachments, and scheduling mail.
Nov 27, 2019 553 words in the original blog post.
You're sending emails from your Python app with the Twilio SendGrid API and want to attach files, making it straightforward to include attachments using the Twilio SendGrid API. To start, you need a free Twilio SendGrid account and install the Twilio SendGrid Python Library in your project. You should also set up an environment variable for the SendGrid API key to avoid hardcoding it in your code. Running the code in a virtual environment is recommended to isolate the environment. The code uses the base64 module to encode the file as a string, then creates an attachment using the Twilio SendGrid helper libraries and sends the email with the attached file. Finally, you can save the code, set up the environment variable, replace the placeholder values, and run the command to send yourself an email to verify that it worked correctly. With this setup, you can add attachments to your emails sent with Twilio SendGrid and explore more features of the API.
Nov 27, 2019 652 words in the original blog post.
To secure Twilio webhook URLs in Node.js, it is recommended to use HTTPS and HTTP authentication. Additionally, validating the X-Twilio-Signature header, which is a unique string generated by Twilio using the AuthToken as the key, can ensure that only Twilio is interacting with your endpoints. The Twilio Node.js helper library provides a `validateRequest` method to make this process easier, accepting the AuthToken, the X-Twilio-Signature header, the URL of the HTTP endpoint, and the included request parameters. By using this method, you can verify that incoming requests are coming from Twilio and not just a third party trying to access your infrastructure.
Nov 26, 2019 990 words in the original blog post.
To send email attachments with Twilio SendGrid and PHP, a developer must first install the necessary packages such as PHP version 7.0 or higher, Composer, and the `sendgrid/sendgrid` package to access the SendGrid API. A free SendGrid account should also be created, followed by obtaining an API key for authentication purposes. The `vlucas/phpdotenv` package is used to load environment variables into the application. Once the API key is obtained, it can be stored in a `.env` file instead of directly in the code for security reasons. The developer then uses PHP to create a SendGrid Mail object and adds attachments to the email using base64 encoding. Finally, the email is sent to a recipient by calling the `send` method on the SendGrid API instance, and the response status code is printed to the console to verify successful transmission.
Nov 26, 2019 523 words in the original blog post.
A developer built an affirmations button with Twilio Internet of Things that sends a reassuring text message when pressed. To make the button more portable, they used Flic buttons, which can be configured to do various things and pair with phones via Bluetooth. The developer created a Twilio Function using the Serverless Toolkit to fetch affirmation data from the affirmations.dev API and send an SMS message. They deployed the function, paired it with their phone, and tested its functionality, receiving an SMS affirmation in response. The project showcases how to use Flic buttons with Twilio Functions for custom IoT applications.
Nov 26, 2019 1,032 words in the original blog post.
Twilio has announced the launch of its SMS service for GitHub Actions, allowing developers to send SMS notifications from their workflows. To get started, users need to create a Twilio account and obtain a phone number with SMS capabilities. They must also set up account credentials, such as an API Key and Secret pair, which can be securely stored using GitHub's secret store. The Twilio SMS Action can be added to a GitHub Actions workflow by using the `twilio-labs/actions-sms` action and providing the necessary credentials and phone numbers. Users can test their workflows by creating a release and triggering the workflow, which will send an SMS notification to the specified phone number.
Nov 26, 2019 1,546 words in the original blog post.
You can apply a promo code from Twilio to your existing account in two ways, either by upgrading your trial account with a specific button or by adding funds to an existing non-trial account. To upgrade, click the "Upgrade Project" button and enter the promo code in the required field after disabling automatic recharge. For existing accounts, go to the Billing section, add funds, switch to the "Promo Code" section, and enter the promo code to apply it. If you encounter any issues, contact Twilio Support for assistance.
Nov 26, 2019 487 words in the original blog post.
Securing Webhooks from Twilio in PHP` discusses the importance of securing webhooks from Twilio, a service that enables interactions with events such as SMS messages. To protect against counterfeit requests, Twilio includes a signature header `X-Twilio-Signature` in every webhook sent to a server. The Twilio SDK for PHP provides a `RequestValidator` class that can perform a comparison of the request signature, URL, and data to ensure only genuine requests are handled. By using this class and verifying the signature on every endpoint that handles webhooks, developers can protect their applications from manipulation by malicious actors. It is also recommended to turn on TLS and use HTTPS to encrypt requests and prevent man-in-the-middle attacks.
Nov 26, 2019 555 words in the original blog post.
Cyber Monday is a popular shopping event that attracts cybercriminals and hackers due to its popularity and the availability of public WiFi. Consumers should be cautious when shopping online during this period, as there are likely to be many bogus websites and phishing emails. To stay safe, it's essential to protect passwords on high-risk sites, use a password manager, enable two-factor authentication (2FA) wherever possible, and monitor credit card and debit card transactions. Additionally, consumers should only visit legitimate websites by manually entering the URL or via Google search results, be wary of email offers that seem too good to be true, and consider using proactive SMS fraud alerts from their financial institutions.
Nov 23, 2019 1,448 words in the original blog post.
Laravel allows developers to send notifications in their PHP applications using various channels such as mail, SMS, Slack, and database. To send notifications through WhatsApp, a custom notification channel needs to be created, which involves setting up the Twilio API for WhatsApp. The process includes creating a new directory for the notification channel, defining a message class, and implementing the sending of messages. Additionally, a notification class is created that will make use of the custom notification channel to send notifications to users when their order has been processed. The application can be tested by running it and clicking on the "Place Order" button, which should trigger the sending of a WhatsApp notification to the user's phone number.
Nov 22, 2019 2,150 words in the original blog post.
Securing Twilio webhooks in Python is crucial due to the risks associated with them. Webhooks can be vulnerable to phishing attempts and TwiML attacks, where an attacker can trick a webhook into performing actions on behalf of a user. Input data should never be trusted without validation, and webhooks should validate Twilio requests using cryptographic signatures. Verifying signatures eliminates replay attacks, but also requires the use of end-to-end encryption by hosting webhooks on HTTPS endpoints. With these measures in place, webhooks can be secured to prevent malicious activity.
Nov 22, 2019 1,412 words in the original blog post.
The Twilio PHP Helper Library is a tool used for sending SMS messages in PHP applications. To install it without using Composer, one needs to create a new directory, download and decompress the library, test its installation by sending an SMS, purchase a Twilio phone number, write PHP code to send an SMS, and run the script. The process involves logging into the Twilio console, finding a phone number, purchasing or obtaining a phone number, writing PHP code with placeholders for Account SID and Auth Token, substituting these values, testing the script, and running it in a console. This method allows developers to use the library without relying on Composer.
Nov 21, 2019 828 words in the original blog post.
<|fim_start|>` The provided paragraph is a summary of the text that covers key points about building a video chat application using ASP.NET Core, Angular, and Twilio Programmable Video. The summary highlights the use of the Twilio .NET SDK to generate JWTs for client-side code and get room details via the ASP.NET Core Web API, as well as integrating the Twilio JavaScript SDK with the Angular SPA. It also covers additional resources available for further learning and a working example of the application on Azure.
Nov 20, 2019 6,545 words in the original blog post.
Serverless applications are becoming increasingly popular due to their cost-effectiveness, quick deployment times, and pay-as-you-go pricing models. This tutorial demonstrates how to send serverless emails using Twilio Functions and SendGrid, two leading cloud-based platforms. To get started, developers need to create accounts with Twilio and SendGrid, install the necessary tools, and set up a project structure. The tutorial then guides users through creating a server function that leverages the `@sendgrid/mail` npm package to send emails via SendGrid. After deployment, users can test their functions locally or remotely using a URL copied from the deployment screen. The tutorial concludes by highlighting the benefits of using Twilio and SendGrid for serverless email sending, making it easier for developers to integrate email functionality into their applications without worrying about infrastructure costs.
Nov 20, 2019 750 words in the original blog post.
A WhatsApp chatbot can be built using Python and the Twilio API for WhatsApp, with the Flask framework being used as a web application. The chatbot needs to define an endpoint that is configured as a webhook so that Twilio can communicate with it. The Flask application defines a /bot endpoint that listens to POST requests, which analyzes the message sent by the user and provides an appropriate response. The chatbot logic involves searching for keywords "quote" and "cat" in incoming messages and returning a quote or cat picture accordingly. Third-party APIs such as Quotable API and Cat as a Service API are used to supply original quotes and cat pictures. The service is run on port 5000, and ngrok is used to allocate a temporary public domain that redirects HTTP requests to the local port. Twilio's WhatsApp Sandbox Settings need to be updated with the ngrok URL, and the request method should be set to HTTP Post.
Nov 20, 2019 2,369 words in the original blog post.
The #100DaysOfCode challenge is a 100-day coding marathon where participants commit to writing code for at least an hour each day. TwilioQuest, a video game, can help support this journey by providing interactive real-world services that allow players to write code and interact with APIs such as sending automated SMS messages or creating video apps. The game also covers essential topics like learning programming languages like Python and JavaScript, understanding Git and GitHub, and making open-source contributions. With its content and gameplay, TwilioQuest can help keep momentum going during the 100-day challenge, allowing participants to focus on their projects and improve their coding skills.
Nov 20, 2019 657 words in the original blog post.
This tutorial demonstrates how to create a fax portal using Twilio's Programmable Fax service, Python 3, and Flask. The application allows users to upload a PDF file and send it to a specified Twilio phone number via fax. The tutorial covers setting up the project dependencies, configuring the Flask application with Twilio and ngrok, and creating routes for uploading files, sending faxes, and receiving status updates via SMS. The code is written in Python 3 and uses Flask as the web framework, Twilio's Python Helper Library to interact with the Programmable Fax service, and ngrok to expose the application to the internet.
Nov 19, 2019 1,782 words in the original blog post.
Facebook is deprecating Account Kit and will no longer support it starting in March 2020. If your app uses Facebook account kit for sign-up and login, you'll need to find an alternative solution. Twilio Verify is a proven replacement that allows users to register and log in without passwords using SMS, voice, WhatsApp, or email. Implementing Twilio Verify requires minimal code change and can be done quickly, with proven performance and global coverage.
Nov 19, 2019 412 words in the original blog post.
You're sending emails from your Node.js app with the Twilio SendGrid API, and now you want to attach files to your emails. The Twilio SendGrid API makes it straightforward to include attachments to the emails that you send. You'll need to have a free Twilio SendGrid account, set up environment variables for your API key, install the Twilio Sendgrid Node Library, and use the Node File System API to read and encode your file as a base64 string. Then, create an email message with the attachment property, passing an array of attachment objects or just one single attachment. Finally, send the email using the `send` method of the sgMail object, and verify that it works by checking your inbox.
Nov 19, 2019 686 words in the original blog post.
This summary provides an overview of how to verify phone numbers using Twilio Verify in a Laravel PHP application. The process involves creating a new Laravel project, installing the Twilio PHP SDK, setting up a MySQL database, and implementing authentication logic for registering and verifying users. The tutorial also covers building views for registration, verification, and home pages, as well as updating routes for the application. The code includes examples of how to validate phone numbers using Twilio Verify, create users with verified phone numbers, and authenticate users manually.
Nov 19, 2019 2,389 words in the original blog post.
This summary highlights the importance of storing sensitive information like API keys securely in .NET applications, specifically when using Twilio. It explains how environment variables can be used to store these secrets and provides step-by-step instructions on how to set and manage them using PowerShell and the Windows Console. The tutorial covers the basics of ASP.NET Core 3.0 configuration management and its relevance to secure storage of user secrets. Additionally, it mentions the use of GUI tools for managing environment variables and provides resources for further learning on securing app secrets in ASP.NET Core development.
Nov 18, 2019 2,233 words in the original blog post.
The 2020 US presidential campaign is utilizing email outreach as a key part of their digital strategy, with candidates and campaigns sending emails to engage potential voters, raise contributions, and educate subscribers about their platforms. The Twilio study monitored emails sent to a single Gmail address over 30 days, finding that only 3.8% landed in the primary tab, while 21.3% ended up in the spam folder and 74.8% were sorted into the promotions folder. This suggests that many campaigns are struggling to reach their intended audiences with effective email outreach, and that they need to improve their authentication and security measures to protect against phishing and spoofing attacks. The study recommends best practices for campaigns to consider, including aligned email authentication and a reject policy, to better ensure that candidate emails from address and domain are hardened against spoofing and other threats.
Nov 15, 2019 851 words in the original blog post.
You can use this feature to create a waiting room functionality, have asynchronous tasks change what is happening on phone calls as other parts of your app work on heavier computation without leaving the phone call hanging. You can also use it to kill all of your currently active calls in case you mess up during development. Additionally, you can end a phone call automatically or redirect the call to a new URL that provides updated TwiML to use.
Nov 14, 2019 1,103 words in the original blog post.
Here's a neutral and interesting summary of the provided text in one paragraph: To update Twilio phone calls in real-time with Node.js, developers can use the Twilio REST API to redirect existing calls to new TwiML URLs. This allows for dynamic updates during a call without rigid scripting. Setting up an Express server receives incoming calls and uses Twilio's Twiml to pause the call until it is asynchronously updated. To set up this functionality, developers need to install necessary libraries, create an Express app, configure their Twilio account, and use ngrok to make the app publicly accessible. Once the setup is complete, developers can update a live call by redirecting it to a new URL with updated TwiML or directly giving TwiML to update the call. This enables features like waiting room functionality and asynchronous tasks without leaving the phone call hanging.
Nov 14, 2019 1,061 words in the original blog post.
Miguel Grinberg, a developer with a Master's degree in Computer Science, has joined the Developer Voices team at Twilio. He is an avid coder and Python enthusiast who has been active in open source projects for years. Miguel learned to code from a young age and has worked with various programming languages including Assembly, C, C++, Java, Smalltalk, Ruby, PHP, JavaScript, and his favorite, Python. He created his own blogging platform using Flask, which led to the creation of "The Flask Mega-Tutorial" and an O'Reilly book on Flask. Miguel values sharing knowledge as a superpower that allows him to do good, and he plans to increase the number of Python articles in the Twilio blog with contributions from himself and others. He invites readers to share their projects and collaborate with him through various channels.
Nov 13, 2019 660 words in the original blog post.
You've created a system that allows customers to reply to transactional emails sent by businesses, empowering them to respond and potentially initiate another order. The system uses Twilio SendGrid Inbound Parse to process incoming email responses, which are then used to trigger further actions, such as sending a new email with the updated order details. This setup enables businesses to provide better customer service and improve their overall transactional email experience.
Nov 13, 2019 803 words in the original blog post.
Twilio is a cloud communication platform that provides programmable messaging, voice, and video services. Twilio Functions As A Service allows developers to develop, deploy, and run event-driven functions in the cloud without maintaining infrastructure. To send Twilio Programmable SMS using the new Twilio CLI, developers need to install the Twilio CLI, create a Twilio account, and configure their project by installing the serverless plugin. The serverless function can then be deployed and used to send SMS messages to specified recipients.
Nov 12, 2019 634 words in the original blog post.
The Twilio API for WhatsApp now supports read receipts and location messages, enhancing customer engagement on the platform with deeper insights into messaging efficacy. Deliverability Insights are now available to improve campaign effectiveness by measuring whether end-users have seen a message. The location message feature is being extended to all developers, enabling businesses to provide delightful customer support experiences through features such as sending store addresses or confirming delivery locations. With these new features, the Twilio API for WhatsApp aims to meet users where they are, across various regions, and provide a rich and universal messaging experience.
Nov 12, 2019 395 words in the original blog post.
A developer can rapidly build and deploy a contact center using Twilio Flex to save lives during natural disasters. The contact center categorizes incoming calls, routes them to the right team, and integrates different tools into Flex. The setup involves defining who the call center is for, categorizing inbound calls, routing calls to volunteers with specific skills, and showing a custom interface for each type of call. The developer uses Twilio Studio to categorize calls, Taskrouter to split calls into queues based on volunteer skills, and Flex to show different tools to volunteers depending on the task type.
Nov 11, 2019 1,825 words in the original blog post.
A well-designed chatbot can scale customer engagement for businesses while providing a valuable experience for users, leveraging conversational design principles that consider user personas, personality, habits, tone of voice, and conversational flow to create a human-like interaction.
Nov 06, 2019 993 words in the original blog post.
The Ann Arbor District Library reimagined its summer reading program by transforming it into an interactive scavenger hunt called the Summer Game, which utilizes Twilio Programmable SMS to engage the entire community, including children, teens, and adults. The program uses text messages to create a fun and inclusive experience, allowing participants to interact with each other and with the library through mobile communications. By leveraging this technology, the library has seen significant growth in participation, with over 16,000 residents participating annually, and received high praise from the community, earning an 89% approval rating in a recent public opinion poll. The Summer Game has become one of the most popular summer events in Ann Arbor, driving community engagement and fostering emotional investment among participants.
Nov 04, 2019 708 words in the original blog post.
As a .NET developer, Corey Weathers shares tips for getting started with Blazor, a framework that allows developers to build interactive web applications using HTML, CSS, and C#. The first tip emphasizes choosing wisely between Blazor WebAssembly and Blazor Server, highlighting their differences in hosting components, UI updates, and performance. Weathers recommends putting C# code in a separate C# class for better maintainability and testability. He also encourages exploring TypeScript to manage data storage more efficiently with type checking and error handling. Additionally, he provides tips on finding and fixing errors in Blazor applications by enabling detailed exceptions in the Startup.cs file. By following these tips, developers can make their Blazor application development more efficient and enjoyable.
Nov 01, 2019 1,254 words in the original blog post.
To introduce global Voice Country Guidelines, a new online resource has been created by Twilio to provide rules and best practices for placing Voice calls around the world. Navigating Voice calling in different countries is tricky due to varying definitions of acceptable traffic profiles, carrier requirements, and feature support. The guidelines cover three key categories: reachability, features supported (such as Caller Identification and Dual Tone Multitouch), and local carrier guidelines. Understanding these details is crucial for ensuring compliant traffic profiles and using Twilio's Super Network capabilities in each country. The resource aims to help developers and businesses make informed decisions when sending or receiving Voice calls globally.
Nov 01, 2019 514 words in the original blog post.