/* 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; } } }