/* Options: Date: 2025-05-04 22:17:33 Version: 8.71 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://team.evovoice.io //Package: //GlobalNamespace: dtos //AddPropertyAccessors: True //SettersReturnThis: True //AddServiceStackTypes: True //AddResponseStatus: False //AddDescriptionAsComments: True //AddImplicitVersion: IncludeTypes: AppGetCallHistory.* //ExcludeTypes: //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,java.io.InputStream,net.servicestack.client.*,com.google.gson.annotations.*,com.google.gson.reflect.* */ import java.math.*; import java.util.*; import java.io.InputStream; import net.servicestack.client.*; import com.google.gson.annotations.*; import com.google.gson.reflect.*; public class dtos { @Route(Path="/portal/call-history", Verbs="GET") public static class AppGetCallHistory extends ListRequest implements IReturn> { public String accountId = null; public String customerId = null; public String getAccountId() { return accountId; } public AppGetCallHistory setAccountId(String value) { this.accountId = value; return this; } public String getCustomerId() { return customerId; } public AppGetCallHistory setCustomerId(String value) { this.customerId = value; return this; } private static Object responseType = new TypeToken>(){}.getType(); public Object getResponseType() { return responseType; } } public static class ListResponse { /** * The items */ @ApiMember(Description="The items") public ArrayList items = null; /** * The total number of items */ @ApiMember(Description="The total number of items") public Integer totalCount = null; /** * The total number of pages */ @ApiMember(Description="The total number of pages") public Integer totalPages = null; /** * Are there more pages of items? Used with simplified paging */ @ApiMember(Description="Are there more pages of items? Used with simplified paging") public Boolean hasMorePages = null; public ArrayList getItems() { return items; } public ListResponse setItems(ArrayList value) { this.items = value; return this; } public Integer getTotalCount() { return totalCount; } public ListResponse setTotalCount(Integer value) { this.totalCount = value; return this; } public Integer getTotalPages() { return totalPages; } public ListResponse setTotalPages(Integer value) { this.totalPages = value; return this; } public Boolean isHasMorePages() { return hasMorePages; } public ListResponse setHasMorePages(Boolean value) { this.hasMorePages = value; return this; } } public static enum SortOrders { Ascend, Descend; } public static class ListRequest implements IGet { /** * The page of data to retrieve */ @ApiMember(Description="The page of data to retrieve") public Integer page = null; /** * 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 Boolean all = null; /** * The number per page to retrieve */ @ApiMember(Description="The number per page to retrieve") public Integer countPerPage = null; /** * Specific IDs */ @ApiMember(Description="Specific IDs") public ArrayList specificIds = null; /** * Specify a sort field */ @ApiMember(Description="Specify a sort field") public String sortField = null; /** * Specify a sort order */ @ApiMember(Description="Specify a sort order") public SortOrders sortOrder = null; /** * 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 Boolean simplifiedPaging = null; public Integer getPage() { return page; } public ListRequest setPage(Integer value) { this.page = value; return this; } public Boolean isAll() { return all; } public ListRequest setAll(Boolean value) { this.all = value; return this; } public Integer getCountPerPage() { return countPerPage; } public ListRequest setCountPerPage(Integer value) { this.countPerPage = value; return this; } public ArrayList getSpecificIds() { return specificIds; } public ListRequest setSpecificIds(ArrayList value) { this.specificIds = value; return this; } public String getSortField() { return sortField; } public ListRequest setSortField(String value) { this.sortField = value; return this; } public SortOrders getSortOrder() { return sortOrder; } public ListRequest setSortOrder(SortOrders value) { this.sortOrder = value; return this; } public Boolean isSimplifiedPaging() { return simplifiedPaging; } public ListRequest setSimplifiedPaging(Boolean value) { this.simplifiedPaging = value; return this; } } public static enum FlowChannels { Voice, Chat, Fax; } public static enum SessionDirections { Incoming, Outgoing; } public static enum SessionCallState { Disconnected, Ringing, Connected, Hold, Passive; } public static enum SessionHoldReasons { None, Transferring; } public static enum SessionQueueStates { None, Queued, Ringing, Connected, Hold, Disconnected; } public static class EntityInfo { /** * The ID of the object */ @ApiMember(Description="The ID of the object") public String id = null; /** * The date the object was created */ @ApiMember(Description="The date the object was created") public String dateCreated = null; /** * The date the object was last modified */ @ApiMember(Description="The date the object was last modified") public String dateLastModified = null; /** * The user that created this object */ @ApiMember(Description="The user that created this object") public String createdBy = null; /** * The user that last modified this object */ @ApiMember(Description="The user that last modified this object") public String lastModifiedBy = null; public String getId() { return id; } public EntityInfo setId(String value) { this.id = value; return this; } public String getDateCreated() { return dateCreated; } public EntityInfo setDateCreated(String value) { this.dateCreated = value; return this; } public String getDateLastModified() { return dateLastModified; } public EntityInfo setDateLastModified(String value) { this.dateLastModified = value; return this; } public String getCreatedBy() { return createdBy; } public EntityInfo setCreatedBy(String value) { this.createdBy = value; return this; } public String getLastModifiedBy() { return lastModifiedBy; } public EntityInfo setLastModifiedBy(String value) { this.lastModifiedBy = value; return this; } } public static class CustomerBreadcrumb { public String id = null; public String name = null; public String getId() { return id; } public CustomerBreadcrumb setId(String value) { this.id = value; return this; } public String getName() { return name; } public CustomerBreadcrumb setName(String value) { this.name = value; return this; } } public static enum SessionDialState { None, Active; } public static class SessionLogInfo { public String date = null; public String message = null; public String getDate() { return date; } public SessionLogInfo setDate(String value) { this.date = value; return this; } public String getMessage() { return message; } public SessionLogInfo setMessage(String value) { this.message = value; return this; } } public static class SessionMemberInfo { public String identity = null; public String endpointId = null; public String displayName = null; public Boolean isOriginalMember = null; public String avatarUrl = null; public HashMap applicationData = null; public SessionMemberCallState callState = null; public SessionMemberRoles role = null; public String callSid = null; public Boolean muted = null; public String getIdentity() { return identity; } public SessionMemberInfo setIdentity(String value) { this.identity = value; return this; } public String getEndpointId() { return endpointId; } public SessionMemberInfo setEndpointId(String value) { this.endpointId = value; return this; } public String getDisplayName() { return displayName; } public SessionMemberInfo setDisplayName(String value) { this.displayName = value; return this; } public Boolean getIsOriginalMember() { return isOriginalMember; } public SessionMemberInfo setIsOriginalMember(Boolean value) { this.isOriginalMember = value; return this; } public String getAvatarUrl() { return avatarUrl; } public SessionMemberInfo setAvatarUrl(String value) { this.avatarUrl = value; return this; } public HashMap getApplicationData() { return applicationData; } public SessionMemberInfo setApplicationData(HashMap value) { this.applicationData = value; return this; } public SessionMemberCallState getCallState() { return callState; } public SessionMemberInfo setCallState(SessionMemberCallState value) { this.callState = value; return this; } public SessionMemberRoles getRole() { return role; } public SessionMemberInfo setRole(SessionMemberRoles value) { this.role = value; return this; } public String getCallSid() { return callSid; } public SessionMemberInfo setCallSid(String value) { this.callSid = value; return this; } public Boolean isMuted() { return muted; } public SessionMemberInfo setMuted(Boolean value) { this.muted = value; return this; } } public static enum SessionMemberCallState { None, Ringing, Connected, Hold; } public static enum SessionMemberRoles { None, Caller, Agent, Transfer; } public static class SessionInfo extends EntityInfo { /** * The state of the session */ @ApiMember(Description="The state of the session") public SessionDialState dialState = null; /** * The call state of the session */ @ApiMember(Description="The call state of the session") public SessionCallState callState = null; /** * The queue state of the session */ @ApiMember(Description="The queue state of the session") public SessionQueueStates queueState = null; /** * The ID of the account associated with the flow */ @ApiMember(Description="The ID of the account associated with the flow") public String accountId = null; /** * The name of the account associated with the session */ @ApiMember(Description="The name of the account associated with the session") public String accountName = null; /** * The ID of the customer this session is associated with */ @ApiMember(Description="The ID of the customer this session is associated with") public String customerId = null; /** * The customer breadcrumb this session is associated with */ @ApiMember(Description="The customer breadcrumb this session is associated with") public ArrayList customerBreadcrumb = null; /** * The name of the customer this session is associated with */ @ApiMember(Description="The name of the customer this session is associated with") public String customerName = null; /** * The ID of the endpoint associated with this session */ @ApiMember(Description="The ID of the endpoint associated with this session") public String endpointId = null; /** * The name of the endpoint associated with this session */ @ApiMember(Description="The name of the endpoint associated with this session") public String endpointName = null; /** * The date the call completed */ @ApiMember(Description="The date the call completed") public String dateCompleted = null; /** * 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 String destination = null; /** * The to address if any */ @ApiMember(Description="The to address if any") public String toAddress = null; /** * The from address if any */ @ApiMember(Description="The from address if any") public String fromAddress = null; /** * The from name if any */ @ApiMember(Description="The from name if any") public String fromName = null; /** * Answered by name (if any) */ @ApiMember(Description="Answered by name (if any)") public String answeredByName = null; /** * The ID of the queue member assigned to this call */ @ApiMember(Description="The ID of the queue member assigned to this call") public String queueMemberId = null; /** * The flow channel */ @ApiMember(Description="The flow channel") public FlowChannels channel = null; /** * Has the session ended */ @ApiMember(Description="Has the session ended") public Boolean ended = null; /** * The outcome of the call */ @ApiMember(Description="The outcome of the call") public String outcome = null; /** * The twilio Call SID of this session */ @ApiMember(Description="The twilio Call SID of this session") public String callSid = null; /** * Any console data for this session */ @ApiMember(Description="Any console data for this session") public String consoleData = null; /** * The name of the hold queue for this call */ @ApiMember(Description="The name of the hold queue for this call") public String holdQueueName = null; /** * The user ID who put this call on hold */ @ApiMember(Description="The user ID who put this call on hold") public String heldByUserId = null; /** * The reason for the hold */ @ApiMember(Description="The reason for the hold") public SessionHoldReasons holdReason = null; /** * The SID of the conference if in a conference call */ @ApiMember(Description="The SID of the conference if in a conference call") public String conferenceSid = null; /** * The display name for this session */ @ApiMember(Description="The display name for this session") public String displayName = null; /** * The log entries for this session */ @ApiMember(Description="The log entries for this session") public ArrayList log = null; /** * The members of this session */ @ApiMember(Description="The members of this session") public ArrayList members = null; /** * The callback number (typically used for SIP to User calls) */ @ApiMember(Description="The callback number (typically used for SIP to User calls)") public String callbackNumber = null; /** * The ID of the endpoint that answered */ @ApiMember(Description="The ID of the endpoint that answered") public String answeredById = null; /** * Is this session incoming or outgoing? */ @ApiMember(Description="Is this session incoming or outgoing?") public SessionDirections direction = null; /** * 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 String fromPhoneNumber = null; /** * The Call SID of the most recently added conference participant */ @ApiMember(Description="The Call SID of the most recently added conference participant") public String mostRecentParticipantCallSid = null; /** * Was this session missed? */ @ApiMember(Description="Was this session missed?") public Boolean wasMissed = null; /** * The ring queue that the call is currently in */ @ApiMember(Description="The ring queue that the call is currently in") public String ringQueueId = null; public SessionDialState getDialState() { return dialState; } public SessionInfo setDialState(SessionDialState value) { this.dialState = value; return this; } public SessionCallState getCallState() { return callState; } public SessionInfo setCallState(SessionCallState value) { this.callState = value; return this; } public SessionQueueStates getQueueState() { return queueState; } public SessionInfo setQueueState(SessionQueueStates value) { this.queueState = value; return this; } public String getAccountId() { return accountId; } public SessionInfo setAccountId(String value) { this.accountId = value; return this; } public String getAccountName() { return accountName; } public SessionInfo setAccountName(String value) { this.accountName = value; return this; } public String getCustomerId() { return customerId; } public SessionInfo setCustomerId(String value) { this.customerId = value; return this; } public ArrayList getCustomerBreadcrumb() { return customerBreadcrumb; } public SessionInfo setCustomerBreadcrumb(ArrayList value) { this.customerBreadcrumb = value; return this; } public String getCustomerName() { return customerName; } public SessionInfo setCustomerName(String value) { this.customerName = value; return this; } public String getEndpointId() { return endpointId; } public SessionInfo setEndpointId(String value) { this.endpointId = value; return this; } public String getEndpointName() { return endpointName; } public SessionInfo setEndpointName(String value) { this.endpointName = value; return this; } public String getDateCompleted() { return dateCompleted; } public SessionInfo setDateCompleted(String value) { this.dateCompleted = value; return this; } public String getDestination() { return destination; } public SessionInfo setDestination(String value) { this.destination = value; return this; } public String getToAddress() { return toAddress; } public SessionInfo setToAddress(String value) { this.toAddress = value; return this; } public String getFromAddress() { return fromAddress; } public SessionInfo setFromAddress(String value) { this.fromAddress = value; return this; } public String getFromName() { return fromName; } public SessionInfo setFromName(String value) { this.fromName = value; return this; } public String getAnsweredByName() { return answeredByName; } public SessionInfo setAnsweredByName(String value) { this.answeredByName = value; return this; } public String getQueueMemberId() { return queueMemberId; } public SessionInfo setQueueMemberId(String value) { this.queueMemberId = value; return this; } public FlowChannels getChannel() { return channel; } public SessionInfo setChannel(FlowChannels value) { this.channel = value; return this; } public Boolean isEnded() { return ended; } public SessionInfo setEnded(Boolean value) { this.ended = value; return this; } public String getOutcome() { return outcome; } public SessionInfo setOutcome(String value) { this.outcome = value; return this; } public String getCallSid() { return callSid; } public SessionInfo setCallSid(String value) { this.callSid = value; return this; } public String getConsoleData() { return consoleData; } public SessionInfo setConsoleData(String value) { this.consoleData = value; return this; } public String getHoldQueueName() { return holdQueueName; } public SessionInfo setHoldQueueName(String value) { this.holdQueueName = value; return this; } public String getHeldByUserId() { return heldByUserId; } public SessionInfo setHeldByUserId(String value) { this.heldByUserId = value; return this; } public SessionHoldReasons getHoldReason() { return holdReason; } public SessionInfo setHoldReason(SessionHoldReasons value) { this.holdReason = value; return this; } public String getConferenceSid() { return conferenceSid; } public SessionInfo setConferenceSid(String value) { this.conferenceSid = value; return this; } public String getDisplayName() { return displayName; } public SessionInfo setDisplayName(String value) { this.displayName = value; return this; } public ArrayList getLog() { return log; } public SessionInfo setLog(ArrayList value) { this.log = value; return this; } public ArrayList getMembers() { return members; } public SessionInfo setMembers(ArrayList value) { this.members = value; return this; } public String getCallbackNumber() { return callbackNumber; } public SessionInfo setCallbackNumber(String value) { this.callbackNumber = value; return this; } public String getAnsweredById() { return answeredById; } public SessionInfo setAnsweredById(String value) { this.answeredById = value; return this; } public SessionDirections getDirection() { return direction; } public SessionInfo setDirection(SessionDirections value) { this.direction = value; return this; } public String getFromPhoneNumber() { return fromPhoneNumber; } public SessionInfo setFromPhoneNumber(String value) { this.fromPhoneNumber = value; return this; } public String getMostRecentParticipantCallSid() { return mostRecentParticipantCallSid; } public SessionInfo setMostRecentParticipantCallSid(String value) { this.mostRecentParticipantCallSid = value; return this; } public Boolean isWasMissed() { return wasMissed; } public SessionInfo setWasMissed(Boolean value) { this.wasMissed = value; return this; } public String getRingQueueId() { return ringQueueId; } public SessionInfo setRingQueueId(String value) { this.ringQueueId = value; return this; } } }