/* Options: Date: 2025-05-04 22:17:27 Version: 8.71 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://team.evovoice.io //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: AppGetHomeInformation.* //ExcludeTypes: //DefaultImports: */ export class NodeParameterMap { [key:string] : NodeParameter; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export interface IReturn { createResponse(): T; } export class HostedSuiteCompletedFormField { public name: string; public values: string[]; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class HostedSuiteCompletedForm { public id: string; public name: string; public dateCreated: string; public dateCompleted: string; public formId: string; public formName: string; public clientId: string; public clientName: string; public contactId: string; public contactName: string; public contactsIds: string[]; public contactsNames: string[]; public emailSubject: string; public callerNumber: string; public fields: HostedSuiteCompletedFormField[]; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class MessageInfo { public id: string; public accountId: string; public customerId: string; public endpointId: string; public endpointDisplayName: string; public date: string; public direction: MessageDirections; public otherAddress: string; public sender: string; public text: string; public isUnread: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ConversationInfo { public id: string; public endpointId: string; public otherAddress: string; public mostRecentMessage: MessageInfo; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class AppHomeCallMetric { public metricKey: string; public total: number; public average: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class FileInfo extends EntityInfo { /** @description The type of file this is */ // @ApiMember(Description="The type of file this is") public type: FileTypes; /** @description The account ID this file is associated with */ // @ApiMember(Description="The account ID this file is associated with") public accountId: string; /** @description The name of the account this file is associated with */ // @ApiMember(Description="The name of the account this file is associated with") public accountName: string; /** @description The ID of the customer this file is associated with */ // @ApiMember(Description="The ID of the customer this file is associated with") public customerId: string; /** @description The name of the customer this file is associated with */ // @ApiMember(Description="The name of the customer this file is associated with") public customerName: string; /** @description The breadcrumb to the customer for this file */ // @ApiMember(Description="The breadcrumb to the customer for this file") public customerBreadcrumb: CustomerBreadcrumb[]; /** @description The ID of the user this file is assocaited with */ // @ApiMember(Description="The ID of the user this file is assocaited with") public userId: string; /** @description The name of the user this file is associated with */ // @ApiMember(Description="The name of the user this file is associated with") public userName: string; /** @description The original file name for the file */ // @ApiMember(Description="The original file name for the file") public fileName: string; /** @description The URI of the file */ // @ApiMember(Description="The URI of the file") public uri: string; /** @description The Content type of the file */ // @ApiMember(Description="The Content type of the file") public contentType: string; /** @description The size of the file */ // @ApiMember(Description="The size of the file") public contentLength: number; /** @description The Twilio ID of the recording */ // @ApiMember(Description="The Twilio ID of the recording") public recordingSid: string; /** @description The duration of the recording in seconds */ // @ApiMember(Description="The duration of the recording in seconds") public recordingDuration: number; /** @description Who is the recording from? */ // @ApiMember(Description="Who is the recording from?") public recordingFrom: string; /** @description Transcription (if available) */ // @ApiMember(Description="Transcription (if available)") public transcription: string; /** @description From Address (e.g. caller ID) for incoming calls */ // @ApiMember(Description="From Address (e.g. caller ID) for incoming calls") public fromAddress: string; /** @description To Address (e.g. dialed number) for outgoing calls */ // @ApiMember(Description="To Address (e.g. dialed number) for outgoing calls") public toAddress: string; /** @description The AI transcription for this call */ // @ApiMember(Description="The AI transcription for this call") public aiTranscription: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } export class SessionInfo extends EntityInfo { /** @description The state of the session */ // @ApiMember(Description="The state of the session") public dialState: SessionDialState; /** @description The call state of the session */ // @ApiMember(Description="The call state of the session") public callState: SessionCallState; /** @description The queue state of the session */ // @ApiMember(Description="The queue state of the session") public queueState: SessionQueueStates; /** @description The ID of the account associated with the flow */ // @ApiMember(Description="The ID of the account associated with the flow") public accountId: string; /** @description The name of the account associated with the session */ // @ApiMember(Description="The name of the account associated with the session") public accountName: string; /** @description The ID of the customer this session is associated with */ // @ApiMember(Description="The ID of the customer this session is associated with") public customerId: string; /** @description The customer breadcrumb this session is associated with */ // @ApiMember(Description="The customer breadcrumb this session is associated with") public customerBreadcrumb: CustomerBreadcrumb[]; /** @description The name of the customer this session is associated with */ // @ApiMember(Description="The name of the customer this session is associated with") public customerName: string; /** @description The ID of the endpoint associated with this session */ // @ApiMember(Description="The ID of the endpoint associated with this session") public endpointId: string; /** @description The name of the endpoint associated with this session */ // @ApiMember(Description="The name of the endpoint associated with this session") public endpointName: string; /** @description The date the call completed */ // @ApiMember(Description="The date the call completed") public dateCompleted: string; /** @description The destination of the session (e.g. what was entered into the Dial box) */ // @ApiMember(Description="The destination of the session (e.g. what was entered into the Dial box)") public destination: string; /** @description The to address if any */ // @ApiMember(Description="The to address if any") public toAddress: string; /** @description The from address if any */ // @ApiMember(Description="The from address if any") public fromAddress: string; /** @description The from name if any */ // @ApiMember(Description="The from name if any") public fromName: string; /** @description Answered by name (if any) */ // @ApiMember(Description="Answered by name (if any)") public answeredByName: string; /** @description The ID of the queue member assigned to this call */ // @ApiMember(Description="The ID of the queue member assigned to this call") public queueMemberId: string; /** @description The flow channel */ // @ApiMember(Description="The flow channel") public channel: FlowChannels; /** @description Has the session ended */ // @ApiMember(Description="Has the session ended") public ended: boolean; /** @description The outcome of the call */ // @ApiMember(Description="The outcome of the call") public outcome: string; /** @description The twilio Call SID of this session */ // @ApiMember(Description="The twilio Call SID of this session") public callSid: string; /** @description Any console data for this session */ // @ApiMember(Description="Any console data for this session") public consoleData: string; /** @description The name of the hold queue for this call */ // @ApiMember(Description="The name of the hold queue for this call") public holdQueueName: string; /** @description The user ID who put this call on hold */ // @ApiMember(Description="The user ID who put this call on hold") public heldByUserId: string; /** @description The reason for the hold */ // @ApiMember(Description="The reason for the hold") public holdReason: SessionHoldReasons; /** @description The SID of the conference if in a conference call */ // @ApiMember(Description="The SID of the conference if in a conference call") public conferenceSid: string; /** @description The display name for this session */ // @ApiMember(Description="The display name for this session") public displayName: string; /** @description The log entries for this session */ // @ApiMember(Description="The log entries for this session") public log: SessionLogInfo[]; /** @description The members of this session */ // @ApiMember(Description="The members of this session") public members: SessionMemberInfo[]; /** @description The callback number (typically used for SIP to User calls) */ // @ApiMember(Description="The callback number (typically used for SIP to User calls)") public callbackNumber: string; /** @description The ID of the endpoint that answered */ // @ApiMember(Description="The ID of the endpoint that answered") public answeredById: string; /** @description Is this session incoming or outgoing? */ // @ApiMember(Description="Is this session incoming or outgoing?") public direction: SessionDirections; /** @description The phone number that this session is coming from (used with SMS chats) */ // @ApiMember(Description="The phone number that this session is coming from (used with SMS chats)") public fromPhoneNumber: string; /** @description The Call SID of the most recently added conference participant */ // @ApiMember(Description="The Call SID of the most recently added conference participant") public mostRecentParticipantCallSid: string; /** @description Was this session missed? */ // @ApiMember(Description="Was this session missed?") public wasMissed: boolean; /** @description The ring queue that the call is currently in */ // @ApiMember(Description="The ring queue that the call is currently in") public ringQueueId: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } export class AppHomeInformation { public isHostedSuiteCustomer: boolean; public conversations: ConversationInfo[]; public calls: SessionInfo[]; public callMetrics: AppHomeCallMetric[]; public voicemail: FileInfo[]; public forms: HostedSuiteCompletedForm[]; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @Route("/portal/home", "GET") export class AppGetHomeInformation implements IReturn { public accountId: string; public customerId: string; public fromDate: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } public getTypeName() { return 'AppGetHomeInformation'; } public getMethod() { return 'GET'; } public createResponse() { return new AppHomeInformation(); } }