TeleFlow Dialer XML

TeleFlow Dialer XML

From TeleFlow

Jump to: navigation, search

This document describes the XML interface to allow a web programmer/designer to populate and query a TeleFlow Dialer installation. All functions are achieved through HTTP Post of XML documents to a TeleFlow web server. Each type of document represents a command that can be issued to the application. The format for the commands follows in logical order.

This XML is also used for CampaignDialer


Contents

Version

TeleFlow Dialer XML Revision 2.1

  • Date: June 8, 2007
February 13 2008, 05:46 PM - Wednesday - Vb
  • Updated to Wiki format
  • Adjust SendList to SendVoice


Commands

The following commands are send via HTTP.

Hello

URL: http://{tfdialer_url}/campaigndialer/campaignhello.php

Body:

	{none}

Use this command to “ping” the TeleFlow Dialer web server to ensure it can be reached and is functioning correctly. This command is not required to use TeleFlow Dialer. It is available as a troubleshooting tool. TeleFlow Dialer server will respond with a simple “Hello!” only.

Responses:

Success:

<Result>Success</Result>


Authenticate

URL: http://{tfdialer_url}/campaigndialer/campaignauthcheck.php

Body:

<?xml version='1.0' encoding='utf-8'?>
<AuthCheck>
    <UserID>{userID}</UserID>
    <Password>{password}</Password>
    <Customer>{customer_name}</Customer>
</AuthCheck>

This command will check your login credentials against the TeleFlow Dialer server to determine if you are permitted to use the system. It does not affect future interactions with the TeleFlow Dialer. Every command must include user/client authentication.

Responses:

Authorized:

<AuthResult>
    <UserID>{userID}</UserID>
    <Success>This account is registered to {user_contact}</Success>
    <InboundTelNo>{inbound_tel}</InboundTelNo>
    <Result>Success</Result>
</AuthResult>

Not Authorized:

<AuthResult>
    <UserID>{userID}</UserID>
    <Failure>UserID and Password combination invalid</Failure>
    <Result>Failure</Result>
</AuthResult>


InstallVoice

URL: http://{tfdialer_url}/campaigndialer/campaignupload.php

Body:

<?xml version="1.0"?>
<InstallVoice version="1.0">
    <UserID>{userID}</UserID>
    <Password>{password}</Password>
    <Customer>{customer_name}</Customer>
    <FileTag replace="n">{audio_tag}</FileTag>
    <FileType>{audio_type}</FileType>
    <FileContents>{audio_data}</FileContents>
</InstallVoice>

All campaigns must have an associated audio file to play. This command will upload audio data in MP3 or WAV format, and establish a tag name to refer to that audio () in subsequent calls.

In the above body example, the data, {audio_data}, in the <FileContents> tag must be Base64 encoded data.

Responses:

Successful installation:

<InstallResponse>
    <Customer>{customer_name}</Customer>
    <FileTag>{audio_tag}</FileTag>
    <Result>Success</Result>
</InstallResponse>

Invalid user/password:

<AuthResult>
    <UserID>{userID}</UserID>
    <Failure>UserID and Password combination invalid</Failure>
</AuthResult>

Bad audio data:

<InstallResponse>
    <Customer>{customer_name}</Customer>
    <Errors>1004: Encoded file type unknown</Errors>
    <Result>Failure</Result>
</InstallResponse>


SendTest

URL: http://{tfdialer_url}/campaigndialer/campaignupload.php

Body:

<?xml version="1.0"?>
<SendTest version="1.0">
    <UserID>{userID}</UserID>
    <Password>{password}</Password>
    <Customer>{customer_name}</Customer>
    <SendCallerId>{callerID}</SendCallerId>
    <Transfer offer="{transfer_YN}" ext="{transfer_ext}">{transfer_number}</Transfer>
    <FileTag playtwice="{playtwice_YN}">{audio_tag}</FileTag>
    <SendTo>{test_number}</SendTo>
</SendTest>

Use this command to send a test call to one phone number.

Once an audio file has been installed, it is advisable to make a test call to ensure the audio sounds acceptable, and that the transfer functionality works as expected, before you you’re your full campaign call list with SendVoice.

Important Notes:

Telephone number validation does not apply to the telephone number to use for transfers to the operator. You must test this number to ensure it is valid and reaches the intended party. If this telephone number is remote from the calling area of the TeleFlow Dialer server, it must contain the preceding ‘1’.

Responses:

Success:

<TestSent>
    <Customer>{customer_name}</Customer>
    <FileTag>{audio_tag}</FileTag>
    <SentCount>1</SentCount>
    <FailCount>0</FailCount>
    <Result>Success</Result>
</TestSent>

Not Authorized:

<AuthResult>
    <UserID>{userID}</UserID>
    <Failure>UserID and Password combination invalid</Failure>
</AuthResult>

Invalid recording:

<VoiceSent>
    <Customer>{customer_name}</Customer>
    <Errors>2009: Recording not installed</Errors>
    <Result>Failure</Result>
</VoiceSent>

Invalid telephone number:

<VoiceSent>
    <Customer>{customer_name}</Customer>
    <Errors>2011: No valid telephone numbers provided</Errors>
    <Result>Failure</Result>
</VoiceSent>

Telephone number validation only applies to the <SendTo> tag.

SendVoice

URL: http://{tfdialer_url}/campaigndialer/campaignupload.php

Body:

<?xml version="1.0"?>
<SendVoice version="1.0">
    <UserID>{userID}</UserID>
    <Password>{password}</Password>
    <Customer>{customer_name}</Customer>
    <SendCallerId>{callerID}</SendCallerId>
    <Transfer offer="{transfer_YN}" ext="{transfer_ext}">{transfer_number}</Transfer>
    <FileTag playtwice="{playtwice_YN}">{audio_tag}</FileTag>
    <SendTo seq="0">{phone_number1}</SendTo>
    <SendTo seq="1">{phone_number2}</SendTo>
    . . .
    <SendTo seq="n">{phone_numberN}</SendTo>
</SendVoice>

This command sends a list of telephone numbers to be called. Issuing this command creates a TeleFlow Dialer campaign, associating all the phone numbers to a particular audio file tag, and starting the call-out process.

The command SendVoice will also perform the same function, but is deprecated.

Important Notes:

ALWAYS test with the SendTest command BEFORE you upload a list of numbers with SendVoice. It is your responsibility to ensure there are no problems with the audio or operator transfer functionality data you have provided. If there is a problem with the recording or the operator transfer, the problem will be heard by all callers in your list, and you will be billed for the calls made.
Telephone number validation does not apply to the telephone number to use for transfers to the operator. You must test this number to ensure it is valid and reaches the intended party. If this telephone number is remote from the calling area of the TeleFlow Dialer server, it must contain the preceding ‘1’.

Responses:

Success:

<VoiceSent>
    <Customer>{customer_name}</Customer>
    <FileTag>{audio_tag}</FileTag>
    <SentCount>3</SentCount>
    <FailCount>0</FailCount>
    <Result>Success</Result>
</VoiceSent>

Not Authorized:

<AuthResult>
    <UserID>{userID}</UserID>
    <Failure>UserID and Password combination invalid</Failure>
</AuthResult>

Invalid recording:

<VoiceSent>
    <Customer>{customer_name}</Customer>
    <Errors>2009: Recording not installed</Errors>
    <Result>Failure</Result>
</VoiceSent>

Invalid telephone number:

<VoiceSent>
    <Customer>{customer_name}</Customer>
    <Errors>2011: No valid telephone numbers provided</Errors>
    <Result>Failure</Result>
</VoiceSent>

Telephone number validation only applies to <SendTo> tags.


GetVoice

URL: http://{tfdialer_url}/campaigndialer/campaigndownload.php

Body:

<?xml version="1.0"?>
<GetVoice version="1.0">
    <UserID>{userID}</UserID>
    <Password>{password}</Password>
    <Customer>{customer_name}</Customer>
    <FileId>{message_number}</FileId>
</GetVoice>

Use this command to retrieve audio data recorded via the TeleFlow Dialer Message Recorder. The Message Recorder service will give you a TeleFlow Dialer Message ID after you have saved your recording. Use this number in the <FileId> tag to refer to your recording.

Responses:

Success:

<GetVoiceResponse>
    <Customer>{customer_name}</Customer>
    <FileId>{message_number}</FileId>
    <FileContents>{audio_data}</FileContents>
    <Result>Success</Result>
</GetVoiceResponse>

Note that the actual audio data in the <FileContents> tag will be Base64 encoded data.

Not Authorized:

<AuthResult>
    <UserID>{userID}</UserID>
    <Failure>UserID and Password combination invalid</Failure>
</AuthResult>

Invalid File ID:

<GetVoiceResponse>
    <Customer>{customer_name}</Customer>
    <Errors Count="1">
        <FileMissing>File Id {message_number} not located</FileMissing>
    </Errors>
    <Result>Failure</Result>
</GetVoiceResponse>