""" Options: Date: 2025-05-04 22:00:27 Version: 8.71 Tip: To override a DTO option, remove "#" prefix before updating BaseUrl: https://team.evovoice.io #GlobalNamespace: #AddServiceStackTypes: True #AddResponseStatus: False #AddImplicitVersion: #AddDescriptionAsComments: True IncludeTypes: ConferenceNodeStatusCallback.* #ExcludeTypes: #DefaultImports: datetime,decimal,marshmallow.fields:*,servicestack:*,typing:*,dataclasses:dataclass/field,dataclasses_json:dataclass_json/LetterCase/Undefined/config,enum:Enum/IntEnum #DataClass: #DataClassJson: """ 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: int = 0 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: int = 0 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: float = 0.0 call_duration: int = 0 recording_url: Optional[str] = None recording_sid: Optional[str] = None recording_duration: int = 0 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: float = 0.0 dial_bridged: bool = False queue_result: Optional[str] = None queue_sid: Optional[str] = None queue_time: int = 0 conference_sid: Optional[str] = None friendly_name: Optional[str] = None status_callback_event: Optional[str] = None muted: bool = False hold: bool = False end_conference_on_exit: bool = False start_conference_on_enter: bool = False 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: int = 0 media_url: Optional[str] = None error_code: Optional[str] = None error_message: Optional[str] = None @staticmethod def response_type(): return str # @Route("/nodes/conference/status") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ConferenceNodeStatusCallback(TwilioRequestBase, IReturn[str]): session_id: Optional[str] = None started: Optional[str] = None ended: Optional[str] = None