Getting Started with Voice Notifications

You can send an audio notification to the user using Voice Calls. Plivo’s PHLO allows you to quickly create and configure a voice alert system for your business. An API call from your application will trigger the PHLO and will enable making direct calls to the customers with critical alerts.

Use Case Outline

Creating the Use Case using PHLO

With PHLO, you can quickly create a workflow that suits your use case. Make sure you are registered and logged in on Plivo Console to proceed.

Use the following components to create this PHLO:

  • Initiate Call
  • Play Audio

When the application send an API request to the PHLO, it triggers a call to the user’s phone number using the Initiate Call component. Once the user answers the call, the Play Audio component plays an audio to the user. The call will disconnect automatically after the playback audio is completed.

Note: The Callback function provides the user details required to make the call.

To create this PHLO

  • On the top navigation bar, click PHLO. The PHLO page will appear and display your existing PHLOs, if any. If this is your first PHLO, then the PHLO page will be empty.

  • Click CREATE NEW PHLO to build a new PHLO.

  • On the Choose your use-case window, click Build my own. The PHLO canvas will appear with the Start node. Note: The Start node is the starting point of any PHLO. You can choose between the four available trigger states of the Start node; Incoming SMS, Incoming Call, Endpoint Call, and API Request. For this PHLO, we will use the API Request trigger state.
  • Click the Start node to open the Configurations tab.
  • Then, enter the information to retrieve from the HTTP Request payload. For example, this could be a variable for the list of numbers to call.

  • From the list of components, on the left hand side, drag and drop the Initiate Call component onto the canvas. This will add a Initiate call node onto the canvas.

  • Connect the Start node with the Initiate Call node, using the API Request trigger state.

  • Next, to configure the From and To numbers in the Initiate Call node, use the variables set in the Start node. Note:
    • Enter two curly brackets to view all available variables.
    • The values for the From and To numbers are picked from the HTTP Request Payload. Make sure to clearly define the variables in the Start node.

  • Similarly, create a node for the Play Audio component and connect it to the Initiate Call node using the Answered trigger state.

  • Next, configure the Play Audio node to play a specific message to the user. Note:
    • The audio playback can either be static or dynamic. In this example, we will use a combination of a static message along with some dynamic message.
    • On the Play Audio Configurations tab, enter a static message (For example, Your Flight status is:) in the Speak Text field, followed by a variable to include the dynamic text. Note:
      • You can choose a variable by entering two curly brackets in the Speak Text field.
      • Make sure you validate the configuration for each node.

  • After you complete the configurations, click Save. You can trigger your PHLO using the PHLO URL to test it out. Your complete PHLO will look like this:

Triggering the PHLO from your Voice app

Once you have created and configured your PHLO, copy the PHLO Run URL. You can integrate a PHLO into your application workflow by making an API request to the PHLO URL with the required payload.

Code Samples

curl -i --user AUTH_ID:AUTH_TOKEN \
import plivo

auth_id = 'Your AUTH ID'
auth_token = 'Your AUTH Token'
phlo_id = 'Your PHLO ID' # https://console.plivo.com/phlo/list/
phlo_client = plivo.phlo.RestClient(auth_id=auth_id, auth_token=auth_token)
phlo = phlo_client.phlo.get(phlo_id)
response = phlo.run()
print str(response)
import com.plivo.api.Plivo;
import com.plivo.api.PlivoClient;
import com.plivo.api.exceptions.PlivoRestException;
import com.plivo.api.models.phlo.Phlo;
import java.io.IOException;

public class Example
    private static final String authId = "Your AUTH ID";
    private static final String authToken = "Your AUTH Token";
    private static PlivoClient client = new PlivoClient(authId, authToken);
    public static void main(String[] args) throws IOException, PlivoRestException
        String phloId = "Your PHLO ID";
        Plivo.init(authId, authToken);
        Phlo phlo = Phlo.getter(phloId).client(client).get();
        Map<String, Object> payload = new HashMap<>();
        payload.put("phone", "+1111111111");
        payload.put("to", "+1111111112");
        PhloUpdateResponse response = Phlo.updater(phloId).payload(payload).run();

You can install the server-side SDKs and setup your development environment by referring to the instructions available in the below links:

Server-side SDKs
Setup your development environment

You can get your Auth_ID and Auth_token from your dashboard

You can find the PHLO_ID on the PHLO Listing page.

For more information about creating a PHLO app, see the PHLO User Guide.

For information on components and their variables in PHLO, see the PHLO Components Library.

Uses of this PHLO

You can also use this PHLO structure for other use cases, like:

  • Order notification
  • Booking status
  • Delivery status
  • Flight cancellation/reschedule
  • Two-Factor Authentication/One-Time Password
  • New Offer notification
  • Account balance notification