Twilio Changelog

Additions and changes to the Twilio platform

Filter by:Clear all

Twilio Functions created via the Serverless API can now be integrated with your Studio Flows through the Run Function widget.

Selecting a Function to invoke in the Flow is easy. For Functions created via the Console UI choose the "Default" service, and for Functions created via the Serverless API choose the Service and Environment where they are deployed.

Run Function v2 widget

To learn more, visit the documentation for Run Function, or just try it out now in Studio.


With this release, Studio Gather Input On Call widget now supports additional speech recognition features so you can fine-tune your Studio Flows for Voice. The new attributes allow you to adjust the Speech Timeout, specify a Speech Model, and control the Profanity Filter setting. All this functionality is powered by the underlying Gather verb from our Programmable Voice product.

In addition to the Gather improvements, the Record Voicemail widget now provides controls for the Trim Silence and Play Beep settings and even provides access to the Recording Status Callback URL so your application can be notified when a new recording is complete.

Finally, the Say/Play widget supports sending Digits on a call when the Play option is selected, allowing you to programmatically play DTMF tones to navigate an external IVR.

To learn more, visit the documentation on the Gather widget, Recording widget, and Say/Play widget, or just try it out now in Studio.


You told us you didn't like the fuzzy timestamps on the Twilio Debugger that said an event happened "a few seconds ago" instead of showing you the actual timestamps. We changed it.

Now you will see the actual timestamp of the event in UTC. 


Programmable Voice

Voice Android 5.1 - Automatic Network Switching GA

Prior to this release, a call established over cellular data for example, persisted over cellular data for the duration of the call even if a WIFI network became available. This is undesirable since a WIFI network is usually cheaper and requires less battery power. With this release, an ongoing call will automatically and seamlessly switch to a preferred network type when one becomes available. Network types supported in preferred order are: ETHERNET, WIFI, VPN, and CELLULAR.

Voice Android SDK 5.1.0 package: [bintray]

API Docs are available here

Get started with the Quickstart Guide


Programmable Voice

Voice iOS 5.2 - Automatic Network Switching GA

Prior to this release, a call established over cellular data for example, persisted over cellular data for the duration of the call even if a WIFI network became available. This is undesirable since a WIFI network is usually cheaper and requires less battery power. With this release, an ongoing call will automatically and seamlessly switch to a preferred network type when one becomes available. Network types supported in preferred order are: ETHERNET, WIFI, VPN, and CELLULAR.

Voice iOS SDK 5.2.0 packages: [Carthage], [Cocoapods], [Dynamic Framework], [Static Library]

API Docs are available here

Get started with the Quickstart Guide


Invoices Display Account Project Name GA

Your invoices will now show your account name(s) along with the company name. If you have multiple accounts (a.k.a projects) on your invoice (multi-account invoicing), you will see the account name (a.k.a project name) for each account in parenthesis next to each account’s company name.

This addition to the invoice is to help you connect an invoice with the correct account since some customers track their Twilio projects by account name instead of company name.

You can understand more details about your invoice at Reading your Twilio Invoice. You can change your account name as explained in Can I change the name of my project.

Account Project Name in Invoice Header

Account Project Name in Usage Summary


Programmable Video

Programmable Video is now HIPAA Eligible GA

Programmable Video can now support compliant healthcare uses cases that contain protected health information (PHI) for organizations that are subject to the Health Insurance Portability and Accountability Act (HIPAA). Twilio will sign Business Associate Addendums (BAA) with covered entities and business associates for HIPAA Eligible Products and Services.

Click here to learn more about how to build on Twilio for HIPAA compliance.


Programmable Voice

Outbound Call Queue Insights in Programmable Voice REST API GA

Outbound calls made using the REST API are throttled and queued to never exceed the Calls Per Second (CPS) threshold value that is set up on the Account. This throttling may create undesirable behavior as call establishment may be delayed. With this release, a new attribute "QueueTime " is available to monitor the call queue time. Prior to this change, there was no indication into whether the outbound calls were being queued and delayed, which made it difficult to know when to update the CPS to an appropriate value. This change returns QueueTime with the value of the estimated call queuing time in milliseconds. This can be used to detect when CPS updates are needed.


This release of Flex UI introduces an Initial Audio Device Check. This feature allows you to perform an audio device availability check when Flex starts up to make sure you are ready to receive voice calls.

Initial Audio Device Check is currently available as a Pilot feature. To enable it, visit the Pre-Release Features Page. You can learn more about this feature within our documentation.

For a full changelog, visit the Flex UI release notes.


Programmable Voice

US/CA Unassigned Calling Number Blocking GA

Twilio is now blocking outgoing calls that use unassigned calling numbers for Programmable Voice and Elastic SIP Trunking. Unassigned numbers are numbers not in service. This change will protect you and the platform from unlawful From number overrides. 

You can see calls blocked by inspecting Error notifications, 13247, 21212, 32206


Flex

Hold Time Metric in Flex Insights Beta

Flex Insights Historical Reporting now has out of the box metrics for reporting on holds in calls. You can now build reports that identify calls where agents put customers on hold and how long the holds in calls are. Users can find agents, queues and teams that may need attention as they have too many or too long holds in their calls. See Hold Time documentation article for more details.


Phone Numbers

Regulatory Compliance - Public Beta Regulations API Beta

The Regulations API is moving to Public Beta. The Regulations API resource allows users to programmatically fetch the Regulations for a given phone number’s country, type, and the end-user type. The Regulations API is in sync with the Regulatory Guidelines webpage and is continually updated.

For additional details:


Programmable Voice

Voice Client JS 1.10 - loglevel Logger Integration GA

This release introduces loglevellogger integration to enable flexibility in handling log messages by allowing integration with other loggers and dynamic log level setting. Prior to this release, Voice Client JS logging could only be configured during Device.setup. With this release, Voice Client JS exposes a loglevel based logger which allows for runtime logging configuration that includes setting the log level to “trace”, “debug”, “info”, “warn”, and “error”. Loglevel is a versatile logger library that includes level-based logging and filtering, and provides a plugin API to enable functionality such as sending the log messages to a log server.

For example, to enable logging:

import { getLogger } from 'loglevel';
const logger = getLogger(Device.packageName);
// Set log level on subsequent page loads and refreshes
logger.setLevel('DEBUG');

The latest Twilio PHP helper library v6.0 is now available on GitHub. This latest version has full support for many of the features in PHP 7 such as scalar and return type declarations and of course the illustrious spaceship operator <=>. For PHP applications running PHP 7.2 and later, we recommend upgrading to this latest version to take advantage of the new PHP features and continue getting Twilio updates.

Note that with this release, we are officially ending support for PHP versions that are already end-of-life, including PHP 5.5, 7.0, and 7.1. If your application requires PHP versions 7.1 or below, you can continue using older versions of the Twilio helper libraries, but they will not receive updates.

You can download the latest PHP library from Packagist or source code on GitHub.


Programmable Voice

Async Answering Machine Detection now Generally Available GA

Answering Machine Detection (AMD) introduces several seconds in silence for the callee since the call is not connected until AMD detection has executed. This behavior leads to undesirable user experience and often leads to hung up calls. With the release of async AMD, machine detection can be executed asynchronously. When Async mode is enabled, the callee is connected immediately and AMD is executed in the background, improving the callee experience.

Learn how to enable async AMD in the Twilio AMD documentation.


Twilio Interconnect has been expanded with a new Interconnect Exchange Installation in Sydney, Australia.

The new exchange provides customers with connectivity via cross connect, VPN, Bring-Your-Own-MPLS, and the Equinix Cloud Exchange with initial product support for Elastic SIP Trunking, SIP Interface and Voice WebRTC.

Twilio now has three Interconnect Exchanges in the APAC region, one in Singapore, another in Tokyo and this new one in Sydney, Australia. This allows APAC customers to set up redundant interconnects from their networks to Twilio adding an additional layer of resiliency while benefiting from the security and consistency of a dedicated interconnect.


Click here for information about Twilio Interconnect and here for documentation.


Phone Numbers

Regulated Number Bundle Provisioning Requirement GA

Provisioning new phone numbers with identity regulations through the Twilio /IncomingPhoneNumbers API now requires an approved BundleSid. End-users will be required to include the proper documentation for regulated phone numbers, which are most phone numbers outside the US and Canada. API calls to provision regulated phone numbers that do not include a compliant BundleSID that is valid for the phone number will fail with error code 21649.

For additional details:


We have added new properties to the Task resources and the TaskQueue Statistics API in TaskRouter, to enhance TaskQueue insights in scenarios when tasks are transferred to another TaskQueue.

The TaskRouter Task resource now has a new property task_queue_entered_date, which captures the time when the task entered its current TaskQueue.

The TaskRouter TaskQueue Statistics API has three new properties, LongestRelativeTaskSidInQueue and LongestRelativeTaskAgeInQueue, which provide the task SID of the task waiting in the TaskQueue the longest and its relative age in the TaskQueue, respectively. 
WaitDurationInQueueUntilAccepted provides relative wait duration in the TaskQueue stats (avg, min, max, total) for tasks that were accepted while in this TaskQueue.

To learn more about the new Task field, please refer to our documentation on Task properties.
To learn more about the new TaskQueue Statistics API fields, please refer to our documentation on TaskQueue Real-time Statistics and TaskQueue Cumulative Statistics.


Marketing Campaigns

Segment-triggered Automations GA

Automation (available within the Advanced Marketing Campaigns plan) now supports a new entry criteria option to trigger an automation when a contact joins a segment. This also expands the functionality of the exit criteria, automatically removing contacts when they no longer match the entry criteria (i.e., they’re no longer in the segment). For more information, see the documentation in the Knowledge Center


We have updated all Flex projects that use Automatic Updates to Flex UI 1.16.2.

This release of Flex UI introduces Chat and Messaging Transcripts for Flex Insights. Supervisors can now open a historical chat or messaging conversation from Flex Insights and see its content. While viewing the content, it is also possible to comment and assess these conversations.

Other notable changes:

  • New Actions to programmatically send DTMF tones when there is an active voice connection.
  • Flex Insights screens are accessible from top-level Flex navigation.
  • Flex Insights Player opens directly within the dashboard instead of opening in a separate window. This significantly improves the speed with which you can scan through multiple calls or chats.
  • You can now attach references to 3rd-party web content related to conversations – such as CRM records – and open these directly in Flex Insights.

For a full changelog, visit the Flex UI release notes.

Reminder: You can pin to individual versions of the Flex UI or manage your Automatic Updates within the Flex Admin UI.


Show more