(* Options: Date: 2025-05-04 23:13:33 Version: 8.71 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://team.evovoice.io //GlobalNamespace: //MakeDataContractsExtensible: False //AddReturnMarker: True //AddDescriptionAsComments: True //AddDataContractAttributes: False //AddIndexesToDataMembers: False //AddGeneratedCodeAttributes: False //AddResponseStatus: False //AddImplicitVersion: //ExportValueTypes: False IncludeTypes: GetEndpointAppConfig.* //ExcludeTypes: //InitializeCollections: False //AddNamespaces: *) namespace Voice.Api.App open System open System.IO open System.Collections open System.Collections.Generic open System.Runtime.Serialization open ServiceStack open ServiceStack.DataAnnotations type DeviceTypes = | Web = 0 | iOS = 1 | Android = 2 [] type AppSettings() = member val EnablePhoneNumberManagement:Boolean = new Boolean() with get,set member val EnableDeviceManagement:Boolean = new Boolean() with get,set member val EnableDialer:Boolean = new Boolean() with get,set member val EnableCallHistory:Boolean = new Boolean() with get,set member val EnableAssistants:Boolean = new Boolean() with get,set member val ShowFileNameInMessageCenter:Boolean = new Boolean() with get,set member val ChakraTheme:String = null with get,set member val CustomCss:String = null with get,set member val PageTitle:String = null with get,set member val StringMappings:String = null with get,set member val LogoutUrl:String = null with get,set member val PortMyNumberUrl:String = null with get,set type ThirdPartyPhoneSystemTypes = | Demo = 0 | Sip = 1 type TransportTypes = | UDP = 0 | TLS = 1 | TCP = 2 | PERS = 3 type AudioCodecTypes = | PCMU = 0 | GSM = 3 | PCMA = 8 | G722 = 9 | G729 = 18 | ILBC = 97 | AMR = 98 | AMRWB = 99 | SPEEX = 100 | DTMF = 101 | SPEEXWB = 102 | ISACWB = 103 | ISACSWB = 104 | OPUS = 105 | G7221 = 121 | NONE = -1 type DtmfMethods = | RFC2833 = 0 | INFO = 1 [] type ThirdPartySipAccountSettings() = member val Number:String = null with get,set member val Agent:String = null with get,set member val AuthName:String = null with get,set member val UserName:String = null with get,set member val DisplayName:String = null with get,set member val Password:String = null with get,set member val UserDomain:String = null with get,set member val RegistrationExpires:Int32 = new Int32() with get,set member val TransportType:TransportTypes = new TransportTypes() with get,set member val LocalIP:String = null with get,set member val LocalPort:Int32 = new Int32() with get,set member val SipServer:String = null with get,set member val SipServerPort:Int32 = new Int32() with get,set member val OutboundServer:String = null with get,set member val OutboundServerPort:Int32 = new Int32() with get,set member val StunServer:String = null with get,set member val StunPort:Int32 = new Int32() with get,set member val AudioPlaybackDeviceName:String = null with get,set member val AudioRecordingDeviceName:String = null with get,set member val AudioCodecs:ResizeArray = null with get,set member val DTMFMethod:DtmfMethods = new DtmfMethods() with get,set [] type ThirdPartySipSettings() = member val Accounts:ResizeArray = null with get,set [] type ThirdPartyDemoSettings() = member val Extension:String = null with get,set [] type ThirdPartyPhoneSystemSettings() = member val Type:ThirdPartyPhoneSystemTypes = new ThirdPartyPhoneSystemTypes() with get,set member val SipSettings:ThirdPartySipSettings = null with get,set member val DemoSettings:ThirdPartyDemoSettings = null with get,set type AgentStates = | Unknown = 0 | Ready = 1 | NotReady = 2 | LoggedOut = 3 | WrapUp = 4 | Outgoing = 5 | Other = 6 type AgentStateReasons = | Unknown = 0 | SetByUser = 1 | MissedCall = 2 | SetBySystem = 3 [] type AppUserInfo() = /// ///The user's first name /// [] member val FirstName:String = null with get,set /// ///The user's last name /// [] member val LastName:String = null with get,set /// ///Shortcut to the user's full name /// [] member val Name:String = null with get,set /// ///The URL to the user's avatar /// [] member val AvatarUrl:String = null with get,set [] type AppConfig() = /// ///The ID of this endpoint /// [] member val EndpointId:String = null with get,set /// ///The ID of the account /// [] member val AccountId:String = null with get,set /// ///The customer ID associated with this user /// [] member val CustomerId:String = null with get,set /// ///The access token for use with Twilio Voice /// [] member val AccessToken:String = null with get,set /// ///The access token's identity /// [] member val Identity:String = null with get,set /// ///The email address of the user /// [] member val EmailAddress:String = null with get,set /// ///The user's information /// [] member val UserInfo:AppUserInfo = null with get,set /// ///The agent state (for call center users) /// [] member val AgentState:AgentStates = new AgentStates() with get,set /// ///The agent state reason /// [] member val AgentStateReason:AgentStateReasons = new AgentStateReasons() with get,set /// ///The tabs for the app /// [] member val Tabs:ResizeArray = null with get,set /// ///The app settings /// [] member val AppSettings:AppSettings = null with get,set /// ///The phone settings for third party connectivity /// [] member val ThirdPartyPhoneSystemSettings:ThirdPartyPhoneSystemSettings = null with get,set [] [] type GetEndpointAppConfig() = interface IReturn /// ///The endpoint whose config you want to get (this must be a User) /// [] member val EndpointId:String = null with get,set /// ///The endpoint email address whose config you want to get (this must be a User) - EndpointId takes priority over this /// [] member val EndpointEmailAddress:String = null with get,set /// ///The type of device you are requesting config for /// [] member val DeviceType:DeviceTypes = new DeviceTypes() with get,set /// ///Use a specific push credential SID /// [] member val PushCredentialSid:String = null with get,set /// ///Use a specific application SID /// [] member val ApplicationSid:String = null with get,set /// ///Is this device operating in a sandbox environment? IOS only. /// [] member val Sandbox:Boolean = new Boolean() with get,set