August 2021 Summaries
38 posts from Twilio
Filter
Month:
Year:
Post Summaries
Back to Blog
In this article, the author Diane Phan provides a step-by-step guide on how to build and run a first servlet in Java with Gradle. The tutorial requires Java Development Kit (JDK) version 14 or higher and the use of Gradle for building the project. The author creates a basic project directory, configures the web.xml file, and adds dependencies to the build.gradle file. The guide also covers how to create the HelloWorldServlet class, which handles HTTP requests and responses, and how to start the HTTP servlet using Gradle. Throughout the tutorial, the author emphasizes the importance of understanding low-level concepts in Java and provides tips for building interactive web applications and dynamic web pages.
Aug 31, 2021
1,361 words in the original blog post.
This application allows users to verify their identity by receiving an OTP via a voice call. The user enters their phone number and then submits it through a form. After submitting the phone number, a voice call is made to the user's phone with the OTP read out loud. The user must enter the correct code in another form to complete the verification process. The application uses Twilio Functions for its backend functionality, including sending the initial call and verifying the submitted OTP.
Aug 31, 2021
1,990 words in the original blog post.
As retailers seek to maximize their return on investment from email marketing, they must carefully choose an email services provider that meets their unique needs and goals. To ensure a long-term solution, businesses should ask potential providers about their ability to meet deliverability needs, scale with changing business volume, and build digital agility through automation. A successful ESP can help retailers increase the effectiveness of their email strategy, drive better business results, and empower them to expand into new communication channels as they grow. By asking these key questions and finding a vendor that can meet their business's unique needs, retailers can find a solution that helps them achieve their email goals for the future.
Aug 30, 2021
684 words in the original blog post.
Loader.io is a free cloud-based load testing service that allows users to evaluate the performance of their websites. To use Loader.io, users need to create an account and verify their target host by adding a static file or creating a DNS record. Once verified, users can create tests with parameters such as the number of clients, test duration, and HTTP requests. The results of the test include metrics such as average response time and maximum requests per second, which can help users determine their website's performance limits and identify areas for improvement.
Aug 30, 2021
1,801 words in the original blog post.
In this article, the author guides users through building an application that verifies user identity using Twilio Verify's SMS feature. The process involves setting up a Twilio account, creating a new Twilio Verify service, and configuring it to send and receive SMS messages. The author then builds a frontend application in JavaScript and HTML, which sends the user's phone number to the backend endpoint `/send-notification` for verification. After receiving the phone number, the backend endpoint creates a verification check using Twilio Verify's API. When the user submits their OTP, the backend endpoint verifies it against the stored verification code and returns a response with the status of the verification check. The article concludes by testing out the application and deploying the functions to a publicly accessible URL for use in production.
Aug 27, 2021
1,842 words in the original blog post.
The video chat application allows users to join a virtual room, send emoji reactions to each other, and see confetti when an emoji is sent. The application uses the Twilio Video DataTrack API to share which emoji a participant has selected. The user can enter their name in the input field and click the Join Call button to connect to the video room "emoji-party". When a participant clicks one of the emoji buttons, everyone will see the shower of emoji confetti.
Aug 27, 2021
3,889 words in the original blog post.
Data retention involves managing how organizations store and manage data over specific timeframes to mitigate risks and comply with legal requirements. A data retention policy provides guidelines on the collection, storage, and disposal of data, considering regulations like GDPR, CCPA, and HIPAA, which can dictate data storage durations and disposal methods. Proper data retention policies help organizations avoid legal and security risks, improve data organization, and enhance customer trust by limiting data collection to only what's necessary. Implementing these policies requires understanding legal obligations, classifying data based on necessity, assigning responsibilities for data management, and regularly auditing practices. Tools like Twilio Segment can streamline these processes by providing centralized data management, automated classification, and compliance features, making it easier for companies to maintain efficient and compliant data practices.
Aug 27, 2021
2,352 words in the original blog post.
A SIP trunk is a digital version of a traditional phone system that connects to multiple SIP lines, providing individual phone numbers and lines across an organization. A SIP line is the individual phone line connected to the greater SIP trunk, allowing for one call at a time but enabling unlimited calls with a single trunk. SIP trunks offer flexibility in reaching customers globally, while also avoiding costly setup and deployment of traditional systems. They provide analytics that traditional lines can't track, making maintenance and scaling easy once live. Companies like Twitter use SIP trunks to support their telephony infrastructure worldwide, leveraging Twilio's Elastic SIP Trunking solution for scalability and reliability.
Aug 26, 2021
971 words in the original blog post.
SIP trunks offer several benefits over traditional PRI trunks, including flexible routing and access to advanced services, increased reliability, instant scalability, global PSTN connectivity, better voice quality, and advanced features. SIP trunking also provides cost reduction opportunities, with savings estimated up to 50% compared to traditional PRI trunks. Additionally, the shift to cloud-based technologies has made it easier for contact centers to deploy voicebots and cloud contact center services that require SIP trunking. With the emergence of new cloud-based communications platform as a service (CPaaS) providers offering flexible and geographically diverse SIP trunking services, it's an ideal time for contact centers to consider migrating from traditional PRI trunks to SIP trunks.
Aug 25, 2021
1,936 words in the original blog post.
Ngrok is used to create a public HTTP tunnel that allows Twilio servers to reach specific requests such as SMS, voice calls and other services. A Twilio account and ngrok account are required for this tutorial. The script uses Flask and the Twilio Server-Side SDK to receive an automatic "text back" message after sending a custom SMS message to a Twilio number. To set up the project, a phone number is purchased, a Python script is created to route SMS messages using POST & GET API requests, ngrok is installed and configured, and the phone number is linked to the webhook. The project can be tested by sending a message to the Twilio number and receiving an automatic response.
Aug 24, 2021
1,259 words in the original blog post.
In this article, the author demonstrates how to build a bulk SMS sender using Twilio, PHP, and Yii2. The application allows users to send customized SMS notifications in bulk to clients via Twilio's SMS API. To create the application, the author follows several steps, including installing required dependencies, setting up the database, creating models and controllers, and implementing the logic for sending bulk notifications. The codebase is made available on GitHub for further exploration. The article concludes by highlighting the benefits of using Twilio for sending bulk SMS notifications, including its ability to handle queuing and delivery in real-time.
Aug 24, 2021
2,741 words in the original blog post.
To automatically discover and communicate with users on their preferred channels, you can use Sendgrid, Twilio, and Segment. By setting up Node server, Segment workspace, and connecting the two, you can track user engagement events from Twilio and Sendgrid to determine a user's preferred channel. Once this is done, you can create Personas Computed Traits in Segment to set a "preferred channel" for a user based on their most frequent engagement channel. This allows your app to personalize notifications on users' preferred channels exclusively in the future.
Aug 23, 2021
2,448 words in the original blog post.
The Twilio Field Operator program is a summer initiative that continues to learn and build even when schools are closed. Student leaders like La'Kaleigh and Arthur are leveling up their skills by completing activities, earning XP, and unlocking new content and workshops. The program builds community through Twitch streams and TwilioQuest operations, where players can earn rewards and connect with each other. Field Operators also attend regular workshops to grow professionally and nurture their communities, with recorded sessions available online. Applications for the current cohort are open now, with a new start every month, allowing students from around the US to join in.
Aug 23, 2021
704 words in the original blog post.
Twilio Functions and TwiML Bins offer a serverless solution to build and run applications, allowing developers to create custom phone services with synthesized speech. The tutorial demonstrates how to use Twilio Functions to create two webhooks: one for handling incoming SMS messages and another for making outgoing calls using TwiML Bins. By storing environment variables, such as the TwiML Bin URL and Twilio phone number, and configuring the webhook configuration, developers can deploy their application and test it with a code phrase, receiving an emergency call from Joanna, a synthesized voice assistant. This solution provides a practical way to explore Twilio technology in everyday life, allowing developers to expand the app by adding more prompts and creating other interesting projects.
Aug 20, 2021
1,997 words in the original blog post.
Twilio is a service that powers communication and makes it convenient to send messages, including SMS and WhatsApp messages, in various programming languages, including Java. With the help of Twilio and Java, developers can create graphical user interfaces (GUIs) to send an SMS with just a click of a button. The process involves creating a new project directory, downloading the Twilio Java helper library, buying a Twilio phone number, creating a button GUI, configuring the environment with Twilio account credentials, and overriding the button clicking action to send an SMS using the Twilio REST API. Once completed, the code can be compiled and run on a Java program to send an SMS to a specified phone number when the button is clicked.
Aug 20, 2021
1,457 words in the original blog post.
Twilio and Java are used to create a system that forwards group messages from a single phone number, which can be given to friends and family members as if it's the sender's own number, allowing for convenient group messaging.
To set up this system, you need a Twilio account with an upgraded trial plan, a Twilio phone number, Java 11 or newer, and a Java development environment. You also need to create a Spring Boot app that uses webhooks to handle incoming SMS messages from Twilio, and then use the Twilio helper library to build TwiML instructions for forwarding messages to multiple recipients.
The system can be tested using ngrok to get a public URL for the webhook, and it's suitable for use with large groups, but there are potential enhancements that could improve its functionality, such as including an "address book" or adding checks to ensure that HTTP requests come from Twilio.
Aug 20, 2021
2,151 words in the original blog post.
The Developer Toolkit from Twilio Segment provides companies with building blocks to assemble their customer data infrastructure, empowering developers to build solutions that meet unique business needs. This shift away from traditional "build vs. buy" options allows businesses to adopt a more flexible and scalable approach, with the ability to customize and extend integrations, streamline data collection, and scale data infrastructure effortlessly. With new features such as Analytics.js 2.0, batching for analytics, Swift and Kotlin libraries, Destination Actions, Multi-Instance Destinations, and others, the Developer Toolkit offers developers a powerful and flexible solution to manage customer data, making it easier to deliver personalized and relevant experiences that drive engagement and growth.
Aug 19, 2021
1,621 words in the original blog post.
Twilio has integrated its Studio and Flex Contact Center with ServiceNow to provide omnichannel, bi-directional messaging, real-time incident updates, and live agent escalation. This integration allows for contextual outbound notifications via SMS or Voice, enabling businesses to streamline their customer service processes. The tutorial covers setting up the ServiceNow instance, connecting it to GitHub, deploying Twilio Serverless Functions, and configuring the Flex plugin. With this integration, users can test the system by logging into the Service Portal, clicking on a task, and receiving a call or message that triggers an agent response. The integration is designed to improve customer service efficiency and automate incident management processes.
Aug 17, 2021
3,039 words in the original blog post.
This tutorial teaches developers how to create an application that allows users to create Google Calendar events programmatically, with a link to a deployed Twilio Video app in their description. The application uses React and Express to interact with the Google Calendar API, and the user's consent to access their calendar data is obtained through OAuth 2.0. The tutorial covers setting up a new Google Cloud project, enabling the Calendar API, creating OAuth credentials, and building a JavaScript application that can create calendar events on behalf of the user. Once the server is set up, a React frontend is built using Tailwind CSS to display a form for the user to enter the details of their calendar event, including start and end times, email addresses, and a summary. After submitting the form, the user is redirected to the Event Confirmation screen, where they can view the created calendar event and join the video chat room via a link.
Aug 16, 2021
4,408 words in the original blog post.
As the Twilio Solutions Engineering internship came to a close, the interns gained valuable insights into the role of a Solutions Engineer, who is part sales and technical expert. The SE role requires strong communication skills to articulate complex problems into solutions, propose technical architectures, and offer creative solutions for unique customer use cases. Through their experience, they learned the importance of communication, technology, autonomy, and support in building successful relationships with customers and teammates. They also developed their skills in prioritization, boldness, and creativity, and gained a deeper understanding of Twilio's products and values. The internship empowered them to build real-life applications with high impact and tackle complex challenges, leaving them excited for the future of Solutions Engineering.
Aug 12, 2021
1,245 words in the original blog post.
You can make a phone call from a Python application using Twilio Programmable Voice, with the added benefit of setting a predefined maximum duration for the call. To start, create a new Python project and set up your environment by installing the required dependencies, including the Twilio Python Helper library. You will also need to define your Twilio account credentials as environment variables and buy a Twilio phone number. The code provided in the tutorial demonstrates how to make a simple voice call with a predefined message, as well as connect you directly to another party's phone without having to dial their number. Additionally, it shows how to set a call duration limit by specifying a time limit in seconds. With this application, you can automate phone calls and ensure that they do not exceed a predetermined duration, making it useful for various use cases such as customer support or telemarketing.
Aug 12, 2021
1,411 words in the original blog post.
The Enterprise Insights team at Twilio leveraged Apache Kafka to collect data for exploration and alerting. They built a service to monitor bursty traffic, which posed challenges for streaming systems. Through experimentation with Kafka Streams settings, they learned valuable lessons on tuning the system for near real-time alerting. Key takeaways include optimizing RocksDB configuration, polling records, batching operations, punctuators, and partition numbers of input topics. By adjusting these settings, the team improved performance and reduced latency in their application.
Aug 12, 2021
2,356 words in the original blog post.
When enrolling new users, it's essential to focus on three key areas: phone number input, validation, and verification. Best practices for phone number input include keeping country codes separate and transforming numbers into E.164 format, while also checking IP geolocation against the country code for potential correlations with fraudulent activity. Phone number validation involves using the Twilio Lookup API to confirm validity, detect line types, build allow lists of countries, and maintain carrier information based on reputation. Finally, phone verification requires sending one-time passcodes to verified numbers, building retry buffers into workflows, and keeping phone numbers visible in enrollment flows to prevent typos. By following these best practices, businesses can reduce fraudulent sign-ups, improve user experience, and enhance overall security.
Aug 12, 2021
1,032 words in the original blog post.
You can build a Slackbot in Socket Mode with Python using the slack-bolt framework. To get started, you need to have a Slack account and Python 3.6 or newer installed on your computer. You then create a new project directory and activate a virtual environment before installing dependencies such as slack-sdk and python-dotenv. Next, you create a Slackbot by navigating to the Slack apps dashboard, creating an app, configuring settings, enabling Socket Mode, and obtaining an app level token. You also need to enable event subscriptions for your bot to respond to certain events, such as mentions or direct messages. After installing the bot in a workspace, you write code in Python using the slack-bolt framework to allow your bot to respond to messages that mention its name. Finally, you test your bot by sending it a message and verifying that it responds correctly.
Aug 12, 2021
1,720 words in the original blog post.
Twilio, a trusted provider in the telecommunications industry, helps Independent Software Vendors (ISVs) navigate the complexities of the ever-changing communications ecosystem by partnering with Twilio technology to build robust and scalable communication infrastructures. ISVs face challenges such as providing reliable and flexible voice solutions, managing number allocation, and ensuring regulatory compliance, among others. To address these challenges, Twilio offers a suite of APIs and tools for ISVs to manage call data, expose it to end customers through dashboards and call logs, and provide call statistics. The company also supports thousands of ISVs in various voice-based use cases, including contact center/IVR, lead generation, outbound dialer, field services, and secondary business phone lines. Twilio provides a variety of methods for ISVs to consume call data and expose it to end customers through dashboards and call logs, as well as tools for managing number allocation, regulatory compliance, and network testing. The company also offers best practices for voice workloads, including healthy traffic guidelines, toll fraud prevention, and CNAM implementation.
Aug 12, 2021
4,002 words in the original blog post.
Twilio is creating a world-class sales organization by focusing on four key disciplines: THE WAY WE SELL, THE PEOPLE WE ATTRACT, THE WAY WE LEAD, and THE CULTURE WE INSPIRE. They prioritize building genuine relationships with customers, becoming trusted advisors, and helping them solve problems and seize opportunities. Twilio's approach to hiring is not limited by traditional sales stereotypes, but rather seeks out individuals who embody the company's values and can build strong cross-functional teams. The organization also recognizes regional variations in sales etiquette and adapts its approach accordingly. With a focus on innovation and a unique sales model, Twilio is attracting top talent from around the world to join its global sales team.
Aug 11, 2021
1,625 words in the original blog post.
Asynchronous HTTP requests in Python can significantly improve performance when making a large number of requests. The asyncio library, combined with the HTTPX library, provides an efficient way to make asynchronous HTTP requests. By using await and async/await keywords, developers can write non-blocking code that allows other tasks to run while waiting for responses from servers. This approach is particularly useful for applications that involve waiting for external resources, such as web services or APIs. The example code demonstrates how to use asyncio and HTTPX to make asynchronous HTTP requests, with a comparison of synchronous and asynchronous approaches. By utilizing asyncio's concurrent execution capabilities, developers can achieve significant performance improvements when making multiple requests concurrently.
Aug 11, 2021
1,266 words in the original blog post.
Redux state can be cached locally using IndexedDB, a type of browser storage, allowing users to preserve their input data even after page refresh. A middleware is created to trigger the cache function on specific Redux actions, and another middleware is added to delete the cache data when certain actions are triggered. By adding version numbers to the cache and setting expiration times, developers can further control the cached data. Local caching opens up new use cases for applications, such as handling large forms or caching API responses to avoid repeated calls.
Aug 10, 2021
1,804 words in the original blog post.
This tutorial demonstrates how to build a face recognition system using Python, OpenCV, and SendGrid to send email alerts when a recognized person is detected. The process involves creating a custom dataset of faces, training a machine learning model to recognize these faces, testing the model, setting up SendGrid for email notifications, and integrating the facial recognition functionality with email alerts.
Aug 10, 2021
1,278 words in the original blog post.
Try the Twilio Appointment Management Demo at HIMSS 2021 to experience a patient-centered appointment management system with customizable features, integrated with Electronic Health Records (EHRs). The demo allows users to build their own prototype using Twilio Programmable Voice and Messaging, or opt for a quick-deploy app that sets up an EHR-integrated appointment management system. Additionally, Twilio offers resources to support global COVID-19 vaccine distribution and administration, including grants, product credits, and volunteer hours. These resources include a Quick Deploy app for building a COVID-19 vaccine standby list, tutorials on building call overflow systems with Twilio Studio and Serverless, and a telemedicine waiting room using Twilio Video, as well as the Twilio Podcast featuring conversations with technology leaders and social impact investors.
Aug 09, 2021
403 words in the original blog post.
Multichannel communication refers to the practice of sending messages across multiple channels, such as email, SMS, social media, voice calls, video, and more. While multichannel marketing typically focuses on marketing-related messages, multichannel communication encompasses all types of non-marketing related messages, including customer support interactions and business announcements. To avoid customer fatigue, messaging inconsistencies, branding hiccups, and duplicative communications, businesses should follow best practices for multichannel communication, such as using channels customers want to use, learning about customers' preferences and behaviors, and creating cohesive ongoing conversations with them. This includes tailoring messages to the channel, creating guidelines for messaging, ensuring device responsiveness, and considering nondigital communications. By following these best practices, businesses can improve their customer loyalty and ultimately hurt their bottom line.
Aug 09, 2021
1,979 words in the original blog post.
To integrate Twitter Direct Messages into Twilio Flex, developers need to set up a Twilio account and create a Flex project. They then need to create a Twitter app and request access to the Account Activity API. A custom application needs to be built that listens for updates from both sides (customer and agent) and forwards messages accordingly. This involves creating a channel for the customer, sending messages to Flex via this channel, and responding to Twitter's challenge-response checks. The sequence diagram demonstrates the flow of messages back and forth. Once the endpoint is up and running, developers can complete steps 3 and 4 of Twitter's Getting Started with Webhooks guide to register their application and subscribe their Twitter account to updates. Interactive chat features like Quick Replies and Buttons can be added to enhance the user experience. The code for this proof of concept, including interactive Buttons, is available in a repository.
Aug 06, 2021
1,686 words in the original blog post.
Streaming Studio Flow Executions with Event Streams allows developers to trigger external workflows or log steps in real-time as their Twilio Studio Flow executes. This feature was previously only available through HTTP Request widgets, but now provides more flexibility and scalability. To achieve this, developers need to create a webhook sink using the Twilio CLI, subscribe to specific Studio events, set up a backend server to listen for these events, and wire up a frontend to render the events in real-time. The process involves creating a publicly accessible URL, setting up a webhook sink, subscribing to Studio events, setting up a backend server, and wiring up a frontend using socket.io. Once complete, developers can test their application by executing a Twilio Studio Flow and viewing the rendered events on the frontend. This integration approach offers better retry and delivery guarantees than standard webhook responses and is suitable for modern microservices architectures.
Aug 03, 2021
1,440 words in the original blog post.
Twilio's Product Security team investigated a novel supply chain attack based on dependency package naming conventions. They discovered that attackers could upload malware to open source repositories and name them to be downloaded by target companies' applications, exploiting the lack of namespace/scope/vendor in public registries. To safeguard its customers' data, Twilio implemented controls such as introducing and enforcing naming conventions for all internal packages, blocking proxying of external packages with colliding names, mandating package installs come through internal package manager proxies, and deleting old packages that did not follow the introduced naming conventions. These changes reduced the risk of unintentional downloads and ensured that only Twilio could publish in public registries. By working together with engineering teams, Twilio was able to identify languages vulnerable to the attack, implement security controls, and automate monitoring for alerting on naming collisions. The team emphasized the importance of having a clean inventory of dependencies, programming languages, and CI/CD systems, as well as active monitoring tools to detect potential issues early.
Aug 03, 2021
1,885 words in the original blog post.
The custom phone number validator uses Twilio's Lookup API to validate phone numbers in national and international formats. It makes a request to the API with the provided phone number, and if the request returns valid details, it confirms that the phone number is valid; otherwise, it indicates that the number is not valid. The validator simplifies interacting with the Lookup API by using Twilio's PHP helper library and only validates two formats: national and international. It also stores the country code of the phone number to make the request more specific if necessary.
Aug 02, 2021
2,085 words in the original blog post.
Twilio has introduced Configurable Call Limits for its Programmable Voice platform, allowing businesses to set customizable time limits for their voice calls. This feature extends the maximum call duration from four hours to 24 hours and enables users to set individual call limits between one minute and 24 hours. The new feature is accessible through the Twilio Console and can be configured using the Voice API, TwiML, or by updating active calls. When a call reaches its configured limit, it will be disconnected, and monitoring tools will alert users to help them tune their settings accordingly.
Aug 02, 2021
1,265 words in the original blog post.
No-code app platforms empower entrepreneurs to build mobile, web, and business applications without requiring extensive coding knowledge. These tools provide user-friendly interfaces such as drag-and-drop elements, WYSIWYG builders, or APIs and integrations to connect data between databases and web services. No-code apps are not a replacement for custom code, but rather a way to build simple applications quickly and easily. With the growth of no-code platforms, hundreds of options exist, and their number is expected to grow exponentially in the coming years. Low-code software is an in-between option that provides more functionality and flexibility than no-code tools, but still requires some coding knowledge. Various no-code app builders such as Twilio Studio, Squarespace, Appy Pie, Twilio Quick Deploy, Salesforce, Kintone, Kissflow, and Coda offer drag-and-drop interfaces, APIs, and integrations to help users build applications without writing code.
Aug 02, 2021
1,583 words in the original blog post.
The new Twilio Console is now in General Availability and has been redesigned with a focus on usability, performance, and accessibility. The console's navigation has been reorganized into four main areas: Develop, Monitor, Account, and Billing, making it easier for developers to find what they need. The new console features a modern look and feel, faster page load times, and more frequent updates, allowing users to build, deploy, and iterate faster. Users will be automatically migrated to the new console on August 28th, 2021, with the option to provide feedback through the Feedback button or join the Twilio Insiders program.
Aug 02, 2021
821 words in the original blog post.