/* Options:
Date: 2024-05-17 02:11:52
Version: 6.40
Tip: To override a DTO option, remove "//" prefix before updating
BaseUrl: https://evovoice.io
//GlobalNamespace:
//MakePartial: True
//MakeVirtual: True
//MakeInternal: False
//MakeDataContractsExtensible: False
//AddReturnMarker: True
//AddDescriptionAsComments: True
//AddDataContractAttributes: False
//AddIndexesToDataMembers: False
//AddGeneratedCodeAttributes: False
//AddResponseStatus: False
//AddImplicitVersion:
//InitializeCollections: True
//ExportValueTypes: False
IncludeTypes: ListSessions.*
//ExcludeTypes:
//AddNamespaces:
//AddDefaultXmlNamespace: http://schemas.servicestack.net/types
*/
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using System.IO;
using Voice.Api;
using Voice.Api.Portal;
using Voice.Api.Sys;
using Voice.Api.Customers;
using Voice.Api.Accounts;
using Voice.Api.Sessions;
namespace Voice.Api
{
public partial class EntityInfo
{
///
///The ID of the object
///
[ApiMember(Description="The ID of the object")]
public virtual string Id { get; set; }
///
///The date the object was created
///
[ApiMember(Description="The date the object was created")]
public virtual string DateCreated { get; set; }
///
///The date the object was last modified
///
[ApiMember(Description="The date the object was last modified")]
public virtual string DateLastModified { get; set; }
///
///The user that created this object
///
[ApiMember(Description="The user that created this object")]
public virtual string CreatedBy { get; set; }
///
///The user that last modified this object
///
[ApiMember(Description="The user that last modified this object")]
public virtual string LastModifiedBy { get; set; }
}
public partial class ListRequest
: IGet
{
public ListRequest()
{
SpecificIds = new List{};
}
///
///The page of data to retrieve
///
[ApiMember(Description="The page of data to retrieve")]
public virtual int Page { get; set; }
///
///If you want all objects to be returned. This should be used with care
///
[ApiMember(Description="If you want all objects to be returned. This should be used with care")]
public virtual bool All { get; set; }
///
///The number per page to retrieve
///
[ApiMember(Description="The number per page to retrieve")]
public virtual int CountPerPage { get; set; }
///
///Specific IDs
///
[ApiMember(Description="Specific IDs")]
public virtual List SpecificIds { get; set; }
///
///Specify a sort field
///
[ApiMember(Description="Specify a sort field")]
public virtual string SortField { get; set; }
///
///Specify a sort order
///
[ApiMember(Description="Specify a sort order")]
public virtual SortOrders SortOrder { get; set; }
///
///Disables total / page counts - improves performance. Returns only data. If there is no more data, Items will be empty array
///
[ApiMember(Description="Disables total / page counts - improves performance. Returns only data. If there is no more data, Items will be empty array")]
public virtual bool SimplifiedPaging { get; set; }
}
public partial class ListResponse
{
public ListResponse()
{
Items = new List{};
}
///
///The items
///
[ApiMember(Description="The items")]
public virtual List Items { get; set; }
///
///The total number of items
///
[ApiMember(Description="The total number of items")]
public virtual int TotalCount { get; set; }
///
///The total number of pages
///
[ApiMember(Description="The total number of pages")]
public virtual int TotalPages { get; set; }
///
///Are there more pages of items? Used with simplified paging
///
[ApiMember(Description="Are there more pages of items? Used with simplified paging")]
public virtual bool HasMorePages { get; set; }
}
public enum SortOrders
{
Ascend,
Descend,
}
}
namespace Voice.Api.Accounts
{
public partial class AccountInfo
: EntityInfo
{
public AccountInfo()
{
AncestorIds = new List{};
}
///
///The name of this account
///
[ApiMember(Description="The name of this account")]
public virtual string Name { get; set; }
///
///The ID of this account's parent
///
[ApiMember(Description="The ID of this account's parent")]
public virtual string ParentAccountId { get; set; }
///
///The twilio account SID
///
[ApiMember(Description="The twilio account SID")]
public virtual string TwilioAccountSid { get; set; }
///
///The ancestors of this account. Useful for breadcrumbs
///
[ApiMember(Description="The ancestors of this account. Useful for breadcrumbs")]
public virtual List AncestorIds { get; set; }
///
///The max number of phone numbers this account can have
///
[ApiMember(Description="The max number of phone numbers this account can have")]
public virtual int MaxPhoneNumbers { get; set; }
///
///This account is BYOA
///
[ApiMember(Description="This account is BYOA")]
public virtual bool IsBYOA { get; set; }
///
///TrustHub Profile Sid
///
[ApiMember(Description="TrustHub Profile Sid")]
public virtual string TrustHubProfileSid { get; set; }
///
///The ID of the logo file
///
[ApiMember(Description="The ID of the logo file")]
public virtual string LogoId { get; set; }
///
///The URI of the logo file
///
[ApiMember(Description="The URI of the logo file")]
public virtual string LogoUri { get; set; }
///
///The billing settings for this account
///
[ApiMember(Description="The billing settings for this account")]
public virtual BillingSettings BillingSettings { get; set; }
}
}
namespace Voice.Api.Customers
{
public partial class CustomerBreadcrumb
{
public virtual string Id { get; set; }
public virtual string Name { get; set; }
}
}
namespace Voice.Api.Portal
{
public partial class HostedSuiteCompletedForm
{
public HostedSuiteCompletedForm()
{
ContactsIds = new List{};
ContactsNames = new List{};
Fields = new List{};
}
public virtual string Id { get; set; }
public virtual string Name { get; set; }
public virtual string DateCreated { get; set; }
public virtual string DateCompleted { get; set; }
public virtual string FormId { get; set; }
public virtual string FormName { get; set; }
public virtual string ClientId { get; set; }
public virtual string ClientName { get; set; }
public virtual string ContactId { get; set; }
public virtual string ContactName { get; set; }
public virtual List ContactsIds { get; set; }
public virtual List ContactsNames { get; set; }
public virtual string EmailSubject { get; set; }
public virtual string CallerNumber { get; set; }
public virtual List Fields { get; set; }
}
public partial class HostedSuiteCompletedFormField
{
public HostedSuiteCompletedFormField()
{
Values = new List{};
}
public virtual string Name { get; set; }
public virtual List Values { get; set; }
}
}
namespace Voice.Api.Sessions
{
///
///Retrieve a list of sessions
///
[Route("/sessions", "GET")]
[Api(Description="Retrieve a list of sessions")]
public partial class ListSessions
: ListRequest, IReturn>
{
public ListSessions()
{
AccountIds = new List{};
CustomerIds = new List{};
EndpointIds = new List{};
}
///
///The account IDs for the sessions to retrieve
///
[ApiMember(Description="The account IDs for the sessions to retrieve")]
public virtual List AccountIds { get; set; }
///
///Whether to search live or archived sessions
///
[ApiMember(Description="Whether to search live or archived sessions")]
public virtual bool SearchArchive { get; set; }
///
///The start date to retrieve usage records for (YYYY-MM-DD)
///
[ApiMember(Description="The start date to retrieve usage records for (YYYY-MM-DD)")]
public virtual string StartDate { get; set; }
///
///The end date to retrieve usage records for (YYYY-MM-DD)
///
[ApiMember(Description="The end date to retrieve usage records for (YYYY-MM-DD)")]
public virtual string EndDate { get; set; }
///
///The IDs of the customers whose sessions you want to retrieve
///
[ApiMember(Description="The IDs of the customers whose sessions you want to retrieve")]
public virtual List CustomerIds { get; set; }
///
///The IDs of the endpoints whose sessions you want to retrieve
///
[ApiMember(Description="The IDs of the endpoints whose sessions you want to retrieve")]
public virtual List EndpointIds { get; set; }
///
///Filter by the from (this is a contains search)
///
[ApiMember(Description="Filter by the from (this is a contains search)")]
public virtual string From { get; set; }
///
///Filter by the to (this is a contains search)
///
[ApiMember(Description="Filter by the to (this is a contains search)")]
public virtual string To { get; set; }
///
///Filter by text in the log
///
[ApiMember(Description="Filter by text in the log")]
public virtual string Log { get; set; }
///
///Filter by parent session ID
///
[ApiMember(Description="Filter by parent session ID")]
public virtual string ParentSessionId { get; set; }
}
public partial class SessionInfo
: EntityInfo
{
public SessionInfo()
{
CustomerBreadcrumb = new List{};
Log = new List{};
Members = new List{};
}
///
///The state of the session
///
[ApiMember(Description="The state of the session")]
public virtual SessionDialState DialState { get; set; }
///
///The call state of the session
///
[ApiMember(Description="The call state of the session")]
public virtual SessionCallState CallState { get; set; }
///
///The queue state of the session
///
[ApiMember(Description="The queue state of the session")]
public virtual SessionQueueStates QueueState { get; set; }
///
///The ID of the account associated with the flow
///
[ApiMember(Description="The ID of the account associated with the flow")]
public virtual string AccountId { get; set; }
///
///The name of the account associated with the session
///
[ApiMember(Description="The name of the account associated with the session")]
public virtual string AccountName { get; set; }
///
///The ID of the customer this session is associated with
///
[ApiMember(Description="The ID of the customer this session is associated with")]
public virtual string CustomerId { get; set; }
///
///The customer breadcrumb this session is associated with
///
[ApiMember(Description="The customer breadcrumb this session is associated with")]
public virtual List CustomerBreadcrumb { get; set; }
///
///The name of the customer this session is associated with
///
[ApiMember(Description="The name of the customer this session is associated with")]
public virtual string CustomerName { get; set; }
///
///The ID of the endpoint associated with this session
///
[ApiMember(Description="The ID of the endpoint associated with this session")]
public virtual string EndpointId { get; set; }
///
///The name of the endpoint associated with this session
///
[ApiMember(Description="The name of the endpoint associated with this session")]
public virtual string EndpointName { get; set; }
///
///The date the call completed
///
[ApiMember(Description="The date the call completed")]
public virtual string DateCompleted { get; set; }
///
///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 virtual string Destination { get; set; }
///
///The to address if any
///
[ApiMember(Description="The to address if any")]
public virtual string ToAddress { get; set; }
///
///The from address if any
///
[ApiMember(Description="The from address if any")]
public virtual string FromAddress { get; set; }
///
///The from name if any
///
[ApiMember(Description="The from name if any")]
public virtual string FromName { get; set; }
///
///Answered by name (if any)
///
[ApiMember(Description="Answered by name (if any)")]
public virtual string AnsweredByName { get; set; }
///
///The ID of the queue member assigned to this call
///
[ApiMember(Description="The ID of the queue member assigned to this call")]
public virtual string QueueMemberId { get; set; }
///
///The flow channel
///
[ApiMember(Description="The flow channel")]
public virtual FlowChannels Channel { get; set; }
///
///Has the session ended
///
[ApiMember(Description="Has the session ended")]
public virtual bool Ended { get; set; }
///
///The outcome of the call
///
[ApiMember(Description="The outcome of the call")]
public virtual string Outcome { get; set; }
///
///The twilio Call SID of this session
///
[ApiMember(Description="The twilio Call SID of this session")]
public virtual string CallSid { get; set; }
///
///Any console data for this session
///
[ApiMember(Description="Any console data for this session")]
public virtual string ConsoleData { get; set; }
///
///The name of the hold queue for this call
///
[ApiMember(Description="The name of the hold queue for this call")]
public virtual string HoldQueueName { get; set; }
///
///The user ID who put this call on hold
///
[ApiMember(Description="The user ID who put this call on hold")]
public virtual string HeldByUserId { get; set; }
///
///The reason for the hold
///
[ApiMember(Description="The reason for the hold")]
public virtual SessionHoldReasons HoldReason { get; set; }
///
///The SID of the conference if in a conference call
///
[ApiMember(Description="The SID of the conference if in a conference call")]
public virtual string ConferenceSid { get; set; }
///
///The display name for this session
///
[ApiMember(Description="The display name for this session")]
public virtual string DisplayName { get; set; }
///
///The log entries for this session
///
[ApiMember(Description="The log entries for this session")]
public virtual List Log { get; set; }
///
///The members of this session
///
[ApiMember(Description="The members of this session")]
public virtual List Members { get; set; }
///
///The callback number (typically used for SIP to User calls)
///
[ApiMember(Description="The callback number (typically used for SIP to User calls)")]
public virtual string CallbackNumber { get; set; }
///
///The ID of the endpoint that answered
///
[ApiMember(Description="The ID of the endpoint that answered")]
public virtual string AnsweredById { get; set; }
///
///Is this session incoming or outgoing?
///
[ApiMember(Description="Is this session incoming or outgoing?")]
public virtual SessionDirections Direction { get; set; }
///
///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 virtual string FromPhoneNumber { get; set; }
///
///The Call SID of the most recently added conference participant
///
[ApiMember(Description="The Call SID of the most recently added conference participant")]
public virtual string MostRecentParticipantCallSid { get; set; }
///
///Was this session missed?
///
[ApiMember(Description="Was this session missed?")]
public virtual bool WasMissed { get; set; }
///
///The ring queue that the call is currently in
///
[ApiMember(Description="The ring queue that the call is currently in")]
public virtual string RingQueueId { get; set; }
}
}
namespace Voice.Api.Sys
{
public partial class LogEntryInfo
: EntityInfo
{
public LogEntryInfo()
{
CustomerBreadcrumb = new List{};
}
///
///The account ID this endpoint is associated with
///
[ApiMember(Description="The account ID this endpoint is associated with")]
public virtual string AccountId { get; set; }
///
///The name of the account this endpoint is associated with
///
[ApiMember(Description="The name of the account this endpoint is associated with")]
public virtual string AccountName { get; set; }
///
///The ID of the customer this endpoint is associated with
///
[ApiMember(Description="The ID of the customer this endpoint is associated with")]
public virtual string CustomerId { get; set; }
///
///The name of the customer this endpoint is associated with
///
[ApiMember(Description="The name of the customer this endpoint is associated with")]
public virtual string CustomerName { get; set; }
///
///The breadcrumb to the customer for this endpoint
///
[ApiMember(Description="The breadcrumb to the customer for this endpoint")]
public virtual List CustomerBreadcrumb { get; set; }
public virtual string UserName { get; set; }
public virtual string Description { get; set; }
}
}