Evo Voice

<back to all web services

QueueNodeWaitCallback

The following routes are available for this service:
All Verbs/nodes/queue/wait-callback
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class TwilioRequestBase(IReturn[str], IPost):
    call_sid: Optional[str] = None
    account_sid: Optional[str] = None
    from_: Optional[str] = field(metadata=config(field_name='from'), default=None)
    to: Optional[str] = None
    call_status: Optional[str] = None
    api_version: Optional[str] = None
    direction: Optional[str] = None
    forwarded_from: Optional[str] = None
    caller_name: Optional[str] = None
    parent_call_sid: Optional[str] = None
    stir_verstat: Optional[str] = None
    called: Optional[str] = None
    called_zip: Optional[str] = None
    called_city: Optional[str] = None
    called_state: Optional[str] = None
    called_country: Optional[str] = None
    caller: Optional[str] = None
    caller_city: Optional[str] = None
    caller_state: Optional[str] = None
    caller_zip: Optional[str] = None
    caller_country: Optional[str] = None
    from_city: Optional[str] = None
    from_state: Optional[str] = None
    from_zip: Optional[str] = None
    from_country: Optional[str] = None
    to_city: Optional[str] = None
    to_state: Optional[str] = None
    to_zip: Optional[str] = None
    to_country: Optional[str] = None
    message_sid: Optional[str] = None
    sms_id: Optional[str] = None
    messaging_service_sid: Optional[str] = None
    body: Optional[str] = None
    num_media: Optional[int] = None
    media_content_type0: Optional[str] = None
    media_url0: Optional[str] = None
    media_content_type1: Optional[str] = None
    media_url1: Optional[str] = None
    media_content_type2: Optional[str] = None
    media_url2: Optional[str] = None
    index: Optional[int] = None
    instance_sid: Optional[str] = None
    event_type: Optional[str] = None
    channel_sid: Optional[str] = None
    attributes: Optional[str] = None
    client_identity: Optional[str] = None
    media_content_type: Optional[str] = None
    media_sid: Optional[str] = None
    identity: Optional[str] = None
    digits: Optional[str] = None
    speech_result: Optional[str] = None
    confidence: Optional[float] = None
    call_duration: Optional[int] = None
    recording_url: Optional[str] = None
    recording_sid: Optional[str] = None
    recording_duration: Optional[int] = None
    recording_status: Optional[str] = None
    transcription_sid: Optional[str] = None
    transcription_text: Optional[str] = None
    transcription_url: Optional[str] = None
    transcription_status: Optional[str] = None
    dial_call_status: Optional[str] = None
    dial_call_sid: Optional[str] = None
    dial_call_duration: Optional[float] = None
    dial_bridged: Optional[bool] = None
    queue_result: Optional[str] = None
    queue_sid: Optional[str] = None
    queue_time: Optional[int] = None
    conference_sid: Optional[str] = None
    friendly_name: Optional[str] = None
    status_callback_event: Optional[str] = None
    muted: Optional[bool] = None
    hold: Optional[bool] = None
    end_conference_on_exit: Optional[bool] = None
    start_conference_on_enter: Optional[bool] = None
    event_name: Optional[str] = None
    assistant_sid: Optional[str] = None
    dialogue_sid: Optional[str] = None
    user_identifier: Optional[str] = None
    current_input: Optional[str] = None
    current_task: Optional[str] = None
    dialogue_payload_url: Optional[str] = None
    memory: Optional[str] = None
    channel: Optional[str] = None
    fax_sid: Optional[str] = None
    fax_status: Optional[str] = None
    num_pages: Optional[int] = None
    media_url: Optional[str] = None
    error_code: Optional[str] = None
    error_message: Optional[str] = None
    @staticmethod
    def response_type(): return str


class QueueWaitMusicModes(str, Enum):
    AUDIO = 'Audio'
    TEXT = 'Text'


class SayVoices(str, Enum):
    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__U_S__FEMALE = 'Polly_Ivy_US_Female'
    POLLY__JOANNA__U_S__FEMALE = 'Polly_Joanna_US_Female'
    POLLY__JOEY__U_S__MALE = 'Polly_Joey_US_Male'
    POLLY__JUSTIN__U_S__MALE = 'Polly_Justin_US_Male'
    POLLY__KENDRA__U_S__FEMALE = 'Polly_Kendra_US_Female'
    POLLY__KIMBERLY__U_S__FEMALE = 'Polly_Kimberly_US_Female'
    POLLY__MATTHEW__U_S__MALE = 'Polly_Matthew_US_Male'
    POLLY__SALLI__U_S__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'


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class QueueWaitMusic:
    mode: Optional[QueueWaitMusicModes] = None
    audio_file: Optional[str] = None
    text: Optional[str] = None
    text_voice: Optional[SayVoices] = None
    num_times: Optional[int] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class QueueNodeWaitCallback(TwilioRequestBase):
    wait_music: Optional[List[QueueWaitMusic]] = None
    queue_name: Optional[str] = None
    account_id: Optional[str] = None
    session_id: Optional[str] = None
    recording_ready: Optional[str] = None
    record_call: Optional[bool] = None
    recorded_file: Optional[str] = None
    recorded_file_url: Optional[str] = None

Python QueueNodeWaitCallback DTOs

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

HTTP + XML

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: evovoice.io 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<QueueNodeWaitCallback xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Nodes.CallCenter">
  <AccountSid xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</AccountSid>
  <ApiVersion xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</ApiVersion>
  <AssistantSid xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</AssistantSid>
  <Attributes xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</Attributes>
  <Body xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</Body>
  <CallDuration xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">0</CallDuration>
  <CallSid xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</CallSid>
  <CallStatus xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</CallStatus>
  <Called xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</Called>
  <CalledCity xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</CalledCity>
  <CalledCountry xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</CalledCountry>
  <CalledState xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</CalledState>
  <CalledZip xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</CalledZip>
  <Caller xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</Caller>
  <CallerCity xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</CallerCity>
  <CallerCountry xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</CallerCountry>
  <CallerName xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</CallerName>
  <CallerState xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</CallerState>
  <CallerZip xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</CallerZip>
  <Channel xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</Channel>
  <ChannelSid xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</ChannelSid>
  <ClientIdentity xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</ClientIdentity>
  <ConferenceSid xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</ConferenceSid>
  <Confidence xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">0</Confidence>
  <CurrentInput xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</CurrentInput>
  <CurrentTask xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</CurrentTask>
  <DialBridged xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">false</DialBridged>
  <DialCallDuration xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">0</DialCallDuration>
  <DialCallSid xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</DialCallSid>
  <DialCallStatus xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</DialCallStatus>
  <DialoguePayloadUrl xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</DialoguePayloadUrl>
  <DialogueSid xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</DialogueSid>
  <Digits xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</Digits>
  <Direction xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</Direction>
  <EndConferenceOnExit xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">false</EndConferenceOnExit>
  <ErrorCode xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</ErrorCode>
  <ErrorMessage xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</ErrorMessage>
  <EventName xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</EventName>
  <EventType xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</EventType>
  <FaxSid xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</FaxSid>
  <FaxStatus xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</FaxStatus>
  <ForwardedFrom xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</ForwardedFrom>
  <FriendlyName xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</FriendlyName>
  <From xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</From>
  <FromCity xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</FromCity>
  <FromCountry xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</FromCountry>
  <FromState xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</FromState>
  <FromZip xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</FromZip>
  <Hold xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">false</Hold>
  <Identity xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</Identity>
  <Index xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">0</Index>
  <InstanceSid xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</InstanceSid>
  <MediaContentType xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</MediaContentType>
  <MediaContentType0 xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</MediaContentType0>
  <MediaContentType1 xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</MediaContentType1>
  <MediaContentType2 xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</MediaContentType2>
  <MediaSid xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</MediaSid>
  <MediaUrl xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</MediaUrl>
  <MediaUrl0 xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</MediaUrl0>
  <MediaUrl1 xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</MediaUrl1>
  <MediaUrl2 xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</MediaUrl2>
  <Memory xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</Memory>
  <MessageSid xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</MessageSid>
  <MessagingServiceSid xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</MessagingServiceSid>
  <Muted xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">false</Muted>
  <NumMedia xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">0</NumMedia>
  <NumPages xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">0</NumPages>
  <ParentCallSid xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</ParentCallSid>
  <QueueResult xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</QueueResult>
  <QueueSid xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</QueueSid>
  <QueueTime xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">0</QueueTime>
  <RecordingDuration xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">0</RecordingDuration>
  <RecordingSid xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</RecordingSid>
  <RecordingStatus xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</RecordingStatus>
  <RecordingUrl xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</RecordingUrl>
  <SmsId xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</SmsId>
  <SpeechResult xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</SpeechResult>
  <StartConferenceOnEnter xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">false</StartConferenceOnEnter>
  <StatusCallbackEvent xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</StatusCallbackEvent>
  <StirVerstat xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</StirVerstat>
  <To xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</To>
  <ToCity xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</ToCity>
  <ToCountry xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</ToCountry>
  <ToState xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</ToState>
  <ToZip xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</ToZip>
  <TranscriptionSid xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</TranscriptionSid>
  <TranscriptionStatus xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</TranscriptionStatus>
  <TranscriptionText xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</TranscriptionText>
  <TranscriptionUrl xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</TranscriptionUrl>
  <UserIdentifier xmlns="http://schemas.datacontract.org/2004/07/Voice.Api.Twilio">String</UserIdentifier>
  <AccountId>String</AccountId>
  <QueueName>String</QueueName>
  <RecordCall>false</RecordCall>
  <RecordedFile>String</RecordedFile>
  <RecordedFileUrl>String</RecordedFileUrl>
  <RecordingReady>String</RecordingReady>
  <SessionId>String</SessionId>
  <WaitMusic>
    <QueueWaitMusic>
      <AudioFile>String</AudioFile>
      <Mode>Audio</Mode>
      <NumTimes>0</NumTimes>
      <Text>String</Text>
      <TextVoice>Man</TextVoice>
    </QueueWaitMusic>
  </WaitMusic>
</QueueNodeWaitCallback>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

(string)