Requires any of the roles: | SystemAdministrator, Manager, Customer |
GET | /endpoints/app/config |
---|
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;
public class dtos
{
public static class GetEndpointAppConfig
{
/**
* The endpoint whose config you want to get (this must be a User)
*/
@ApiMember(Description="The endpoint whose config you want to get (this must be a User)")
public String endpointId = null;
/**
* The endpoint email address whose config you want to get (this must be a User) - EndpointId takes priority over this
*/
@ApiMember(Description="The endpoint email address whose config you want to get (this must be a User) - EndpointId takes priority over this")
public String endpointEmailAddress = null;
/**
* The type of device you are requesting config for
*/
@ApiMember(Description="The type of device you are requesting config for")
public DeviceTypes deviceType = null;
/**
* Use a specific push credential SID
*/
@ApiMember(Description="Use a specific push credential SID")
public String pushCredentialSid = null;
/**
* Use a specific application SID
*/
@ApiMember(Description="Use a specific application SID")
public String applicationSid = null;
/**
* Is this device operating in a sandbox environment? IOS only.
*/
@ApiMember(Description="Is this device operating in a sandbox environment? IOS only.")
public Boolean sandbox = null;
public String getEndpointId() { return endpointId; }
public GetEndpointAppConfig setEndpointId(String value) { this.endpointId = value; return this; }
public String getEndpointEmailAddress() { return endpointEmailAddress; }
public GetEndpointAppConfig setEndpointEmailAddress(String value) { this.endpointEmailAddress = value; return this; }
public DeviceTypes getDeviceType() { return deviceType; }
public GetEndpointAppConfig setDeviceType(DeviceTypes value) { this.deviceType = value; return this; }
public String getPushCredentialSid() { return pushCredentialSid; }
public GetEndpointAppConfig setPushCredentialSid(String value) { this.pushCredentialSid = value; return this; }
public String getApplicationSid() { return applicationSid; }
public GetEndpointAppConfig setApplicationSid(String value) { this.applicationSid = value; return this; }
public Boolean isSandbox() { return sandbox; }
public GetEndpointAppConfig setSandbox(Boolean value) { this.sandbox = value; return this; }
}
public static enum DeviceTypes
{
Web,
IOS,
Android;
}
public static class AppConfig
{
/**
* The ID of this endpoint
*/
@ApiMember(Description="The ID of this endpoint")
public String endpointId = null;
/**
* The ID of the account
*/
@ApiMember(Description="The ID of the account")
public String accountId = null;
/**
* The customer ID associated with this user
*/
@ApiMember(Description="The customer ID associated with this user")
public String customerId = null;
/**
* The access token for use with Twilio Voice
*/
@ApiMember(Description="The access token for use with Twilio Voice")
public String accessToken = null;
/**
* The access token's identity
*/
@ApiMember(Description="The access token's identity")
public String identity = null;
/**
* The email address of the user
*/
@ApiMember(Description="The email address of the user")
public String emailAddress = null;
/**
* The user's information
*/
@ApiMember(Description="The user's information")
public AppUserInfo userInfo = null;
/**
* The agent state (for call center users)
*/
@ApiMember(Description="The agent state (for call center users)")
public AgentStates agentState = null;
/**
* The agent state reason
*/
@ApiMember(Description="The agent state reason")
public AgentStateReasons agentStateReason = null;
/**
* The tabs for the app
*/
@ApiMember(Description="The tabs for the app")
public ArrayList<Object> tabs = null;
/**
* The app settings
*/
@ApiMember(Description="The app settings")
public AppSettings appSettings = null;
/**
* The phone settings for third party connectivity
*/
@ApiMember(Description="The phone settings for third party connectivity")
public ThirdPartyPhoneSystemSettings thirdPartyPhoneSystemSettings = null;
public String getEndpointId() { return endpointId; }
public AppConfig setEndpointId(String value) { this.endpointId = value; return this; }
public String getAccountId() { return accountId; }
public AppConfig setAccountId(String value) { this.accountId = value; return this; }
public String getCustomerId() { return customerId; }
public AppConfig setCustomerId(String value) { this.customerId = value; return this; }
public String getAccessToken() { return accessToken; }
public AppConfig setAccessToken(String value) { this.accessToken = value; return this; }
public String getIdentity() { return identity; }
public AppConfig setIdentity(String value) { this.identity = value; return this; }
public String getEmailAddress() { return emailAddress; }
public AppConfig setEmailAddress(String value) { this.emailAddress = value; return this; }
public AppUserInfo getUserInfo() { return userInfo; }
public AppConfig setUserInfo(AppUserInfo value) { this.userInfo = value; return this; }
public AgentStates getAgentState() { return agentState; }
public AppConfig setAgentState(AgentStates value) { this.agentState = value; return this; }
public AgentStateReasons getAgentStateReason() { return agentStateReason; }
public AppConfig setAgentStateReason(AgentStateReasons value) { this.agentStateReason = value; return this; }
public ArrayList<Object> getTabs() { return tabs; }
public AppConfig setTabs(ArrayList<Object> value) { this.tabs = value; return this; }
public AppSettings getAppSettings() { return appSettings; }
public AppConfig setAppSettings(AppSettings value) { this.appSettings = value; return this; }
public ThirdPartyPhoneSystemSettings getThirdPartyPhoneSystemSettings() { return thirdPartyPhoneSystemSettings; }
public AppConfig setThirdPartyPhoneSystemSettings(ThirdPartyPhoneSystemSettings value) { this.thirdPartyPhoneSystemSettings = value; return this; }
}
public static class AppUserInfo
{
/**
* The user's first name
*/
@ApiMember(Description="The user's first name")
public String firstName = null;
/**
* The user's last name
*/
@ApiMember(Description="The user's last name")
public String lastName = null;
/**
* Shortcut to the user's full name
*/
@ApiMember(Description="Shortcut to the user's full name")
public String name = null;
/**
* The URL to the user's avatar
*/
@ApiMember(Description="The URL to the user's avatar")
public String avatarUrl = null;
public String getFirstName() { return firstName; }
public AppUserInfo setFirstName(String value) { this.firstName = value; return this; }
public String getLastName() { return lastName; }
public AppUserInfo setLastName(String value) { this.lastName = value; return this; }
public String getName() { return name; }
public AppUserInfo setName(String value) { this.name = value; return this; }
public String getAvatarUrl() { return avatarUrl; }
public AppUserInfo setAvatarUrl(String value) { this.avatarUrl = value; return this; }
}
public static enum AgentStates
{
Unknown,
Ready,
NotReady,
LoggedOut,
WrapUp,
Outgoing,
Other;
}
public static enum AgentStateReasons
{
Unknown,
SetByUser,
MissedCall,
SetBySystem;
}
public static class AppSettings
{
public Boolean enablePhoneNumberManagement = null;
public Boolean enableDeviceManagement = null;
public Boolean enableDialer = null;
public Boolean enableCallHistory = null;
public Boolean enableAssistants = null;
public Boolean showFileNameInMessageCenter = null;
public String chakraTheme = null;
public String customCss = null;
public String pageTitle = null;
public String stringMappings = null;
public String logoutUrl = null;
public String portMyNumberUrl = null;
public Boolean isEnablePhoneNumberManagement() { return enablePhoneNumberManagement; }
public AppSettings setEnablePhoneNumberManagement(Boolean value) { this.enablePhoneNumberManagement = value; return this; }
public Boolean isEnableDeviceManagement() { return enableDeviceManagement; }
public AppSettings setEnableDeviceManagement(Boolean value) { this.enableDeviceManagement = value; return this; }
public Boolean isEnableDialer() { return enableDialer; }
public AppSettings setEnableDialer(Boolean value) { this.enableDialer = value; return this; }
public Boolean isEnableCallHistory() { return enableCallHistory; }
public AppSettings setEnableCallHistory(Boolean value) { this.enableCallHistory = value; return this; }
public Boolean isEnableAssistants() { return enableAssistants; }
public AppSettings setEnableAssistants(Boolean value) { this.enableAssistants = value; return this; }
public Boolean isShowFileNameInMessageCenter() { return showFileNameInMessageCenter; }
public AppSettings setShowFileNameInMessageCenter(Boolean value) { this.showFileNameInMessageCenter = value; return this; }
public String getChakraTheme() { return chakraTheme; }
public AppSettings setChakraTheme(String value) { this.chakraTheme = value; return this; }
public String getCustomCss() { return customCss; }
public AppSettings setCustomCss(String value) { this.customCss = value; return this; }
public String getPageTitle() { return pageTitle; }
public AppSettings setPageTitle(String value) { this.pageTitle = value; return this; }
public String getStringMappings() { return stringMappings; }
public AppSettings setStringMappings(String value) { this.stringMappings = value; return this; }
public String getLogoutUrl() { return logoutUrl; }
public AppSettings setLogoutUrl(String value) { this.logoutUrl = value; return this; }
public String getPortMyNumberUrl() { return portMyNumberUrl; }
public AppSettings setPortMyNumberUrl(String value) { this.portMyNumberUrl = value; return this; }
}
public static class ThirdPartyPhoneSystemSettings
{
public ThirdPartyPhoneSystemTypes type = null;
public ThirdPartySipSettings sipSettings = null;
public ThirdPartyDemoSettings demoSettings = null;
public ThirdPartyPhoneSystemTypes getType() { return type; }
public ThirdPartyPhoneSystemSettings setType(ThirdPartyPhoneSystemTypes value) { this.type = value; return this; }
public ThirdPartySipSettings getSipSettings() { return sipSettings; }
public ThirdPartyPhoneSystemSettings setSipSettings(ThirdPartySipSettings value) { this.sipSettings = value; return this; }
public ThirdPartyDemoSettings getDemoSettings() { return demoSettings; }
public ThirdPartyPhoneSystemSettings setDemoSettings(ThirdPartyDemoSettings value) { this.demoSettings = value; return this; }
}
public static enum ThirdPartyPhoneSystemTypes
{
Demo,
Sip;
}
public static class ThirdPartySipSettings
{
public ArrayList<ThirdPartySipAccountSettings> accounts = null;
public ArrayList<ThirdPartySipAccountSettings> getAccounts() { return accounts; }
public ThirdPartySipSettings setAccounts(ArrayList<ThirdPartySipAccountSettings> value) { this.accounts = value; return this; }
}
public static class ThirdPartySipAccountSettings
{
public String number = null;
public String agent = null;
public String authName = null;
public String userName = null;
public String displayName = null;
public String password = null;
public String userDomain = null;
public Integer registrationExpires = null;
public TransportTypes transportType = null;
public String localIP = null;
public Integer localPort = null;
public String sipServer = null;
public Integer sipServerPort = null;
public String outboundServer = null;
public Integer outboundServerPort = null;
public String stunServer = null;
public Integer stunPort = null;
public String audioPlaybackDeviceName = null;
public String audioRecordingDeviceName = null;
public ArrayList<AudioCodecTypes> audioCodecs = null;
public DtmfMethods dtmfMethod = null;
public String getNumber() { return number; }
public ThirdPartySipAccountSettings setNumber(String value) { this.number = value; return this; }
public String getAgent() { return agent; }
public ThirdPartySipAccountSettings setAgent(String value) { this.agent = value; return this; }
public String getAuthName() { return authName; }
public ThirdPartySipAccountSettings setAuthName(String value) { this.authName = value; return this; }
public String getUserName() { return userName; }
public ThirdPartySipAccountSettings setUserName(String value) { this.userName = value; return this; }
public String getDisplayName() { return displayName; }
public ThirdPartySipAccountSettings setDisplayName(String value) { this.displayName = value; return this; }
public String getPassword() { return password; }
public ThirdPartySipAccountSettings setPassword(String value) { this.password = value; return this; }
public String getUserDomain() { return userDomain; }
public ThirdPartySipAccountSettings setUserDomain(String value) { this.userDomain = value; return this; }
public Integer getRegistrationExpires() { return registrationExpires; }
public ThirdPartySipAccountSettings setRegistrationExpires(Integer value) { this.registrationExpires = value; return this; }
public TransportTypes getTransportType() { return transportType; }
public ThirdPartySipAccountSettings setTransportType(TransportTypes value) { this.transportType = value; return this; }
public String getLocalIP() { return localIP; }
public ThirdPartySipAccountSettings setLocalIP(String value) { this.localIP = value; return this; }
public Integer getLocalPort() { return localPort; }
public ThirdPartySipAccountSettings setLocalPort(Integer value) { this.localPort = value; return this; }
public String getSipServer() { return sipServer; }
public ThirdPartySipAccountSettings setSipServer(String value) { this.sipServer = value; return this; }
public Integer getSipServerPort() { return sipServerPort; }
public ThirdPartySipAccountSettings setSipServerPort(Integer value) { this.sipServerPort = value; return this; }
public String getOutboundServer() { return outboundServer; }
public ThirdPartySipAccountSettings setOutboundServer(String value) { this.outboundServer = value; return this; }
public Integer getOutboundServerPort() { return outboundServerPort; }
public ThirdPartySipAccountSettings setOutboundServerPort(Integer value) { this.outboundServerPort = value; return this; }
public String getStunServer() { return stunServer; }
public ThirdPartySipAccountSettings setStunServer(String value) { this.stunServer = value; return this; }
public Integer getStunPort() { return stunPort; }
public ThirdPartySipAccountSettings setStunPort(Integer value) { this.stunPort = value; return this; }
public String getAudioPlaybackDeviceName() { return audioPlaybackDeviceName; }
public ThirdPartySipAccountSettings setAudioPlaybackDeviceName(String value) { this.audioPlaybackDeviceName = value; return this; }
public String getAudioRecordingDeviceName() { return audioRecordingDeviceName; }
public ThirdPartySipAccountSettings setAudioRecordingDeviceName(String value) { this.audioRecordingDeviceName = value; return this; }
public ArrayList<AudioCodecTypes> getAudioCodecs() { return audioCodecs; }
public ThirdPartySipAccountSettings setAudioCodecs(ArrayList<AudioCodecTypes> value) { this.audioCodecs = value; return this; }
public DtmfMethods getDtmfMethod() { return dtmfMethod; }
public ThirdPartySipAccountSettings setDtmfMethod(DtmfMethods value) { this.dtmfMethod = value; return this; }
}
public static enum TransportTypes
{
Udp,
Tls,
Tcp,
Pers;
}
public static enum 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);
private final int value;
AudioCodecTypes(final int intValue) { value = intValue; }
public int getValue() { return value; }
}
public static enum DtmfMethods
{
RfC2833,
Info;
}
public static class ThirdPartyDemoSettings
{
public String extension = null;
public String getExtension() { return extension; }
public ThirdPartyDemoSettings setExtension(String value) { this.extension = value; return this; }
}
}
Java GetEndpointAppConfig DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /endpoints/app/config HTTP/1.1 Host: team.evovoice.io Accept: text/jsonl
HTTP/1.1 200 OK Content-Type: text/jsonl Content-Length: length {"endpointId":"String","accountId":"String","customerId":"String","accessToken":"String","identity":"String","emailAddress":"String","userInfo":{"firstName":"String","lastName":"String","name":"String","avatarUrl":"String"},"agentState":"Unknown","agentStateReason":"Unknown","tabs":[{}],"appSettings":{"enablePhoneNumberManagement":false,"enableDeviceManagement":false,"enableDialer":false,"enableCallHistory":false,"enableAssistants":false,"showFileNameInMessageCenter":false,"chakraTheme":"String","customCss":"String","pageTitle":"String","stringMappings":"String","logoutUrl":"String","portMyNumberUrl":"String"},"thirdPartyPhoneSystemSettings":{"type":"Demo","sipSettings":{"accounts":[{"number":"String","agent":"String","authName":"String","userName":"String","displayName":"String","password":"String","userDomain":"String","registrationExpires":0,"transportType":"UDP","localIP":"String","localPort":0,"sipServer":"String","sipServerPort":0,"outboundServer":"String","outboundServerPort":0,"stunServer":"String","stunPort":0,"audioPlaybackDeviceName":"String","audioRecordingDeviceName":"String","audioCodecs":["PCMU"],"dtmfMethod":"RFC2833"}]},"demoSettings":{"extension":"String"}}}