Voice Broadcast API
LM_DialListAdvanced
This method dials all the members of a list and reads aloud the contents of TextToSay
.
Syntax
LM_DialListAdvanced(Request)
Request Parameters
Parameter Name | Description | Data Type | Required | Sample Value |
---|---|---|---|---|
CallerID | The number to display on the receiving party’s Caller ID. | String | True | 7575550000 |
CallerIDName | The name to display on the receiving party’s Caller ID. (Most carriers ignore this and use their own directory assistance to display name information.) | String | False | Esendex Services |
VoiceID | The text-to-speech voice ID. | Byte | True | 2 |
TextToSay | The text-to-speech text or combination of text-to-speech and script to be read to the receiving party. | String | True | Hello, this is a sample call from Phone Notify. |
TryCount | The number of times to attempt dialing if the initial call is unanswered or busy. The maximum is 3 . | Byte | True | 2 |
Licensekey | Your license key. | String | True | 00000000-0000-0000-0000-000000000000 |
Extension | The phone number extension. | String | False | 333 |
TransferNumber | The phone number that the call will be transferred to if the call recipient presses 0 . Transfer behavior can be further modified with TextToSay commands. | String | False | 7575558888 |
NextTryInSeconds | The number of seconds to wait until the next retry is performed if the original call is unanswered or busy. We recommend waiting at least 60 seconds. | Integer | True | 180 |
TTSRate | The speed that text-to-speech (TTS) will use when speaking the text. The value ranges from 0 to 20 (10 being normal). This can also be controlled within the TextToSay parameter. | Byte | True | 10 |
TTSVolume | The volume that text-to-speech (TTS) will use when speaking the text. The value ranges from 0 to 100 (100 being the default). This can also be controlled within the TextToSay parameter. | Byte | True | 100 |
ScheduledUTCDatetime | The date and time at which to send the call. This is specified as Coordinated Universal Time (UTC). | DateTime | True | 2020-11-17T08:25:08.336Z |
ListID | The ID of the list to dial. | Integer | True | 1234 |
DialRecursiveLists | Whether to dial child lists. | Boolean | True | False |
Response
Returns: LM_DialReturn
object
Code Samples
You can use any programming language you want with our API, as long as it can make a REST or SOAP call. Here are examples for some of the most common platforms.
C#
/* https://ws.esendex.us/notifyws/phonenotify.asmx?wsdl was added as a Service Reference and given the name WSDL */
using WSDL;
var client = new PhoneNotifySoapClient(PhoneNotifySoapClient.EndpointConfiguration.PhoneNotifySoap);
var request = new LM_Functions
{
CallerID = "7575550000",
Licensekey = YOUR_LICENSE_KEY,
ListID = 1234,
TextToSay = "Hello, this is a test call.",
ScheduledUTCDatetime = DateTime.UtcNow
};
var response = await client.LM_DialListAdvancedAsync(request);
Console.WriteLine(
"Success: " + response.Success + Environment.NewLine +
"Response Code: " + response.ResponseCode + Environment.NewLine +
"Batch ID: " + response.BatchID);
Python
from datetime import datetime, timedelta
import zeep
client = zeep.Client(wsdl="https://ws.esendex.us/notifyws/phonenotify.asmx?wsdl")
dt = datetime.utcnow() + timedelta(minutes=1)
scheduled_utc_date_time = f"{dt.isoformat()}Z"
request = {
"CallerID": "7575550000",
"VoiceID": 1,
"TextToSay": "Hello, this is a test call.",
"TryCount": 2,
"Licensekey": "00000000-0000-0000-0000-000000000000",
"NextTryInSeconds": 180,
"TTSRate": 10,
"TTSVolume": 100,
"ScheduledUTCDatetime": scheduled_utc_date_time,
"ListID": 1234,
"DialRecursiveLists": False
}
result = client.service.LM_DialListAdvanced(request)
print(result)
SOAP 1.1 Request
POST /NotifyWS/PhoneNotify.asmx HTTP/1.1
Host: ws.esendex.us
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://ws.esendex.us/NotifyWS/LM_DialListAdvanced"
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<LM_DialListAdvanced xmlns="https://ws.esendex.us/NotifyWS/">
<lmFunctions>
<CallerID>string</CallerID>
<CallerIDName>string</CallerIDName>
<VoiceID>unsignedByte</VoiceID>
<TextToSay>string</TextToSay>
<TryCount>unsignedByte</TryCount>
<Licensekey>string</Licensekey>
<Extension>string</Extension>
<TransferNumber>string</TransferNumber>
<NextTryInSeconds>short</NextTryInSeconds>
<TTSRate>unsignedByte</TTSRate>
<TTSVolume>unsignedByte</TTSVolume>
<ScheduledUTCDatetime>dateTime</ScheduledUTCDatetime>
<ListID>int</ListID>
<DialRecursiveLists>boolean</DialRecursiveLists>
</lmFunctions>
</LM_DialListAdvanced>
</soap:Body>
</soap:Envelope>
SOAP 1.1 Response
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<LM_DialListAdvancedResponse xmlns="https://ws.esendex.us/NotifyWS/">
<LM_DialListAdvancedResult>
<Success>boolean</Success>
<BatchID>int</BatchID>
<ResponseCode>int</ResponseCode>
<ErrorText>string</ErrorText>
</LM_DialListAdvancedResult>
</LM_DialListAdvancedResponse>
</soap:Body>
</soap:Envelope>
SOAP 1.2 Request
POST /NotifyWS/PhoneNotify.asmx HTTP/1.1
Host: ws.esendex.us
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<LM_DialListAdvanced xmlns="https://ws.esendex.us/NotifyWS/">
<lmFunctions>
<CallerID>string</CallerID>
<CallerIDName>string</CallerIDName>
<VoiceID>unsignedByte</VoiceID>
<TextToSay>string</TextToSay>
<TryCount>unsignedByte</TryCount>
<Licensekey>string</Licensekey>
<Extension>string</Extension>
<TransferNumber>string</TransferNumber>
<NextTryInSeconds>short</NextTryInSeconds>
<TTSRate>unsignedByte</TTSRate>
<TTSVolume>unsignedByte</TTSVolume>
<ScheduledUTCDatetime>dateTime</ScheduledUTCDatetime>
<ListID>int</ListID>
<DialRecursiveLists>boolean</DialRecursiveLists>
</lmFunctions>
</LM_DialListAdvanced>
</soap12:Body>
</soap12:Envelope>
SOAP 1.2 Response
HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<LM_DialListAdvancedResponse xmlns="https://ws.esendex.us/NotifyWS/">
<LM_DialListAdvancedResult>
<Success>boolean</Success>
<BatchID>int</BatchID>
<ResponseCode>int</ResponseCode>
<ErrorText>string</ErrorText>
</LM_DialListAdvancedResult>
</LM_DialListAdvancedResponse>
</soap12:Body>
</soap12:Envelope>
Let’s start sending, together.