Dialing Extensions

    The following XML code dials the 2410 extension at sip:john1234@phone.plivo.com. The <User> element describes the SIP user and gives it the attribute sendDigits. The extension is dialed a few seconds after the number is dialed, so a few leading w characters are added. Each w character tells Plivo to wait 0.5 seconds instead of playing a digit.

    Response

    <Response>
        <Dial>
            <User sendDigits="wwww2410">sip:john1234@phone.plivo.com</User>
        </Dial>
    </Response>
    

    Example Request

    1
    2
    3
    4
    5
    6
    7
    
    from plivo import plivoxml
    
    response = plivoxml.ResponseElement()
    response.add(plivoxml.DialElement().add(
        plivoxml.UserElement(
            'sip:john1234@phone.plivo.com', send_digits='wwww2410')))
    print(response.to_string())
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    
    require 'rubygems'
    require 'plivo'
    
    include Plivo::XML
    include Plivo::Exceptions
    
    begin
      response = Response.new
    
      dial = response.addDial()
    
      params = {
        'sendDigits' => "wwww2410"
      }
    
      user = "sip:john1234@phone.plivo.com"
      dial.addUser(user, params)
    
      xml = PlivoXML.new(response)
      puts xml.to_xml
    rescue PlivoXMLError => e
      puts 'Exception: ' + e.message
    end
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    
    var plivo = require('plivo');
    
    var response = plivo.Response();
    
    var dial = response.addDial();
    
    var params = {
        'sendDigits': "wwww2410",
    };
    var user = "sip:john1234@phone.plivo.com";
    dial.addUser(user, params);
    
    console.log(response.toXML());
    
    /*
    Sample Output
    <Response>
        <Dial>
            <User>sip:john1234@phone.plivo.com</User>
        </Dial>
    </Response>
    */
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    
    <?php
        require '../../vendor/autoload.php';
        use Plivo\XML\Response;
    
        $response = new Response();
    
        $dial = $response->addDial();
    
        $params = array(
            'sendDigits' => "wwww2410"
        );
    
        $user = "sip:john1234@phone.plivo.com";
        $dial->addUser($user, $params);
    
        Header('Content-type: text/xml');
        echo($response->toXML());
    
        /*
        Sample Output
    
        <Response>
            <Dial>
                <User sendDigits="wwww2410">
                    sip:john1234@phone.plivo.com
                </User>
            </Dial>
        </Response>
        */
    ?>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    
    // Example for user - dialing extensions
    package com.plivo.api.xml.samples.user;
    
    import com.plivo.api.exceptions.PlivoXmlException;
    import com.plivo.api.xml.Dial;
    import com.plivo.api.xml.Response;
    import com.plivo.api.xml.User;
    
    
    class DialingExtensions {
        public static void main(String[] args) throws PlivoXmlException {
            Response response = new Response()
                    .children(
    
    
                            new Dial()
                                    .children(
                                            new User("sip:john1234@phone.plivo.com")
                                                    .sendDigits("wwww2410")
                                    )
    
                    );
            System.out.println(response.toXmlString());
        }
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    
    using System;
    using System.Collections.Generic;
    using Plivo.XML;
    
    namespace Plivo
    {
    	class MainClass
    	{
    		public static void Main(string[] args)
    		{
    			Plivo.XML.Response resp = new Plivo.XML.Response();
    			Plivo.XML.Dial dial = new Plivo.XML.Dial(new
    				Dictionary<string, string>()
    			{ });
    
    			dial.AddUser("sip:john1234@phone.plivo.com",
    				new Dictionary<string, string>()
    			{
    				{"sendDigits", "wwww2410"}
    			});
    
    			resp.Add(dial);
    
    			var output = resp.ToString();
    			Console.WriteLine(output);
    
    		}
    	}
    }
    
    
    
    //<Response>
    //  <Dial>
    //    <User sendDigits = "wwww2410" > 
    //        sip:john1234@phone.plivo.com 
    //    </ User >
    //  </ Dial >
    //</ Response >
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    
    // Example for user - dialing extensions
    package main
    
    import "github.com/plivo/plivo-go/xml"
    
    func main() {
    	response := xml.ResponseElement{
    		Contents: []interface{}{
    
    			new(xml.DialElement).
    				SetContents([]interface{}{
    					new(xml.UserElement).
    						SetSendDigits("wwww2410").
    						SetContents("\tsip:john1234@phone.plivo.com"),
    				}),
    		},
    	}
    	print(response.String())
    }