Evo Voice

<back to all web services

QueueNodeWaitCallback

The following routes are available for this service:
All Verbs/nodes/queue/wait-callback


export class NodeParameterMap
{
    [key:string] : NodeParameter;

    public constructor(init?: Partial<NodeParameterMap>) { (Object as any).assign(this, init); }
}


export class TwilioRequestBase implements IPost
{
    public callSid: string;
    public accountSid: string;
    public from: string;
    public to: string;
    public callStatus: string;
    public apiVersion: string;
    public direction: string;
    public forwardedFrom: string;
    public callerName: string;
    public parentCallSid: string;
    public stirVerstat: string;
    public called: string;
    public calledZip: string;
    public calledCity: string;
    public calledState: string;
    public calledCountry: string;
    public caller: string;
    public callerCity: string;
    public callerState: string;
    public callerZip: string;
    public callerCountry: string;
    public fromCity: string;
    public fromState: string;
    public fromZip: string;
    public fromCountry: string;
    public toCity: string;
    public toState: string;
    public toZip: string;
    public toCountry: string;
    public messageSid: string;
    public smsId: string;
    public messagingServiceSid: string;
    public body: string;
    public numMedia: number;
    public mediaContentType0: string;
    public mediaUrl0: string;
    public mediaContentType1: string;
    public mediaUrl1: string;
    public mediaContentType2: string;
    public mediaUrl2: string;
    public index: number;
    public instanceSid: string;
    public eventType: string;
    public channelSid: string;
    public attributes: string;
    public clientIdentity: string;
    public mediaContentType: string;
    public mediaSid: string;
    public identity: string;
    public digits: string;
    public speechResult: string;
    public confidence: number;
    public callDuration: number;
    public recordingUrl: string;
    public recordingSid: string;
    public recordingDuration: number;
    public recordingStatus: string;
    public transcriptionSid: string;
    public transcriptionText: string;
    public transcriptionUrl: string;
    public transcriptionStatus: string;
    public dialCallStatus: string;
    public dialCallSid: string;
    public dialCallDuration: number;
    public dialBridged: boolean;
    public queueResult: string;
    public queueSid: string;
    public queueTime: number;
    public conferenceSid: string;
    public friendlyName: string;
    public statusCallbackEvent: string;
    public muted: boolean;
    public hold: boolean;
    public endConferenceOnExit: boolean;
    public startConferenceOnEnter: boolean;
    public eventName: string;
    public assistantSid: string;
    public dialogueSid: string;
    public userIdentifier: string;
    public currentInput: string;
    public currentTask: string;
    public dialoguePayloadUrl: string;
    public memory: string;
    public channel: string;
    public faxSid: string;
    public faxStatus: string;
    public numPages: number;
    public mediaUrl: string;
    public errorCode: string;
    public errorMessage: string;

    public constructor(init?: Partial<TwilioRequestBase>) { (Object as any).assign(this, init); }
}

export enum QueueWaitMusicModes
{
    Audio = 'Audio',
    Text = 'Text',
}

export enum SayVoices
{
    Man = 'Man',
    Woman = 'Woman',
    Polly_Mads_Danish_Male = 'Polly_Mads_Danish_Male',
    Polly_Naja_Danish_Female = 'Polly_Naja_Danish_Female',
    Polly_Lotte_Dutch_Female = 'Polly_Lotte_Dutch_Female',
    Polly_Ruben_Dutch_Male = 'Polly_Ruben_Dutch_Male',
    Polly_Nicole_Australian_Female = 'Polly_Nicole_Australian_Female',
    Polly_Russell_Australian_Male = 'Polly_Russell_Australian_Male',
    Polly_Amy_British_Female = 'Polly_Amy_British_Female',
    Polly_Brian_British_Male = 'Polly_Brian_British_Male',
    Polly_Emma_British_Female = 'Polly_Emma_British_Female',
    Polly_Raveena_Indian_Female = 'Polly_Raveena_Indian_Female',
    Polly_Ivy_US_Female = 'Polly_Ivy_US_Female',
    Polly_Joanna_US_Female = 'Polly_Joanna_US_Female',
    Polly_Joey_US_Male = 'Polly_Joey_US_Male',
    Polly_Justin_US_Male = 'Polly_Justin_US_Male',
    Polly_Kendra_US_Female = 'Polly_Kendra_US_Female',
    Polly_Kimberly_US_Female = 'Polly_Kimberly_US_Female',
    Polly_Matthew_US_Male = 'Polly_Matthew_US_Male',
    Polly_Salli_US_Female = 'Polly_Salli_US_Female',
    Polly_Geraint_Welsh_Male = 'Polly_Geraint_Welsh_Male',
    Polly_Celine_French_Female = 'Polly_Celine_French_Female',
    Polly_Mathieu_French_Male = 'Polly_Mathieu_French_Male',
    Polly_Chantal_French_Canadian_Female = 'Polly_Chantal_French_Canadian_Female',
    Polly_Hans_German_Male = 'Polly_Hans_German_Male',
    Polly_Marlene_German_Female = 'Polly_Marlene_German_Female',
    Polly_Vicki_German_Female = 'Polly_Vicki_German_Female',
    Polly_Dora_Iceland_Female = 'Polly_Dora_Iceland_Female',
    Polly_Karl_Iceland_Male = 'Polly_Karl_Iceland_Male',
    Polly_Carla_Italian_Female = 'Polly_Carla_Italian_Female',
    Polly_Giorgio_Italian_Male = 'Polly_Giorgio_Italian_Male',
    Polly_Mizuki_Japanese_Female = 'Polly_Mizuki_Japanese_Female',
    Polly_Takumi_Japanese_Male = 'Polly_Takumi_Japanese_Male',
    Polly_Liv_Norwegian_Female = 'Polly_Liv_Norwegian_Female',
    Polly_Jacek_Polish_Male = 'Polly_Jacek_Polish_Male',
    Polly_Jan_Polish_Female = 'Polly_Jan_Polish_Female',
    Polly_Ewa_Polish_Female = 'Polly_Ewa_Polish_Female',
    Polly_Maja_Polish_Female = 'Polly_Maja_Polish_Female',
    Polly_Ricardo_Portuguese_Male = 'Polly_Ricardo_Portuguese_Male',
    Polly_Vitoria_Portuguese_Female = 'Polly_Vitoria_Portuguese_Female',
    Polly_Cristiano_Portuguese_Male = 'Polly_Cristiano_Portuguese_Male',
    Polly_Inese_Portuguese_Female = 'Polly_Inese_Portuguese_Female',
    Polly_Carmen_Romanian_Female = 'Polly_Carmen_Romanian_Female',
    Polly_Maxim_Russian_Male = 'Polly_Maxim_Russian_Male',
    Polly_Tatyana_Russian_Female = 'Polly_Tatyana_Russian_Female',
    Polly_Conchita_Spanish_Female = 'Polly_Conchita_Spanish_Female',
    Polly_Enrique_Spanish_Male = 'Polly_Enrique_Spanish_Male',
    Polly_Miguel_Latin_American_Male = 'Polly_Miguel_Latin_American_Male',
    Polly_Penelope_Latina_American_Female = 'Polly_Penelope_Latina_American_Female',
    Polly_Astrid_Swedish_Female = 'Polly_Astrid_Swedish_Female',
    Polly_Filiz_Turkish_Male = 'Polly_Filiz_Turkish_Male',
    Polly_Gwyneth_Welsh_Female = 'Polly_Gwyneth_Welsh_Female',
}

export class QueueWaitMusic
{
    public mode: QueueWaitMusicModes;
    public audioFile: string;
    public text: string;
    public textVoice: SayVoices;
    public numTimes: number;

    public constructor(init?: Partial<QueueWaitMusic>) { (Object as any).assign(this, init); }
}

export class QueueNodeWaitCallback extends TwilioRequestBase
{
    public waitMusic: QueueWaitMusic[];
    public queueName: string;
    public accountId: string;
    public sessionId: string;
    public recordingReady: string;
    public recordCall: boolean;
    public recordedFile: string;
    public recordedFileUrl: string;

    public constructor(init?: Partial<QueueNodeWaitCallback>) { super(init); (Object as any).assign(this, init); }
}

TypeScript QueueNodeWaitCallback DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /nodes/queue/wait-callback HTTP/1.1 
Host: team.evovoice.io 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	waitMusic: 
	[
		{
			mode: Audio,
			audioFile: String,
			text: String,
			textVoice: Man,
			numTimes: 0
		}
	],
	queueName: String,
	accountId: String,
	sessionId: String,
	recordingReady: String,
	recordCall: False,
	recordedFile: String,
	recordedFileUrl: String,
	callSid: String,
	accountSid: String,
	from: String,
	to: String,
	callStatus: String,
	apiVersion: String,
	direction: String,
	forwardedFrom: String,
	callerName: String,
	parentCallSid: String,
	stirVerstat: String,
	called: String,
	calledZip: String,
	calledCity: String,
	calledState: String,
	calledCountry: String,
	caller: String,
	callerCity: String,
	callerState: String,
	callerZip: String,
	callerCountry: String,
	fromCity: String,
	fromState: String,
	fromZip: String,
	fromCountry: String,
	toCity: String,
	toState: String,
	toZip: String,
	toCountry: String,
	messageSid: String,
	smsId: String,
	messagingServiceSid: String,
	body: String,
	numMedia: 0,
	mediaContentType0: String,
	mediaUrl0: String,
	mediaContentType1: String,
	mediaUrl1: String,
	mediaContentType2: String,
	mediaUrl2: String,
	index: 0,
	instanceSid: String,
	eventType: String,
	channelSid: String,
	attributes: String,
	clientIdentity: String,
	mediaContentType: String,
	mediaSid: String,
	identity: String,
	digits: String,
	speechResult: String,
	confidence: 0,
	callDuration: 0,
	recordingUrl: String,
	recordingSid: String,
	recordingDuration: 0,
	recordingStatus: String,
	transcriptionSid: String,
	transcriptionText: String,
	transcriptionUrl: String,
	transcriptionStatus: String,
	dialCallStatus: String,
	dialCallSid: String,
	dialCallDuration: 0,
	dialBridged: False,
	queueResult: String,
	queueSid: String,
	queueTime: 0,
	conferenceSid: String,
	friendlyName: String,
	statusCallbackEvent: String,
	muted: False,
	hold: False,
	endConferenceOnExit: False,
	startConferenceOnEnter: False,
	eventName: String,
	assistantSid: String,
	dialogueSid: String,
	userIdentifier: String,
	currentInput: String,
	currentTask: String,
	dialoguePayloadUrl: String,
	memory: String,
	channel: String,
	faxSid: String,
	faxStatus: String,
	numPages: 0,
	mediaUrl: String,
	errorCode: String,
	errorMessage: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

(string)