CallFire Solutions

Create Broadcast

Follow

CREATE BROADCAST

Creates a new Broadcast

This operation creates a new Broadcast campaign and returns a broadcastId. To see the status of this campaign call GetBroadcast with the returned broadcastId.

There are 3 types of Broadcast: TEXT, IVR, or VOICE. Select the appropriate configuration to match the broadcast type, TextBroadcastConfig, IvrBroadcastConfig, or VoiceBroadcastConfig. Prefer the Text Service operations (ex: SendText) and Call Service operations (ex: SendCall) over this operation when managing simple text and call campaigns since those operations are simpler and more concise.

Request Parameters

ParameterDemo ValueDescriptionData Type
CreateBroadcast   Create Broadcast using attached info object
RequestId Unique ID of web request to de-dup on anyURI
Broadcast   A TEXT, IVR, or VOICE Broadcast object
Id Unique ID of Broadcast long
Name Name of Broadcast string
Status Status of Broadcast (response only)[START_PENDING, RUNNING, STOPPED, FINISHED, ARCHIVED] BroadcastStatus
LastModified Last Modified 'CCYY-MM-DDThh:mm:ss[Z|(+|-)hh:mm]' dateTime
Type Type of Broadcast[VOICE, IVR, TEXT] BroadcastType
VoiceBroadcastConfig *   Configuration needed for a Voice Broadcast object
Id Unique ID of BroadcastConfig long
Created DateTime Broadcast was created 'CCYY-MM-DDThh:mm:ss[Z|(+|-)hh:mm]' dateTime
From E.164 11 digit number or short code PhoneNumber
LocalTimeZoneRestriction   Restrict the times your compaign can run object
BeginTime Earliest time a client can be contacted in the timezone associated with the number's NPA/NXX time
EndTime Latest time a client can be contacted in the timezone associated with the number's NPA/NXX time
RetryConfig   Retry logic for broadcast object
MaxAttempts Max attempts to retry broadcast (default: 1) int
MinutesBetweenAttempts Minutes between broadcast attempts (default: 60) int
RetryResults Conditions to retry on[LA, AM, BUSY, DNC, XFER, XFER_LEG, NO_ANS, UNDIALED, SENT, RECEIVED, DNT, TOO_BIG, INTERNAL_ERROR, CARRIER_ERROR, CARRIER_TEMP_ERROR, SD, POSTPONED] List[Result]
RetryPhoneTypes Phone types to call in retry[FIRST_NUMBER, HOME_PHONE, WORK_PHONE, MOBILE_PHONE] List[RetryPhoneType]
AnsweringMachineConfig Action to take if machine answers[AM_ONLY, AM_AND_LIVE, LIVE_WITH_AMD, LIVE_IMMEDIATE] AnsweringMachineConfig
LiveSoundText *   string
LiveSoundId * ID of Sound to play if call answered by live person long
LiveSoundTextVoice   Voice
MachineSoundText *   string
MachineSoundId * ID of Sound to play if call answered by machine long
MachineSoundTextVoice   Voice
TransferSoundText *   string
TransferSoundId * ID of Sound to play if call transfered long
TransferSoundTextVoice   Voice
TransferDigit Phone digit call transfers on if pressed PhoneDigit
TransferNumber Number to transfer call to PhoneNumber
DncSoundText *   string
DncSoundId * Do Not Call unique ID of sound long
DncSoundTextVoice   Voice
DncDigit Do Not Call Digit PhoneDigit
MaxActiveTransfers Max Transfers int
TextBroadcastConfig *   Configuration needed for a Text Broadcast object
Id Unique ID of BroadcastConfig long
Created DateTime Broadcast was created 'CCYY-MM-DDThh:mm:ss[Z|(+|-)hh:mm]' dateTime
From E.164 11 digit number or short code PhoneNumber
LocalTimeZoneRestriction   Restrict the times your compaign can run object
BeginTime Earliest time a client can be contacted in the timezone associated with the number's NPA/NXX time
EndTime Latest time a client can be contacted in the timezone associated with the number's NPA/NXX time
RetryConfig   Retry logic for broadcast object
MaxAttempts Max attempts to retry broadcast (default: 1) int
MinutesBetweenAttempts Minutes between broadcast attempts (default: 60) int
RetryResults Conditions to retry on[LA, AM, BUSY, DNC, XFER, XFER_LEG, NO_ANS, UNDIALED, SENT, RECEIVED, DNT, TOO_BIG, INTERNAL_ERROR, CARRIER_ERROR, CARRIER_TEMP_ERROR, SD, POSTPONED] List[Result]
RetryPhoneTypes Phone types to call in retry[FIRST_NUMBER, HOME_PHONE, WORK_PHONE, MOBILE_PHONE] List[RetryPhoneType]
Message 160 char or less message to be sent in text broadcast. Use rented 'keyword' in message if need response string
BigMessageStrategy Set strategy if message is over 160 chars (default: SEND_MULTIPLE)[SEND_MULTIPLE, DO_NOT_SEND, TRIM] BigMessageStrategy
IvrBroadcastConfig *   Configuration needed for an IVR Broadcast object
Id Unique ID of BroadcastConfig long
Created DateTime Broadcast was created 'CCYY-MM-DDThh:mm:ss[Z|(+|-)hh:mm]' dateTime
From E.164 11 digit number or short code PhoneNumber
LocalTimeZoneRestriction   Restrict the times your compaign can run object
BeginTime Earliest time a client can be contacted in the timezone associated with the number's NPA/NXX time
EndTime Latest time a client can be contacted in the timezone associated with the number's NPA/NXX time
RetryConfig   Retry logic for broadcast object
MaxAttempts Max attempts to retry broadcast (default: 1) int
MinutesBetweenAttempts Minutes between broadcast attempts (default: 60) int
RetryResults Conditions to retry on[LA, AM, BUSY, DNC, XFER, XFER_LEG, NO_ANS, UNDIALED, SENT, RECEIVED, DNT, TOO_BIG, INTERNAL_ERROR, CARRIER_ERROR, CARRIER_TEMP_ERROR, SD, POSTPONED] List[Result]
RetryPhoneTypes Phone types to call in retry[FIRST_NUMBER, HOME_PHONE, WORK_PHONE, MOBILE_PHONE] List[RetryPhoneType]
DialplanXml IVR xml document describing dialplan string
CccBroadcastConfig *   Configuration needed for a CCC Broadcast object
Id Unique ID of BroadcastConfig long
Created DateTime Broadcast was created 'CCYY-MM-DDThh:mm:ss[Z|(+|-)hh:mm]' dateTime
From E.164 11 digit number or short code PhoneNumber
LocalTimeZoneRestriction   Restrict the times your compaign can run object
BeginTime Earliest time a client can be contacted in the timezone associated with the number's NPA/NXX time
EndTime Latest time a client can be contacted in the timezone associated with the number's NPA/NXX time
RetryConfig   Retry logic for broadcast object
MaxAttempts Max attempts to retry broadcast (default: 1) int
MinutesBetweenAttempts Minutes between broadcast attempts (default: 60) int
RetryResults Conditions to retry on[LA, AM, BUSY, DNC, XFER, XFER_LEG, NO_ANS, UNDIALED, SENT, RECEIVED, DNT, TOO_BIG, INTERNAL_ERROR, CARRIER_ERROR, CARRIER_TEMP_ERROR, SD, POSTPONED] List[Result]
RetryPhoneTypes Phone types to call in retry[FIRST_NUMBER, HOME_PHONE, WORK_PHONE, MOBILE_PHONE] List[RetryPhoneType]
AgentGroupId Unique ID of AgentGroup long
SmartDropSoundId Unique ID of SmartDropSound long
ScriptId Unique ID of Script long
TransferNumberIdList ID List of TransferNumbers List[long]
PowerDialingRatio Power Dialing Ratio (default: 1) decimal
AllowAnyTransfer Allow any transfer boolean

Response Parameters

ParameterDescriptionData Type
CreatedId Unique ID of resource long

Example


using RestSharp;

namespace [your-namespace]
{
    public class [your-class]
    {

        // Simple example
        public string CreateBroadcast1()
        {
            var client = new RestClient("https://www.callfire.com/api/1.1/rest/");
            client.Authenticator = new HttpBasicAuthenticator("YourLoginId", "password");

            var request = new RestRequest("broadcast", Method.POST);
            request.AddParameter("Name", "Example simple TextBroadcast");
            request.AddParameter("Type", "TEXT");
            request.AddParameter("Message", "Hello, just testing broadcast");
            request.AddParameter("ScrubBroadcastDuplicates", "true");

            var response = client.Execute(request);
            string content = response.Content;
            return content;
        }
    }
}

The XML returned is:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<r:ResourceReference xmlns="http://api.callfire.com/data" xmlns:r="http://api.callfire.com/resource">

    <r:Id>2826971003</r:Id>

<r:Location>https://www.callfire.com/api/1.1/rest/broadcast/2826971001</r:Location>

</r:ResourceReference>

Example


using RestSharp;

namespace [your-namespace]
{
    public class [your-class]
    {
        // A little more complicated example with text to speech
        public string CreateBroadcast2()
        {
            var client = new RestClient("https://www.callfire.com/api/1.1/rest/");
            client.Authenticator = new HttpBasicAuthenticator("YourLoginId", "password");

            var request = new RestRequest("broadcast", Method.POST);
            request.AddParameter("Name", "Test Broadcast Service (text to speech)");
            request.AddParameter("Type", "VOICE");
            request.AddParameter("From ", "9206596476");
            request.AddParameter("MaxAttempts ", "5");
            request.AddParameter("MinutesBetweenAttempts", "10");
            request.AddParameter("RetryResults", "BUSY");
            request.AddParameter("AnsweringMachineConfig", "LIVE_IMMEDIATE");
            request.AddParameter("LiveSoundText", "Hello, just testing broadcast for a person answer");
            request.AddParameter("MachineSoundText", "Hello, just testing broadcast for an machine answer");
            request.AddParameter("MachineSoundTextVoice", "FEMALE2");
            request.AddParameter("TransferSoundText", "Hello, just testing broadcast for transfer");
            request.AddParameter("TransferSoundTextVoice ", "FEMALE2");
            request.AddParameter("TransferDigit", "8");
            request.AddParameter("TransferNumber", "2135551212");
            request.AddParameter("ScrubBroadcastDuplicates", "true");

            var response = client.Execute(request);
            string content = response.Content;
            return content;
        }
    }
}

The XML returned is:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<r:ResourceReference xmlns="http://api.callfire.com/data" xmlns:r="http://api.callfire.com/resource">

    <r:Id>2826971003</r:Id>

<r:Location>https://www.callfire.com/api/1.1/rest/broadcast/2826971003</r:Location>

</r:ResourceReference>

Have more questions? Submit a request

Comments