├── .gitignore ├── LICENSE ├── README.md ├── SwitchvoxAPI.sln └── SwitchvoxAPI ├── Attributes └── XmlEnumGroupAttribute.cs ├── Deserialization ├── Deserializer.cs ├── XmlAttributeType.cs ├── XmlMapping.cs └── XmlSerializer.cs ├── Enums ├── CallEventType.cs ├── CallLogSearchCriteria.cs ├── CallOrigination.cs ├── CallQueueStrategy.cs ├── CallTypes.cs ├── CurrentCallState.cs ├── ExtensionIdentifier.cs ├── ExtensionType.cs ├── QueueCallType.cs └── QueueLoginType.cs ├── Exceptions ├── MissingAttributeException.cs ├── SwitchvoxRequestException.cs ├── UnauthorizedRequestException.cs └── XmlDeserializationException.cs ├── Helpers ├── AttributeUtilities.cs └── ConvertExtensions.cs ├── Methods ├── Call.cs ├── CallLogs │ ├── Search.cs │ └── _CallLogs.cs ├── CallQueueLogs │ ├── Search.cs │ └── _CallQueueLogs.cs ├── CallQueues │ ├── GetCurrentStatus.cs │ └── _CallQueues.cs ├── CurrentCalls │ ├── GetList.cs │ ├── HangUp.cs │ └── _CurrentCalls.cs ├── ExtensionGroups │ ├── GetInfo.cs │ ├── GetList.cs │ └── _ExtensionGroups.cs ├── Extensions │ ├── GetInfo.cs │ ├── Search.cs │ ├── Settings │ │ ├── GetInfo.cs │ │ └── _Settings.cs │ └── _Extensions.cs ├── IVR │ ├── GlobalVariables │ │ ├── Add.cs │ │ ├── GetList.cs │ │ ├── Remove.cs │ │ ├── Update.cs │ │ └── _GlobalVariables.cs │ └── _IVR.cs └── Users │ ├── Call.cs │ ├── CallQueues │ ├── GetTodaysStatus.cs │ └── _CallQueuesUsers.cs │ ├── GetMyInfo.cs │ └── _Users.cs ├── PowerShell ├── Base │ └── SwitchvoxCmdlet.cs ├── Cmdlet │ ├── Actions │ │ ├── AddSvxIVRVariable.cs │ │ ├── DisconnectSvxCall.cs │ │ ├── InvokeSvxCall.cs │ │ ├── RemoveSvxIVRVariable.cs │ │ └── SetSvxIVRVariable.cs │ ├── ConnectSvxServer.cs │ ├── Data │ │ ├── GetSvxCall.cs │ │ ├── GetSvxCallLog.cs │ │ ├── GetSvxCallQueueLog.cs │ │ ├── GetSvxCallQueueStatus.cs │ │ ├── GetSvxExtension.cs │ │ ├── GetSvxExtensionGroup.cs │ │ ├── GetSvxExtensionSettings.cs │ │ ├── GetSvxIVRVariable.cs │ │ └── GetSvxUserCallQueueStatus.cs │ ├── DisconnectSvxServer.cs │ └── GetSvxClient.cs ├── Resources │ ├── SwitchvoxAPI.Format.ps1xml │ ├── SwitchvoxAPI.GoSvox.ps1 │ ├── SwitchvoxAPI.cmd │ ├── SwitchvoxAPI.psd1 │ ├── SwitchvoxAPI.psm1 │ └── SwitchvoxAPI.tt └── SwitchvoxSessionState.cs ├── Properties ├── AssemblyFileVersion.cs ├── AssemblyFileVersion.tt ├── AssemblyInfo.cs ├── AssemblyVersion.cs └── AssemblyVersion.tt ├── Request ├── RequestMethod.cs └── SwitchvoxClient.cs ├── Responses ├── CallLogs │ ├── CallLog.cs │ ├── CallLogEvent.cs │ └── CallLogs.cs ├── CallQueueLogs │ └── CallQueueLog.cs ├── CallQueues │ ├── CallQueueCurrentStatus.cs │ └── CallQueueCurrentStatusMember.cs ├── CurrentCalls │ └── CurrentCall.cs ├── ExtensionGroups │ ├── ExtensionGroup.cs │ ├── ExtensionGroupDependent.cs │ ├── ExtensionGroupMember.cs │ └── ExtensionGroupOverview.cs ├── Extensions │ ├── Extension.cs │ └── Settings │ │ └── ExtensionSettings.cs ├── IVR │ └── GlobalVariables │ │ └── GlobalIVRVariable.cs ├── ListDeserializationLayer.cs ├── ListDeserializationLayers.cs └── Users │ ├── CallQueueStatusMember.cs │ └── CallQueues │ ├── BaseCallQueueStatusMember.cs │ ├── CallQueueTodaysStatus.cs │ ├── CallQueueTodaysStatusCallsWaiting.cs │ ├── CallQueueTodaysStatusDetails.cs │ ├── CallQueueTodaysStatusMember.cs │ ├── CallQueueTodaysStatusOverview.cs │ └── CallQueueTodaysStatusStatus.cs ├── SwitchvoxAPI.csproj ├── SwitchvoxAPI.nuspec ├── _Unimplemented ├── AccessControl │ ├── Add.cs │ ├── GetInfo.cs │ ├── GetList.cs │ ├── IsAllowed.cs │ ├── Remove.cs │ └── Update.cs ├── AddonLicenses │ └── GetList.cs ├── Admins │ ├── AccessPermissions │ │ ├── GetInfo.cs │ │ └── Update.cs │ ├── Add.cs │ ├── GetInfo.cs │ ├── GetList.cs │ ├── Remove.cs │ └── Update.cs ├── Backups │ ├── Add.cs │ ├── Apply.cs │ ├── Directories │ │ ├── GetInfo.cs │ │ └── GetList.cs │ ├── GetList.cs │ └── Remove.cs ├── BlockedIPs │ ├── GetInfo.cs │ ├── GetList.cs │ ├── Remove.cs │ └── Settings │ │ ├── GetInfo.cs │ │ └── Update.cs ├── CallQueueMemberLogs │ └── Search.cs ├── CallQueueMemberReports │ └── Search.cs ├── CallQueueMissedCalls │ └── Search.cs ├── CallQueueReports │ └── Search.cs ├── CallRecordings │ ├── RecordedCalls │ │ └── Remove.cs │ ├── ScheduledRecordings │ │ ├── Add.cs │ │ ├── GetList.cs │ │ ├── Remove.cs │ │ └── Update.cs │ └── Settings │ │ ├── GetInfo.cs │ │ └── Update.cs ├── CallReports │ ├── CallQueues │ │ └── Search.cs │ ├── DID │ │ └── Search.cs │ ├── IVRs │ │ └── Search.cs │ ├── Phones │ │ └── Search.cs │ ├── Providers │ │ └── Search.cs │ └── Search.cs ├── ConvergedDevices │ ├── GetList.cs │ └── Search.cs ├── Debug │ ├── ACLI │ │ ├── Sessions │ │ │ ├── GetInfo.cs │ │ │ ├── GetList.cs │ │ │ └── GetLog.cs │ │ ├── StartSession.cs │ │ └── StopSession.cs │ ├── PCAP │ │ ├── Sessions │ │ │ ├── GetInfo.cs │ │ │ ├── GetList.cs │ │ │ └── GetLog.cs │ │ ├── StartSession.cs │ │ └── StopSession.cs │ ├── PRI │ │ ├── Sessions │ │ │ ├── GetInfo.cs │ │ │ ├── GetList.cs │ │ │ └── GetLog.cs │ │ ├── StartSession.cs │ │ └── StopSession.cs │ └── Sessions │ │ ├── GetList.cs │ │ └── GetTypes.cs ├── DigiumPhones │ ├── Apps │ │ ├── Add.cs │ │ ├── GetList.cs │ │ ├── Remove.cs │ │ └── Update.cs │ └── Assignments │ │ ├── Add.cs │ │ ├── CheckConflicts.cs │ │ ├── GetInfo.cs │ │ ├── GetList.cs │ │ ├── Ignore │ │ ├── Add.cs │ │ └── Remove.cs │ │ ├── Options │ │ ├── GetInfo.cs │ │ └── Update.cs │ │ ├── Remove.cs │ │ └── Update.cs ├── Directories │ ├── GetExtensionList.cs │ ├── GetInfo.cs │ └── Update.cs ├── DistinctiveRing │ └── Tones │ │ ├── Add.cs │ │ ├── GetFile.cs │ │ ├── GetList.cs │ │ ├── Remove.cs │ │ └── Update.cs ├── ExtensionGroups │ ├── Add.cs │ ├── Members │ │ ├── Add.cs │ │ ├── Remove.cs │ │ └── Update.cs │ ├── Remove.cs │ └── Update.cs ├── ExternalContacts │ ├── GetInfo.cs │ ├── Remove.cs │ └── Update.cs ├── File │ └── Add.cs ├── IVR │ └── DistinctiveRingHints │ │ ├── Add.cs │ │ ├── GetList.cs │ │ └── Remove.cs ├── Images │ ├── Add.cs │ ├── GetFile.cs │ ├── Remove.cs │ └── UpdateCrop.cs ├── IncomingCallerIdRules │ ├── Add.cs │ ├── GetInfo.cs │ ├── GetList.cs │ ├── Remove.cs │ ├── Search.cs │ └── Update.cs ├── IncomingDIDRoutes │ ├── Add.cs │ ├── GetInfo.cs │ ├── GetList.cs │ ├── Remove.cs │ ├── Search.cs │ └── Update.cs ├── Info │ ├── GetList.cs │ ├── GetMaximumConcurrentCalls.cs │ ├── GetPhoneConfigurationTokens.cs │ ├── GetSoftwareVersion.cs │ └── GetUserExtensions.cs ├── Localization │ ├── GetInfo.cs │ └── Update.cs ├── Network │ └── HostAddresses │ │ ├── Add.cs │ │ ├── GetInfo.cs │ │ ├── GetList.cs │ │ ├── Remove.cs │ │ └── Update.cs ├── OutgoingCallDiagnostics │ ├── GetInfo.cs │ └── Update.cs ├── OutgoingCallRules │ ├── Add.cs │ ├── CheckConflicts.cs │ ├── GetInfo.cs │ ├── GetList.cs │ ├── Remove.cs │ └── Update.cs ├── OutgoingCallerIdRules │ ├── Add.cs │ ├── GetInfo.cs │ ├── GetList.cs │ ├── Remove.cs │ ├── Search.cs │ └── Update.cs ├── ParkingLots │ └── GetList.cs ├── PhoneSetup │ ├── Options │ │ ├── GetInfo.cs │ │ └── Update.cs │ └── Phones │ │ ├── Bulk │ │ └── Update.cs │ │ ├── Configured │ │ └── AdditionalLines │ │ │ ├── GetList.cs │ │ │ └── Update.cs │ │ ├── GetList.cs │ │ ├── Reboot.cs │ │ └── Update.cs ├── Progress │ └── Check.cs ├── Providers │ └── GetList.cs ├── SNMPSettings │ ├── GetInfo.cs │ └── Update.cs ├── ScheduledReports │ ├── CallReports │ │ ├── Add.cs │ │ ├── GetInfo.cs │ │ ├── GetList.cs │ │ ├── Remove.cs │ │ └── Update.cs │ ├── QueueMemberReports │ │ ├── Add.cs │ │ ├── GetInfo.cs │ │ ├── GetList.cs │ │ ├── Remove.cs │ │ └── Update.cs │ └── QueueReports │ │ ├── Add.cs │ │ ├── GetInfo.cs │ │ ├── GetList.cs │ │ ├── Remove.cs │ │ └── Update.cs ├── Scheduler │ ├── Add.cs │ ├── GetInfo.cs │ ├── Remove.cs │ └── Update.cs ├── Status │ ├── Hardware │ │ ├── GetDiskInfo.cs │ │ ├── GetList.cs │ │ ├── GetLoadInfo.cs │ │ └── GetMemoryInfo.cs │ ├── Phones │ │ └── GetList.cs │ └── VoipProviders │ │ └── GetList.cs ├── SystemClock │ └── GetInfo.cs ├── TechSupport │ ├── Connect.cs │ ├── Disconnect.cs │ └── GetConnectionStatus.cs ├── Updates │ ├── Apply.cs │ ├── Download.cs │ ├── GetList.cs │ └── GetRenewalDate.cs ├── Users │ ├── Call.cs │ ├── CallQueues │ │ ├── GetList.cs │ │ ├── Login.cs │ │ ├── Logout.cs │ │ ├── Pause.cs │ │ └── Resume.cs │ ├── CallRuleSets │ │ ├── GetList.cs │ │ ├── Remove.cs │ │ ├── Rules │ │ │ └── GetList.cs │ │ └── Update.cs │ ├── ConvergedDevices │ │ ├── Add.cs │ │ ├── Authorize.cs │ │ ├── Deauthorize.cs │ │ ├── GetList.cs │ │ ├── Remove.cs │ │ └── Update.cs │ ├── Cookies │ │ └── GetPassword.cs │ ├── CurrentCalls │ │ ├── GetList.cs │ │ ├── SendToVoicemail.cs │ │ ├── StartRecording.cs │ │ └── StopRecording.cs │ ├── DeviceStatus │ │ └── GetInfo.cs │ ├── DistinctiveRing │ │ ├── Rules │ │ │ ├── Add.cs │ │ │ ├── Conditions │ │ │ │ ├── Add.cs │ │ │ │ ├── Remove.cs │ │ │ │ └── Update.cs │ │ │ ├── GetList.cs │ │ │ ├── Remove.cs │ │ │ └── Update.cs │ │ └── Tones │ │ │ ├── Add.cs │ │ │ ├── GetFile.cs │ │ │ ├── GetList.cs │ │ │ ├── Remove.cs │ │ │ └── Update.cs │ ├── ExtensionGroups │ │ └── GetList.cs │ ├── Extensions │ │ └── GetInfo.cs │ ├── Fax │ │ └── GetFile.cs │ ├── GetMyInfo.cs │ ├── Info │ │ └── GetSoftwareVersion.cs │ ├── Localization │ │ ├── GetInfo.cs │ │ └── Update.cs │ ├── ParkingLots │ │ └── GetList.cs │ ├── PhoneOptions │ │ ├── GetInfo.cs │ │ └── Update.cs │ ├── Phonebooks │ │ ├── DesiStrip │ │ │ └── GetFile.cs │ │ ├── Entries │ │ │ ├── Add.cs │ │ │ └── GetInfo.cs │ │ ├── GetInfo.cs │ │ └── GetList.cs │ ├── Phones │ │ ├── GetList.cs │ │ ├── IdleScreenImages │ │ │ ├── Add.cs │ │ │ ├── GetFile.cs │ │ │ └── Remove.cs │ │ └── Reboot.cs │ ├── Presence │ │ ├── GetInfo.cs │ │ ├── Options │ │ │ ├── Add.cs │ │ │ ├── GetList.cs │ │ │ ├── Remove.cs │ │ │ └── Update.cs │ │ └── Update.cs │ ├── Profile │ │ ├── ExtraNumbers │ │ │ ├── Add.cs │ │ │ ├── GetList.cs │ │ │ ├── Remove.cs │ │ │ └── Update.cs │ │ └── Images │ │ │ ├── Add.cs │ │ │ ├── Attach.cs │ │ │ ├── GetFile.cs │ │ │ ├── Remove.cs │ │ │ └── UpdateCrop.cs │ ├── Timezone │ │ └── GetInfo.cs │ ├── Voicemail │ │ ├── Forward.cs │ │ ├── GetFile.cs │ │ ├── GetFolderList.cs │ │ ├── GetList.cs │ │ ├── GetQuota.cs │ │ ├── GetUsedSpace.cs │ │ ├── MarkRead.cs │ │ ├── MarkUnread.cs │ │ ├── Move.cs │ │ ├── Play.cs │ │ └── Remove.cs │ ├── VoicemailGreetingTypes │ │ ├── Activate.cs │ │ └── GetList.cs │ └── VoicemailGreetings │ │ ├── Add.cs │ │ ├── GetFile.cs │ │ ├── GetList.cs │ │ ├── GetSettings.cs │ │ ├── Remove.cs │ │ ├── Update.cs │ │ └── UpdateSettings.cs └── extensions │ ├── AgentLogIn │ ├── Add.cs │ ├── GetInfo.cs │ ├── Remove.cs │ └── Update.cs │ ├── AgentLogOut │ ├── Add.cs │ ├── GetInfo.cs │ ├── Remove.cs │ └── Update.cs │ ├── CallParking │ ├── Add.cs │ ├── GetInfo.cs │ ├── Remove.cs │ └── Update.cs │ ├── CallQueues │ ├── Add.cs │ ├── GetInfo.cs │ ├── Members │ │ ├── Add.cs │ │ └── Remove.cs │ ├── Remove.cs │ └── Update.cs │ ├── DialTone │ ├── Add.cs │ ├── GetInfo.cs │ └── Remove.cs │ ├── Directory │ ├── Add.cs │ ├── GetInfo.cs │ ├── Remove.cs │ └── Update.cs │ ├── FeatureCodes │ ├── CallMonitoring │ │ ├── Add.cs │ │ ├── GetInfo.cs │ │ ├── Remove.cs │ │ └── Update.cs │ ├── DirectedPickup │ │ ├── Add.cs │ │ ├── GetInfo.cs │ │ ├── Remove.cs │ │ └── Update.cs │ ├── Fax │ │ ├── Add.cs │ │ ├── GetInfo.cs │ │ ├── Remove.cs │ │ └── Update.cs │ ├── GoToVoicemail │ │ ├── Add.cs │ │ ├── GetInfo.cs │ │ └── Remove.cs │ └── PersonalIntercom │ │ ├── Add.cs │ │ ├── GetInfo.cs │ │ ├── Remove.cs │ │ └── Update.cs │ ├── GetVoicemailInfo.cs │ ├── GroupPickup │ ├── Add.cs │ ├── GetInfo.cs │ ├── Remove.cs │ └── Update.cs │ ├── IVR │ ├── Add.cs │ ├── GetInfo.cs │ ├── Menus │ │ └── GetList.cs │ ├── Remove.cs │ └── Update.cs │ ├── Intercom │ ├── Add.cs │ ├── GetInfo.cs │ ├── Remove.cs │ └── Update.cs │ ├── MeetMeConference │ ├── Add.cs │ ├── GetInfo.cs │ ├── Remove.cs │ └── Update.cs │ ├── Phones │ ├── Analog │ │ ├── Add.cs │ │ ├── GetInfo.cs │ │ └── Update.cs │ ├── AttachImage.cs │ ├── Bulk │ │ └── Upload.cs │ ├── OutgoingCallRules │ │ ├── Add.cs │ │ └── Remove.cs │ ├── Remove.cs │ ├── SIP │ │ ├── Add.cs │ │ ├── BulkUpdate.cs │ │ ├── GetInfo.cs │ │ └── Update.cs │ ├── Template │ │ ├── Add.cs │ │ ├── GetInfo.cs │ │ ├── GetList.cs │ │ ├── Remove.cs │ │ └── Update.cs │ └── Virtual │ │ ├── Add.cs │ │ ├── GetInfo.cs │ │ └── Update.cs │ ├── Settings │ ├── CustomSettings │ │ ├── Add.cs │ │ ├── GetInfo.cs │ │ ├── GetList.cs │ │ ├── Remove.cs │ │ └── Update.cs │ └── Update.cs │ ├── SimpleConferenceRoom │ ├── Add.cs │ ├── GetInfo.cs │ ├── Remove.cs │ └── Update.cs │ └── VoicemailAccess │ ├── Add.cs │ ├── GetInfo.cs │ ├── Remove.cs │ └── Update.cs └── todo.txt /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2016 lordmilko 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /SwitchvoxAPI.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio 14 4 | VisualStudioVersion = 14.0.25420.1 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SwitchvoxAPI", "SwitchvoxAPI\SwitchvoxAPI.csproj", "{2217EC62-34A3-48F5-9F63-291384D74720}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|Any CPU = Debug|Any CPU 11 | Release|Any CPU = Release|Any CPU 12 | EndGlobalSection 13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 14 | {2217EC62-34A3-48F5-9F63-291384D74720}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 15 | {2217EC62-34A3-48F5-9F63-291384D74720}.Debug|Any CPU.Build.0 = Debug|Any CPU 16 | {2217EC62-34A3-48F5-9F63-291384D74720}.Release|Any CPU.ActiveCfg = Release|Any CPU 17 | {2217EC62-34A3-48F5-9F63-291384D74720}.Release|Any CPU.Build.0 = Release|Any CPU 18 | EndGlobalSection 19 | GlobalSection(SolutionProperties) = preSolution 20 | HideSolutionNode = FALSE 21 | EndGlobalSection 22 | EndGlobal 23 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Attributes/XmlEnumGroupAttribute.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using System.Xml.Serialization; 7 | 8 | namespace SwitchvoxAPI.Attributes 9 | { 10 | [AttributeUsage(AttributeTargets.Field)] 11 | internal class XmlEnumGroupAttribute : Attribute 12 | { 13 | public string Name { get; set; } 14 | 15 | internal XmlEnumGroupAttribute(string name) 16 | { 17 | Name = name; 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Deserialization/XmlAttributeType.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace SwitchvoxAPI.Deserialization 8 | { 9 | enum XmlAttributeType 10 | { 11 | Element, 12 | Attribute, 13 | Text, 14 | Missing, 15 | Other 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Deserialization/XmlMapping.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Reflection; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using System.Xml.Linq; 8 | 9 | namespace SwitchvoxAPI.Deserialization 10 | { 11 | class XmlMapping 12 | { 13 | public Type Type { get; private set; } 14 | public PropertyInfo Property { get; private set; } 15 | public string[] AttributeValue { get; private set; } 16 | public XmlAttributeType AttributeType { get; private set; } 17 | 18 | internal XmlMapping(Type type, PropertyInfo info, string[] value, XmlAttributeType attributeType) 19 | { 20 | if (value.Length == 0) 21 | throw new ArgumentException("Array length cannot be null", nameof(value)); 22 | 23 | Type = type; 24 | Property = info; 25 | AttributeValue = value; 26 | AttributeType = attributeType; 27 | } 28 | 29 | public XElement GetSingleXElementAttributeValue(XElement elm) 30 | { 31 | var value = AttributeValue.Select(a => elm.Element(a)).FirstOrDefault(x => x != null); 32 | 33 | return value; 34 | } 35 | 36 | public XAttribute GetSingleXAttributeAttributeValue(XElement elm) 37 | { 38 | var value = AttributeValue.Select(a => elm.Attribute(a)).FirstOrDefault(x => x != null); 39 | 40 | return value; 41 | } 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Enums/CallEventType.cs: -------------------------------------------------------------------------------- 1 | using System.Xml.Serialization; 2 | 3 | namespace SwitchvoxAPI 4 | { 5 | /// 6 | /// Specifies events that occur during the course of a phone call. 7 | /// 8 | public enum CallEventType 9 | { 10 | [XmlEnum("OUTGOING")] 11 | Outgoing, 12 | 13 | [XmlEnum("INCOMING")] 14 | Incoming, 15 | 16 | [XmlEnum("PROVIDER")] 17 | Provider, 18 | 19 | [XmlEnum("INTERNAL")] 20 | Internal, 21 | 22 | [XmlEnum("CASCADE")] 23 | Cascade, 24 | 25 | [XmlEnum("TALKING")] 26 | Talking, 27 | 28 | [XmlEnum("RINGALL")] 29 | RingAll, 30 | 31 | [XmlEnum("HANGUP")] 32 | Hangup, 33 | 34 | [XmlEnum("INCOMING_PROVIDER")] 35 | IncomingProvider, 36 | 37 | [XmlEnum("DIRECTED_PICKUP")] 38 | DirectedPickup, 39 | 40 | [XmlEnum("ONHOLD")] 41 | OnHold, 42 | 43 | [XmlEnum("OFFHOLD")] 44 | OffHold, 45 | 46 | [XmlEnum("PARKER")] 47 | Parked, 48 | 49 | [XmlEnum("UNPARKED")] 50 | Unparked, 51 | 52 | [XmlEnum("FORWARD")] 53 | Forward, 54 | 55 | [XmlEnum("PARKING_TIMEOUT")] 56 | ParkingTimeout, 57 | 58 | [XmlEnum("ASSISTED_TRANSFEREE")] 59 | AssistedTransferee, 60 | 61 | [XmlEnum("BLIND_TRANSFER")] 62 | BlindTransfer, 63 | 64 | [XmlEnum("BLIND_TRANSFERER")] 65 | BlindTransferer, 66 | 67 | [XmlEnum("BLIND_RECIPIENT")] 68 | BlindRecipient, 69 | 70 | [XmlEnum("FAX_RECEIVE_IN")] 71 | FaxReceiveIn, 72 | 73 | [XmlEnum("FAX_RECEIVE_OUT")] 74 | FaxReceiveOut, 75 | 76 | [XmlEnum("FAX_SENT")] 77 | FaxSent, 78 | 79 | [XmlEnum("FAX_RECEIVE_ERROR")] 80 | FaxReceiveError, 81 | 82 | [XmlEnum("MEETME")] 83 | MeetMeConference, 84 | 85 | [XmlEnum("QUEUE_EXIT")] 86 | QueueExit, 87 | 88 | [XmlEnum("STATUS")] 89 | Status, 90 | 91 | [XmlEnum("VOICEMAIL")] 92 | Voicemail, 93 | 94 | [XmlEnum("VOICEMAIL_PICKUP")] 95 | VoicemailPickup, 96 | 97 | [XmlEnum("PEER_VOICEMAIL")] 98 | VoicemailPeer, 99 | 100 | [XmlEnum("NO_EVENTS")] 101 | NoEvents, 102 | 103 | //TC_ASSISTED_TRANSFER 104 | //TC_BLIND_TRANSFER 105 | } 106 | } -------------------------------------------------------------------------------- /SwitchvoxAPI/Enums/CallLogSearchCriteria.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using System.Xml.Serialization; 7 | using SwitchvoxAPI.Attributes; 8 | 9 | namespace SwitchvoxAPI 10 | { 11 | public enum CallLogSearchCriteria 12 | { 13 | /// 14 | /// Perform a search using one or more Account IDs 15 | /// 16 | [XmlEnum("account_id")] 17 | [XmlEnumGroup("account_ids")] 18 | AccountId, 19 | 20 | /// 21 | /// Perform a search using one or more Channel Group IDs 22 | /// 23 | [XmlEnum("channel_group_id")] 24 | [XmlEnumGroup("channel_group_ids")] 25 | ChannelGroupId, 26 | 27 | /// 28 | /// Perform a search using one or more IAX Provider IDs 29 | /// 30 | [XmlEnum("iax_provider_id")] 31 | [XmlEnumGroup("iax_provider_ids")] 32 | IAXProviderId, 33 | 34 | /// 35 | /// Perform a search using one or more SIP Provider IDs 36 | /// 37 | [XmlEnum("sip_provider_id")] 38 | [XmlEnumGroup("sip_provider_ids")] 39 | SIPProviderId, 40 | 41 | /// 42 | /// Perform a search using a single Caller ID Name 43 | /// 44 | [XmlEnum("caller_id_name")] 45 | CallerIdName, 46 | 47 | /// 48 | /// Perform a search using a single Caller ID Number 49 | /// 50 | [XmlEnum("caller_id_number")] 51 | CallerIdNumber, 52 | 53 | /// 54 | /// Perform a search using a single Incoming DID 55 | /// 56 | [XmlEnum("incoming_did")] 57 | IncomingDID 58 | } 59 | } 60 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Enums/CallOrigination.cs: -------------------------------------------------------------------------------- 1 | using System.Xml.Serialization; 2 | 3 | namespace SwitchvoxAPI 4 | { 5 | /// 6 | /// Specifies where a call originated from. 7 | /// 8 | public enum CallDirection 9 | { 10 | /// 11 | /// Call originated from an extension inside the phone system. 12 | /// 13 | [XmlEnum("incoming")] 14 | Incoming, 15 | 16 | /// 17 | /// Call originated outside the phone system. 18 | /// 19 | [XmlEnum("outgoing")] 20 | Outgoing 21 | } 22 | } -------------------------------------------------------------------------------- /SwitchvoxAPI/Enums/CallQueueStrategy.cs: -------------------------------------------------------------------------------- 1 | using System.Xml.Serialization; 2 | 3 | namespace SwitchvoxAPI 4 | { 5 | public enum CallQueueStrategy 6 | { 7 | [XmlEnum("ring_all")] 8 | RingAll 9 | } 10 | } -------------------------------------------------------------------------------- /SwitchvoxAPI/Enums/CallTypes.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace SwitchvoxAPI 4 | { 5 | /// 6 | /// Specifies call types to be filtered for in a method request. 7 | /// 8 | [Flags] 9 | public enum CallTypes 10 | { 11 | /// 12 | /// Calls that were successfully answered by a member of the call queue. 13 | /// 14 | CompletedCalls = 1, 15 | 16 | /// 17 | /// Calls that were abandoned before they could be completed (i.e. the caller hung up). 18 | /// 19 | AbandonedCalls = 2, 20 | 21 | /// 22 | /// Calls that were somehow redirected out of the call queue, potentially to another call queue. 23 | /// 24 | RedirectedCalls = 4, 25 | 26 | /// 27 | /// Include all call types in the method request. 28 | /// 29 | AllCalls = CompletedCalls | AbandonedCalls | RedirectedCalls 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Enums/CurrentCallState.cs: -------------------------------------------------------------------------------- 1 | using System.Xml.Serialization; 2 | 3 | namespace SwitchvoxAPI 4 | { 5 | /// 6 | /// Specifies the state an active call is in. 7 | /// 8 | public enum CurrentCallState 9 | { 10 | /// 11 | /// is logging into a call queue, or is logging into a phone. 12 | /// 13 | [XmlEnum("agent_login")] 14 | AgentLogin, 15 | 16 | /// 17 | /// is logging out of a call queue, or is logging out of a phone. 18 | /// 19 | [XmlEnum("agent_logout")] 20 | AgentLogout, 21 | 22 | [XmlEnum("checking_voicemail")] 23 | CheckingVoicemail, 24 | 25 | [XmlEnum("conference")] 26 | Conference, 27 | 28 | [XmlEnum("directory")] 29 | Directory, 30 | 31 | [XmlEnum("faxing")] 32 | Faxing, 33 | 34 | [XmlEnum("intercom")] 35 | Intercom, 36 | 37 | [XmlEnum("ivr")] 38 | IVR, 39 | 40 | [XmlEnum("leaving_voicemail")] 41 | LeavingVoicemail, 42 | 43 | [XmlEnum("monitoring")] 44 | Monitoring, 45 | 46 | /// 47 | /// Call is currently parked (on hold), waiting to be retrieved from another phone. 48 | /// 49 | [XmlEnum("parked")] 50 | Parked, 51 | 52 | /// 53 | /// Call is waiting to be answered by a call queue. 54 | /// 55 | [XmlEnum("queued")] 56 | Queued, 57 | 58 | [XmlEnum("receiving_fax")] 59 | ReceivingFax, 60 | 61 | /// 62 | /// Call is in the process of ringing. 63 | /// 64 | [XmlEnum("ringing")] 65 | Ringing, 66 | 67 | [XmlEnum("talking")] 68 | Talking, 69 | 70 | [XmlEnum("unknown")] 71 | Unknown 72 | } 73 | } -------------------------------------------------------------------------------- /SwitchvoxAPI/Enums/ExtensionIdentifier.cs: -------------------------------------------------------------------------------- 1 | namespace SwitchvoxAPI 2 | { 3 | /// 4 | /// Specifies the type of identifier being used to represent an Extension. 5 | /// 6 | public enum ExtensionIdentifier 7 | { 8 | /// 9 | /// An Extension Number. 10 | /// 11 | Extension, 12 | 13 | /// 14 | /// The Account ID associated with an Extension Number. 15 | /// 16 | AccountID 17 | } 18 | } -------------------------------------------------------------------------------- /SwitchvoxAPI/Enums/ExtensionType.cs: -------------------------------------------------------------------------------- 1 | using System.Xml.Serialization; 2 | 3 | namespace SwitchvoxAPI 4 | { 5 | /// 6 | /// Specifies types extensions can be. 7 | /// 8 | public enum ExtensionType 9 | { 10 | /// 11 | /// Regular SIP Extension. 12 | /// 13 | [XmlEnum("sip")] 14 | SIPExtension, 15 | 16 | /// 17 | /// Extension is a Call Queue. 18 | /// 19 | [XmlEnum("call_queue")] 20 | CallQueue, 21 | 22 | /// 23 | /// Extension is an IVR 24 | /// 25 | [XmlEnum("ivr")] 26 | IVR, 27 | 28 | /// 29 | /// Extension is a Virtual Extension 30 | /// 31 | [XmlEnum("virtual")] 32 | Virtual, 33 | 34 | [XmlEnum("intercom")] 35 | Intercom, 36 | 37 | [XmlEnum("directory")] 38 | Directory, 39 | 40 | [XmlEnum("feature_intercom")] 41 | FeatureIntercom, 42 | 43 | [XmlEnum("feature_directed_pickup")] 44 | FeatureDirectedPickup, 45 | 46 | [XmlEnum("feature_send_to_vm")] 47 | FeatureSendToVoicemail, 48 | 49 | [XmlEnum("feature_monitor")] 50 | FeatureCallMonitor, 51 | 52 | [XmlEnum("feature_fax")] 53 | FeatureSendFax, 54 | 55 | [XmlEnum("voicemail")] 56 | Voicemail, 57 | 58 | [XmlEnum("simple_conference")] 59 | SimpleConference, 60 | 61 | [XmlEnum("conference")] 62 | MeetMeConference, 63 | 64 | [XmlEnum("agentcallbacklogin")] 65 | AgentLogIn, 66 | 67 | [XmlEnum("agentcallbacklogoff")] 68 | AgentLogOff, 69 | 70 | [XmlEnum("group_pickup")] 71 | GroupPickup, 72 | 73 | [XmlEnum("callpark")] 74 | CallParking, 75 | 76 | [XmlEnum("zap")] 77 | AnalogPhone, 78 | 79 | [XmlEnum("parkinglog")] 80 | SingleCallParkingSplot, 81 | 82 | [XmlEnum("autodial")] 83 | Dialtone 84 | } 85 | } -------------------------------------------------------------------------------- /SwitchvoxAPI/Enums/QueueCallType.cs: -------------------------------------------------------------------------------- 1 | using System.Xml.Serialization; 2 | 3 | namespace SwitchvoxAPI 4 | { 5 | /// 6 | /// Specifies the type of call in a Call Queue Log. 7 | /// 8 | public enum QueueCallType 9 | { 10 | /// 11 | /// The call was successfully completed by a user hanging up. 12 | /// 13 | [XmlEnum("completed")] 14 | Completed, 15 | 16 | /// 17 | /// The call was forwarded, potentially outside of the phone system. 18 | /// 19 | [XmlEnum("redirected")] 20 | Redirected, 21 | 22 | [XmlEnum("abandoned")] 23 | Abandoned 24 | } 25 | } -------------------------------------------------------------------------------- /SwitchvoxAPI/Enums/QueueLoginType.cs: -------------------------------------------------------------------------------- 1 | using System.Xml.Serialization; 2 | 3 | namespace SwitchvoxAPI 4 | { 5 | public enum QueueLoginType 6 | { 7 | [XmlEnum("permanent")] 8 | Permanent, 9 | 10 | [XmlEnum("login")] 11 | Login 12 | } 13 | } -------------------------------------------------------------------------------- /SwitchvoxAPI/Exceptions/SwitchvoxRequestException.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Runtime.Serialization; 3 | 4 | namespace SwitchvoxAPI 5 | { 6 | /// 7 | /// The exception that is thrown when a the response from a Switchvox Request contains any error messages. 8 | /// 9 | [Serializable] 10 | public class SwitchvoxRequestException : Exception 11 | { 12 | /// 13 | /// Initializes a new instance of the class. 14 | /// 15 | public SwitchvoxRequestException() 16 | { 17 | } 18 | 19 | /// 20 | /// Initializes a new instance of the class with a specified error message. 21 | /// 22 | /// The error message that explains the reason for the exception. 23 | public SwitchvoxRequestException(string message) : base(message) 24 | { 25 | } 26 | 27 | /// 28 | /// Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. 29 | /// 30 | /// The error message that explains the reason for the exception. 31 | /// The exception that is the cause of the current exception. If the parameter is not null, the current exception is raised in a catch block that handles the inner exception. 32 | public SwitchvoxRequestException(string message, Exception inner) : base(message, inner) 33 | { 34 | } 35 | 36 | /// 37 | /// Initializes a new instance of the class with serialized data. 38 | /// 39 | /// The that holds the serialized object data about the exception being thrown. 40 | /// The that contains contextual information about the source or destination. 41 | protected SwitchvoxRequestException(SerializationInfo info, StreamingContext context) : base(info, context) 42 | { 43 | } 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Exceptions/UnauthorizedRequestException.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Runtime.Serialization; 3 | 4 | namespace SwitchvoxAPI 5 | { 6 | /// 7 | /// The exception that is thrown when a Switchvox Request fails with a with StatusCode />. 8 | /// 9 | [Serializable] 10 | public class UnauthorizedRequestException : Exception 11 | { 12 | /// 13 | /// Initializes a new instance of the class. 14 | /// 15 | public UnauthorizedRequestException() 16 | { 17 | } 18 | 19 | /// 20 | /// Initializes a new instance of the class with a specified error message. 21 | /// 22 | /// The error message that explains the reason for the exception. 23 | public UnauthorizedRequestException(string message) : base(message) 24 | { 25 | } 26 | 27 | /// 28 | /// Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. 29 | /// 30 | /// The error message that explains the reason for the exception. 31 | /// The exception that is the cause of the current exception. If the parameter is not null, the current exception is raised in a catch block that handles the inner exception. 32 | public UnauthorizedRequestException(string message, Exception inner) : base(message, inner) 33 | { 34 | } 35 | 36 | /// 37 | /// Initializes a new instance of the class with serialized data. 38 | /// 39 | /// The that holds the serialized object data about the exception being thrown. 40 | /// The that contains contextual information about the source or destination. 41 | public UnauthorizedRequestException(SerializationInfo info, StreamingContext context) : base(info, context) 42 | { 43 | } 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Helpers/AttributeUtilities.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Linq; 3 | using System.Xml.Serialization; 4 | using SwitchvoxAPI.Exceptions; 5 | 6 | namespace SwitchvoxAPI 7 | { 8 | internal static class AttributeUtilities 9 | { 10 | public static string GetXmlRoot(this Type type) 11 | { 12 | var attributes = type.GetCustomAttributes(typeof(XmlRootAttribute), false); 13 | 14 | if (attributes.Length > 0) 15 | { 16 | return ((XmlRootAttribute) attributes.First()).ElementName; 17 | } 18 | 19 | throw new Exception($"Cannot deserialize type {type}. The type is missing an XmlRootAttribute"); 20 | } 21 | 22 | internal static object EnumToXml(this Enum element) 23 | { 24 | var attribute = element.GetEnumAttribute(); 25 | 26 | if (attribute == null) 27 | return element.ToString(); 28 | 29 | else 30 | return attribute.Name; 31 | } 32 | 33 | public static TAttribute GetEnumAttribute(this Enum element, bool mandatory = false) where TAttribute : Attribute 34 | { 35 | var attributes = element.GetType().GetMember(element.ToString()).First().GetCustomAttributes(typeof(TAttribute), false); 36 | 37 | if (attributes.Any()) 38 | return (TAttribute)attributes.First(); 39 | 40 | if (!mandatory) 41 | return null; 42 | else 43 | throw new MissingAttributeException(element.GetType(), element.ToString(), typeof(TAttribute)); 44 | } 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Helpers/ConvertExtensions.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Linq; 3 | using System.Xml.Serialization; 4 | 5 | namespace SwitchvoxAPI 6 | { 7 | internal static class ConvertExtensions 8 | { 9 | /// 10 | /// Convert a string that may be empty into a . 11 | /// 12 | /// The string to convert. 13 | /// 14 | public static TimeSpan ToTimeSpan(string str) 15 | { 16 | return str == string.Empty ? TimeSpan.FromSeconds(0) : TimeSpan.FromSeconds(Convert.ToDouble(str)); 17 | } 18 | 19 | public static object ToEnum(string str, Type type) where T : XmlEnumAttribute 20 | { 21 | foreach (var field in type.GetFields()) 22 | { 23 | var attribute = Attribute.GetCustomAttributes(field, typeof(T)).Where(a => a.GetType() == typeof(T)).Cast().FirstOrDefault(); 24 | 25 | if (attribute != null) 26 | { 27 | if (attribute.Name == str) 28 | return field.GetValue(null); 29 | } 30 | } 31 | 32 | return Enum.Parse(type, str, true); 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/CallLogs/_CallLogs.cs: -------------------------------------------------------------------------------- 1 | namespace SwitchvoxAPI.Methods 2 | { 3 | /// 4 | /// Methods contained in the Switchvox.CallLogs namespace. 5 | /// 6 | public partial class CallLogs 7 | { 8 | private readonly SwitchvoxClient client; 9 | 10 | internal CallLogs(SwitchvoxClient client) 11 | { 12 | this.client = client; 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/CallQueueLogs/_CallQueueLogs.cs: -------------------------------------------------------------------------------- 1 | namespace SwitchvoxAPI.Methods 2 | { 3 | /// 4 | /// Methods contained in the Switchvox.CallQueueLogs namespace. 5 | /// 6 | public partial class CallQueueLogs 7 | { 8 | private readonly SwitchvoxClient client; 9 | 10 | internal CallQueueLogs(SwitchvoxClient client) 11 | { 12 | this.client = client; 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/CallQueues/GetCurrentStatus.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Xml.Linq; 3 | 4 | namespace SwitchvoxAPI.Methods 5 | { 6 | public partial class CallQueues 7 | { 8 | /// 9 | /// Get a list of all members of a queue, their current status as well as the status of all callers currently waiting in the queue 10 | /// 11 | /// The Account ID of a valid call queue 12 | public CallQueueCurrentStatus GetCurrentStatus(string accountId) 13 | { 14 | if (string.IsNullOrEmpty(accountId)) 15 | throw new ArgumentException("Account ID must have a value", nameof(accountId)); 16 | 17 | var response = client.Execute(new RequestMethod("switchvox.callQueues.getCurrentStatus", new XElement("account_id", accountId))); 18 | 19 | return response; 20 | 21 | //todo: i dont think the waiting callers code is implemented 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/CallQueues/_CallQueues.cs: -------------------------------------------------------------------------------- 1 | namespace SwitchvoxAPI.Methods 2 | { 3 | /// 4 | /// Methods contained in the Switchvox.CallQueues namespace. 5 | /// 6 | public partial class CallQueues 7 | { 8 | private readonly SwitchvoxClient client; 9 | 10 | internal CallQueues(SwitchvoxClient client) 11 | { 12 | this.client = client; 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/CurrentCalls/GetList.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace SwitchvoxAPI.Methods 4 | { 5 | public partial class CurrentCalls 6 | { 7 | /// 8 | /// Get a list of all current calls in the system. 9 | /// 10 | public List GetList() 11 | { 12 | var response = client.Execute(new RequestMethod("switchvox.currentCalls.getList", null)).Items; 13 | 14 | return response; 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/CurrentCalls/HangUp.cs: -------------------------------------------------------------------------------- 1 | using System.Xml.Linq; 2 | 3 | namespace SwitchvoxAPI.Methods 4 | { 5 | public partial class CurrentCalls 6 | { 7 | public void HangUp(string callId) 8 | { 9 | var xml = new XElement("current_call_id", callId); 10 | 11 | client.Execute(new RequestMethod("switchvox.currentCalls.hangUp", xml)); 12 | } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/CurrentCalls/_CurrentCalls.cs: -------------------------------------------------------------------------------- 1 | namespace SwitchvoxAPI.Methods 2 | { 3 | /// 4 | /// Methods contained in the Switchvox.CurrentCalls namespace. 5 | /// 6 | public partial class CurrentCalls 7 | { 8 | private readonly SwitchvoxClient client; 9 | 10 | /// 11 | /// Initializes a new instance of the class. 12 | /// 13 | /// The methods will use to communicate with the phone server. 14 | internal CurrentCalls(SwitchvoxClient client) 15 | { 16 | this.client = client; 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/ExtensionGroups/GetInfo.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using System.Xml.Linq; 7 | 8 | namespace SwitchvoxAPI 9 | { 10 | public partial class ExtensionGroups 11 | { 12 | /// 13 | /// Retrieve extension group information and a list of extensions each group contains. 14 | /// 15 | /// The ID of the extension group to retrieve. 16 | /// 17 | public ExtensionGroup GetInfo(string extensionGroupId) 18 | { 19 | var response = client.Execute(new RequestMethod("switchvox.extensionGroups.getInfo", new XElement("extension_group_id", extensionGroupId))); 20 | 21 | return response; 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/ExtensionGroups/GetList.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using System.Xml.Linq; 7 | 8 | namespace SwitchvoxAPI 9 | { 10 | public partial class ExtensionGroups 11 | { 12 | /// 13 | /// Retrieve a list of extension groups on the system. 14 | /// 15 | /// 16 | public List GetList() 17 | { 18 | var response = client.Execute(new RequestMethod("switchvox.extensionGroups.getList", null)); 19 | 20 | return response.Items; 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/ExtensionGroups/_ExtensionGroups.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace SwitchvoxAPI 8 | { 9 | /// 10 | /// Methods contained in the Switchvox.ExtensionGroups namespace. 11 | /// 12 | public partial class ExtensionGroups 13 | { 14 | private readonly SwitchvoxClient client; 15 | 16 | internal ExtensionGroups(SwitchvoxClient client) 17 | { 18 | this.client = client; 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/Extensions/GetInfo.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Xml.Linq; 5 | 6 | namespace SwitchvoxAPI.Methods 7 | { 8 | public partial class Extensions 9 | { 10 | private string tagGroup; 11 | private string tagInstance; 12 | 13 | /// 14 | /// Fetch basic information about the extensions on a phone system. 15 | /// 16 | /// A value indicating whether Extension numbers or Account IDs will be used to get info for the extensions on your system 17 | /// A list of Extension Account IDs or Extension Numbers to get information for. 18 | /// All extensions that match the specified search criteria. 19 | public List GetInfo(ExtensionIdentifier identifier, params string[] values) 20 | { 21 | if (values.Length == 0) 22 | throw new ArgumentException("At least one Extension Account ID or Extension Number must be specified."); 23 | 24 | SetTagTypes(identifier); 25 | 26 | List valuesList = values.Select(val => new XElement(tagInstance, val)).ToList(); 27 | 28 | var xml = new XElement(tagGroup, valuesList); 29 | 30 | var extensions = client.Execute(new RequestMethod("switchvox.extensions.getInfo", xml)).Items; 31 | 32 | if (extensions.Count == 0) 33 | throw new SwitchvoxRequestException("No results for the given Account ID or Extension could be found."); 34 | 35 | return extensions; 36 | } 37 | 38 | private void SetTagTypes(ExtensionIdentifier identifier) 39 | { 40 | if (identifier == ExtensionIdentifier.AccountID) 41 | { 42 | tagGroup = "account_ids"; 43 | tagInstance = "account_id"; 44 | } 45 | else if (identifier == ExtensionIdentifier.Extension) 46 | { 47 | tagGroup = "extensions"; 48 | tagInstance = "extension"; 49 | } 50 | else 51 | throw new NotImplementedException($"No handler for the value '{identifier}' has been implemented."); 52 | } 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/Extensions/Search.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Xml.Linq; 5 | using System.Xml.Serialization; 6 | 7 | namespace SwitchvoxAPI.Methods 8 | { 9 | public partial class Extensions 10 | { 11 | public List Search(string minExtension = null, string maxExtension = null, DateTime? minCreationDate = null, 12 | DateTime? maxCreationDate = null, int itemsPerPage = 50, int pageNumber = 1, 13 | params ExtensionType[] extensionTypes 14 | ) 15 | { 16 | var valuesList = new List(); 17 | 18 | if (minExtension != null) 19 | valuesList.Add(new XElement("min_extension", minExtension)); 20 | 21 | if (maxExtension != null) 22 | valuesList.Add(new XElement("max_extension", maxExtension)); 23 | 24 | if (extensionTypes != null && extensionTypes.Length > 0) 25 | valuesList.Add(new XElement("extension_types", extensionTypes.ToList().Select(t => new XElement("extension_type", t.EnumToXml())))); 26 | 27 | if (minCreationDate != null) 28 | valuesList.Add(new XElement("min_create_date", minCreationDate.Value.ToString("YYYY-MM-DD hh:mm:ss"))); 29 | 30 | if(maxCreationDate != null) 31 | valuesList.Add(new XElement("max_create_date", maxCreationDate.Value.ToString("YYYY-MM-DD hh:mm:ss"))); 32 | 33 | if (itemsPerPage != 50) 34 | valuesList.Add(new XElement("items_per_page", itemsPerPage)); 35 | 36 | if (pageNumber != 1) 37 | valuesList.Add(new XElement("page_number", pageNumber)); 38 | 39 | var response = client.Execute(new RequestMethod("switchvox.extensions.search", valuesList)); 40 | return response.Items; 41 | } 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/Extensions/Settings/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace SwitchvoxAPI.Methods 2 | { 3 | public partial class Settings 4 | { 5 | /// 6 | /// Retrieve settings that apply to extensions in the system. 7 | /// 8 | public ExtensionSettings GetInfo() 9 | { 10 | var response = client.Execute(new RequestMethod("switchvox.extensions.settings.getInfo", null)); 11 | 12 | return response; 13 | } 14 | } 15 | } -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/Extensions/Settings/_Settings.cs: -------------------------------------------------------------------------------- 1 | namespace SwitchvoxAPI.Methods 2 | { 3 | /// 4 | /// Methods contained in the Switchvox.Extensions.Settings namespace. 5 | /// 6 | public partial class Settings 7 | { 8 | private readonly SwitchvoxClient client; 9 | 10 | /// 11 | /// Initializes a new instance of the class. 12 | /// 13 | /// The methods will use to communicate with the phone server. 14 | internal Settings(SwitchvoxClient client) 15 | { 16 | this.client = client; 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/Extensions/_Extensions.cs: -------------------------------------------------------------------------------- 1 | namespace SwitchvoxAPI.Methods 2 | { 3 | /// 4 | /// Methods contained in the Switchvox.Extensions namespace. 5 | /// 6 | public partial class Extensions 7 | { 8 | private readonly SwitchvoxClient client; 9 | 10 | /// 11 | /// Methods contained in the Switchvox.Extensions.Settings namespace. 12 | /// 13 | public Settings Settings; 14 | 15 | /// 16 | /// Initializes a new instance of the class. 17 | /// 18 | /// methods will use to communicate with the phone server. 19 | internal Extensions(SwitchvoxClient client) 20 | { 21 | this.client = client; 22 | 23 | Settings = new Settings(client); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/IVR/GlobalVariables/Add.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Xml.Linq; 3 | 4 | namespace SwitchvoxAPI.Methods 5 | { 6 | public partial class GlobalVariables 7 | { 8 | /// 9 | /// Add a Global IVR Variable to the phone system 10 | /// 11 | /// The name of the Global IVR Variable to add. If a Global IVR Variable with this name already exists, this method will return the ID of the existing variable. 12 | /// The initial value to assign to the Global IVR Variable. If a Global IVR Variable with the name specified in the name parameter already exists, this method set the variable to this value and return its ID. 13 | public void Add(string name, string value = null) 14 | { 15 | var xml = new List 16 | { 17 | new XElement("global_ivr_variable_name", name) 18 | }; 19 | 20 | if (value != null) 21 | xml.Add(new XElement("global_ivr_variable_value", value)); 22 | 23 | var response = client.Execute(new RequestMethod("switchvox.ivr.globalVariables.add", xml)); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/IVR/GlobalVariables/GetList.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Xml.Linq; 3 | 4 | namespace SwitchvoxAPI.Methods 5 | { 6 | public partial class GlobalVariables 7 | { 8 | /// 9 | /// Get a list of Global IVR Variables in the system and their current values. 10 | /// 11 | public List GetList() 12 | { 13 | return GetList((XElement)null); 14 | } 15 | 16 | /// 17 | /// Get a single Global IVR Variable by its ID Number. 18 | /// 19 | /// The Global IVR Variable ID of the Global IVR Variable to retrieve. 20 | public List GetList(int id) 21 | { 22 | return GetList(new XElement("global_ivr_variable_id", id)); 23 | } 24 | 25 | /// 26 | /// Get a single Global IVR Variable by its name. 27 | /// 28 | /// The Global IVR Varaible Name of the Global IVR Variable to retrieve. 29 | public List GetList(string name) 30 | { 31 | return GetList(new XElement("global_ivr_variable_name", name)); 32 | } 33 | 34 | private List GetList(XElement xml) 35 | { 36 | var response = client.Execute(new RequestMethod("switchvox.ivr.globalVariables.getList", xml)).Items; 37 | 38 | return response; 39 | } 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/IVR/GlobalVariables/Remove.cs: -------------------------------------------------------------------------------- 1 | using System.Xml.Linq; 2 | 3 | namespace SwitchvoxAPI.Methods 4 | { 5 | public partial class GlobalVariables 6 | { 7 | /// 8 | /// Remove a Global IVR Variable from the system 9 | /// 10 | /// The Global IVR Variable ID of the Global IVR Variable you wish to remove 11 | public void Remove(int id) 12 | { 13 | var xml = new XElement("global_ivr_variable_id", id); 14 | 15 | var response = client.Execute(new RequestMethod("switchvox.ivr.globalVariables.remove", xml)); 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/IVR/GlobalVariables/Update.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Xml.Linq; 3 | 4 | namespace SwitchvoxAPI.Methods 5 | { 6 | public partial class GlobalVariables 7 | { 8 | /// 9 | /// Update the value of a Global IVR Variable 10 | /// 11 | /// The Global IVR Variable ID of the Global IVR Variable you wish to update 12 | /// The value you wish to assign to the Global IVR Variable 13 | public void Update(int id, string value) 14 | { 15 | var xml = new List 16 | { 17 | new XElement("global_ivr_variable_id", id), 18 | new XElement("global_ivr_variable_value", value) 19 | }; 20 | 21 | var response = client.Execute(new RequestMethod("switchvox.ivr.globalVariables.update", xml)); 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/IVR/GlobalVariables/_GlobalVariables.cs: -------------------------------------------------------------------------------- 1 | namespace SwitchvoxAPI.Methods 2 | { 3 | /// 4 | /// Methods contained in the Switchvox.IVR.GlobalVariables namespace. 5 | /// 6 | public partial class GlobalVariables 7 | { 8 | private readonly SwitchvoxClient client; 9 | 10 | /// 11 | /// Initializes a new instance of the class. 12 | /// 13 | /// methods will use to communicate with the phone server. 14 | internal GlobalVariables(SwitchvoxClient client) 15 | { 16 | this.client = client; 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/IVR/_IVR.cs: -------------------------------------------------------------------------------- 1 | namespace SwitchvoxAPI.Methods 2 | { 3 | /// 4 | /// Methods contained in the Switchvox.IVR namespace. 5 | /// 6 | public partial class IVR 7 | { 8 | private readonly SwitchvoxClient client; 9 | 10 | /// 11 | /// Methods contained in the Switchvox.IVR.GlobalVariables namespace. 12 | /// 13 | public GlobalVariables GlobalVariables; 14 | 15 | /// 16 | /// Initializes a new instance of the class. 17 | /// 18 | /// methods will use to communicate with the phone server. 19 | internal IVR(SwitchvoxClient client) 20 | { 21 | this.client = client; 22 | 23 | GlobalVariables = new GlobalVariables(client); 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/Users/CallQueues/GetTodaysStatus.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Xml.Linq; 3 | 4 | namespace SwitchvoxAPI.Methods 5 | { 6 | public partial class CallQueuesUsers 7 | { 8 | /// 9 | /// Get today's status for a call queue. The results returned by this method will differ depending on the Switchboard Panel Permissions for the specified User Account ID. 10 | /// 11 | /// The ID of the Call Queue to get today's status for 12 | /// The Account ID of the user making the request. While the user does not need to be a member of the call queue, they should have Queue Visibility Permissions (under Queue -> Permissions -> Queue Visibility Permissions) 13 | public CallQueueTodaysStatus GetTodaysStatus(string callQueueAccountId, string userAccountId) 14 | { 15 | var xml = new List 16 | { 17 | new XElement("account_id", userAccountId), 18 | new XElement("call_queue_account_id", callQueueAccountId) 19 | }; 20 | 21 | var response = client.Execute(new RequestMethod("switchvox.users.callQueues.getTodaysStatus", xml)); 22 | 23 | return response; 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/Users/CallQueues/_CallQueuesUsers.cs: -------------------------------------------------------------------------------- 1 | namespace SwitchvoxAPI.Methods 2 | { 3 | /// 4 | /// Methods contained in the Switchvox.Users.CallQueues namespace. 5 | /// 6 | public partial class CallQueuesUsers 7 | { 8 | private readonly SwitchvoxClient client; 9 | 10 | internal CallQueuesUsers(SwitchvoxClient client) 11 | { 12 | this.client = client; 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/Users/GetMyInfo.cs: -------------------------------------------------------------------------------- 1 | namespace SwitchvoxAPI.Methods 2 | { 3 | public partial class Users 4 | { 5 | /// 6 | /// Fetch basic extension information for the currently authenticated user. 7 | /// 8 | /// The extension information for the currently authenticated user. 9 | public ExtensionInfo GetMyInfo() 10 | { 11 | var extension = client.Execute(new RequestMethod("switchvox.users.getMyInfo", null)); 12 | 13 | return extension; 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Methods/Users/_Users.cs: -------------------------------------------------------------------------------- 1 | namespace SwitchvoxAPI.Methods 2 | { 3 | /// 4 | /// Methods contained in the Switchvox.Users namespace. 5 | /// 6 | public partial class Users 7 | { 8 | private readonly SwitchvoxClient client; 9 | 10 | /// 11 | /// Methods contained in the Switchvox.Users.CallQueues namespace. 12 | /// 13 | public CallQueuesUsers CallQueues; 14 | 15 | internal Users(SwitchvoxClient client) 16 | { 17 | this.client = client; 18 | 19 | CallQueues = new CallQueuesUsers(client); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Base/SwitchvoxCmdlet.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Management.Automation; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace SwitchvoxAPI.PowerShell.Base 9 | { 10 | public abstract class SwitchvoxCmdlet : PSCmdlet 11 | { 12 | protected override void BeginProcessing() 13 | { 14 | if(SwitchvoxSessionState.Client == null) 15 | throw new Exception("You are not connected to a Switchvox Server. Please connect first using Connect-SvxServer."); 16 | } 17 | 18 | protected SwitchvoxClient client => SwitchvoxSessionState.Client; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Cmdlet/Actions/AddSvxIVRVariable.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Management.Automation; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using SwitchvoxAPI.PowerShell.Base; 8 | 9 | namespace SwitchvoxAPI.PowerShell.Cmdlet 10 | { 11 | [Cmdlet(VerbsCommon.Add, "SvxIVRVariable")] 12 | public class AddSvxIVRVariable : SwitchvoxCmdlet 13 | { 14 | [Parameter(Mandatory = true, Position = 0)] 15 | public string Name { get; set; } 16 | 17 | [Parameter(Mandatory = false, Position = 1)] 18 | public string Value { get; set; } 19 | 20 | protected override void ProcessRecord() 21 | { 22 | client.IVR.GlobalVariables.Add(Name, Value); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Cmdlet/Actions/DisconnectSvxCall.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Management.Automation; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using SwitchvoxAPI.PowerShell.Base; 8 | 9 | namespace SwitchvoxAPI.PowerShell.Cmdlet.Actions 10 | { 11 | [Cmdlet(VerbsCommunications.Disconnect, "SvxCall")] 12 | public class DisconnectSvxCall : SwitchvoxCmdlet 13 | { 14 | [Parameter(Mandatory = true, ValueFromPipeline = true)] 15 | public CurrentCall Call { get; set; } 16 | 17 | protected override void ProcessRecord() 18 | { 19 | client.CurrentCalls.HangUp(Call.Id); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Cmdlet/Actions/InvokeSvxCall.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Management.Automation; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using SwitchvoxAPI.PowerShell.Base; 8 | 9 | namespace SwitchvoxAPI.PowerShell 10 | { 11 | [Cmdlet(VerbsLifecycle.Invoke, "SvxCall")] 12 | public class InvokeSvxCall : SwitchvoxCmdlet 13 | { 14 | [Parameter(Mandatory = true, ParameterSetName ="Extension")] 15 | public string Extension { get; set; } 16 | 17 | [Parameter(Mandatory = true, ParameterSetName = "Extension")] 18 | public string AccountId { get; set; } 19 | 20 | [Parameter(Mandatory = true, ParameterSetName = "Info", ValueFromPipeline = true)] 21 | public ExtensionInfo ExtensionInfo { get; set; } 22 | 23 | [Parameter(Mandatory = true, ParameterSetName = "Extension", Position = 2)] 24 | [Parameter(Mandatory = true, ParameterSetName = "Info", Position = 0)] 25 | public string Number { get; set; } 26 | 27 | [Parameter(Mandatory = false)] 28 | public int Timeout { get; set; } = 10; 29 | 30 | [Parameter(Mandatory = false)] 31 | public string CallerId { get; set; } 32 | 33 | public SwitchParameter IgnoreUserAPI { get; set; } 34 | 35 | protected override void ProcessRecord() 36 | { 37 | var ignoreUserAPISettings = IgnoreUserAPI.IsPresent; 38 | 39 | if (ParameterSetName == "Info") 40 | { 41 | Extension = ExtensionInfo.Extension; 42 | AccountId = ExtensionInfo.AccountId; 43 | } 44 | 45 | client.Call(Extension, Number, AccountId, ignoreUserAPISettings, CallerId ?? "PBX", timeout: Timeout); 46 | } 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Cmdlet/Actions/RemoveSvxIVRVariable.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Management.Automation; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using SwitchvoxAPI.PowerShell.Base; 8 | 9 | namespace SwitchvoxAPI.PowerShell.Cmdlet 10 | { 11 | [Cmdlet(VerbsCommon.Remove, "SvxIVRVariable")] 12 | public class RemoveSvxIVRVariable : SwitchvoxCmdlet 13 | { 14 | [Parameter(Mandatory = true, Position = 0, ParameterSetName = "Name")] 15 | public string Name { get; set; } 16 | 17 | [Parameter(Mandatory = true, ParameterSetName = "Id")] 18 | public int Id { get; set; } 19 | 20 | [Parameter(Mandatory = true, ValueFromPipeline = true, ParameterSetName = "Default")] 21 | public GlobalIVRVariable Variable { get; set; } 22 | 23 | protected override void ProcessRecord() 24 | { 25 | if (ParameterSetName == "Default") 26 | Id = Variable.Id; 27 | 28 | if (ParameterSetName == "Name") 29 | { 30 | var wildcard = new WildcardPattern(Name, WildcardOptions.IgnoreCase); 31 | 32 | var toRemove = client.IVR.GlobalVariables.GetList().Where(v => wildcard.IsMatch(v.Name)).ToList(); 33 | 34 | foreach (var ivr in toRemove) 35 | { 36 | client.IVR.GlobalVariables.Remove(ivr.Id); 37 | } 38 | } 39 | else 40 | client.IVR.GlobalVariables.Remove(Id); 41 | } 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Cmdlet/Actions/SetSvxIVRVariable.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Management.Automation; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using SwitchvoxAPI.PowerShell.Base; 8 | 9 | namespace SwitchvoxAPI.PowerShell.Cmdlet 10 | { 11 | [Cmdlet(VerbsCommon.Set, "SvxIVRVariable")] 12 | public class SetSvxIVRVariable : SwitchvoxCmdlet 13 | { 14 | [Parameter(Mandatory = true, ParameterSetName = "Name")] 15 | public string Name { get; set; } 16 | 17 | [Parameter(Mandatory = true, ParameterSetName = "Id")] 18 | public int Id { get; set; } 19 | 20 | [Parameter(Mandatory = true, ValueFromPipeline = true, ParameterSetName = "Default")] 21 | public GlobalIVRVariable Variable { get; set; } 22 | 23 | [Parameter(Mandatory = false, Position = 1)] 24 | public string Value { get; set; } 25 | 26 | protected override void ProcessRecord() 27 | { 28 | if (ParameterSetName == "Default") 29 | { 30 | Id = Variable.Id; 31 | } 32 | else if (ParameterSetName == "Name") 33 | { 34 | var ivr = client.IVR.GlobalVariables.GetList().FirstOrDefault(i => i.Name.ToLower() == Name.ToLower()); 35 | 36 | if (ivr == null) 37 | throw new Exception($"IVR with name '{Name}' does not exist"); 38 | 39 | client.IVR.GlobalVariables.Update(ivr.Id, Value); 40 | } 41 | 42 | client.IVR.GlobalVariables.Update(Id, Value); 43 | } 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Cmdlet/ConnectSvxServer.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Management.Automation; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using SwitchvoxAPI.PowerShell.Base; 8 | 9 | namespace SwitchvoxAPI.PowerShell.Cmdlet 10 | { 11 | [Cmdlet(VerbsCommunications.Connect, "SvxServer")] 12 | public class ConnectSvxServer : PSCmdlet 13 | { 14 | [Parameter(Mandatory = true, Position = 0, HelpMessage = "The address of the Switchvox Server to connect to. If the server does not use HTTPS, http:// must be specified.")] 15 | public string Server { get; set; } 16 | 17 | [Parameter(Mandatory = true, ValueFromPipeline = true, Position = 1)] 18 | public PSCredential Credential { get; set; } 19 | 20 | [Parameter(Mandatory = false)] 21 | public SwitchParameter Force { get; set; } 22 | 23 | protected override void ProcessRecord() 24 | { 25 | if (SwitchvoxSessionState.Client == null || Force.IsPresent) 26 | { 27 | SwitchvoxSessionState.Client = new SwitchvoxClient(Server, Credential.GetNetworkCredential().UserName, Credential.GetNetworkCredential().Password); 28 | } 29 | else 30 | { 31 | throw new Exception($"Already connected to server {SwitchvoxSessionState.Client.Server}. To override please specify -Force"); 32 | } 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Cmdlet/Data/GetSvxCall.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Management.Automation; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using SwitchvoxAPI.PowerShell.Base; 8 | 9 | namespace SwitchvoxAPI.PowerShell.Cmdlet 10 | { 11 | [Cmdlet(VerbsCommon.Get, "SvxCall")] 12 | public class GetSvxCall : SwitchvoxCmdlet 13 | { 14 | [Parameter(Mandatory = false, Position = 0)] 15 | public string Name { get; set; } 16 | 17 | protected override void ProcessRecord() 18 | { 19 | var calls = client.CurrentCalls.GetList(); 20 | 21 | if (Name != null) 22 | { 23 | var pattern = new WildcardPattern(Name, WildcardOptions.IgnoreCase); 24 | 25 | calls = calls.Where(c => pattern.IsMatch(c.FromName) || pattern.IsMatch(c.ToNumber)).ToList(); 26 | } 27 | 28 | WriteObject(calls, true); 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Cmdlet/Data/GetSvxCallLog.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Management.Automation; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using SwitchvoxAPI.PowerShell.Base; 8 | 9 | namespace SwitchvoxAPI.PowerShell.Cmdlet 10 | { 11 | [Cmdlet(VerbsCommon.Get, "SvxCallLog")] 12 | public class GetSvxCallLog : SwitchvoxCmdlet 13 | { 14 | [Parameter(Mandatory = false)] 15 | public DateTime StartDate { get; set; } = DateTime.Now.Date; 16 | 17 | [Parameter(Mandatory = false)] 18 | public DateTime EndDate { get; set; } = DateTime.Now.Date.AddDays(1); 19 | 20 | [Parameter(Mandatory = false)] 21 | public CallDirection? Direction { get; set; } 22 | 23 | [Parameter(Mandatory = false, Position = 0)] 24 | public string Name { get; set; } 25 | 26 | [Parameter(Mandatory = false)] 27 | public string From { get; set; } 28 | 29 | [Parameter(Mandatory = false)] 30 | public string To { get; set; } 31 | 32 | public int? Count { get; set; } 33 | 34 | protected override void ProcessRecord() 35 | { 36 | int result; 37 | 38 | CallLogSearchCriteria? criteria = null; 39 | 40 | if (Name != null) 41 | { 42 | if (int.TryParse(Name.Trim('*'), out result)) 43 | { 44 | criteria = CallLogSearchCriteria.CallerIdNumber; 45 | } 46 | else 47 | { 48 | criteria = CallLogSearchCriteria.CallerIdName; 49 | } 50 | } 51 | 52 | var records = client.CallLogs.StreamSearch(StartDate, EndDate, 25, searchCriteria: criteria, searchValues: Name?.Trim('*')); 53 | 54 | if (Name != null) 55 | { 56 | var pattern = new WildcardPattern(Name, WildcardOptions.IgnoreCase); 57 | 58 | if (criteria == CallLogSearchCriteria.CallerIdNumber) 59 | records = records.Where(r => pattern.IsMatch(r.FromNumber) || pattern.IsMatch(r.ToNumber)); 60 | else if (criteria == CallLogSearchCriteria.CallerIdName) 61 | records = records.Where(r => pattern.IsMatch(r.FromName) || pattern.IsMatch(r.ToName)); 62 | } 63 | 64 | if (Direction != null) 65 | { 66 | records = records.Where(r => r.Direction == Direction); 67 | } 68 | 69 | foreach (var obj in records) 70 | WriteObject(obj); 71 | } 72 | } 73 | } 74 | -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Cmdlet/Data/GetSvxCallQueueLog.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Management.Automation; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using SwitchvoxAPI.PowerShell.Base; 8 | 9 | namespace SwitchvoxAPI.PowerShell.Cmdlet 10 | { 11 | [Cmdlet(VerbsCommon.Get, "SvxCallQueueLog", DefaultParameterSetName = "Manual")] 12 | public class GetSvxCallQueueLog : SwitchvoxCmdlet 13 | { 14 | [Parameter(Mandatory = false)] 15 | public DateTime StartDate { get; set; } = DateTime.Now.Date; 16 | 17 | [Parameter(Mandatory = false)] 18 | public DateTime EndDate { get; set; } = DateTime.Now.Date.AddDays(1); 19 | 20 | [Parameter(Mandatory = true, ValueFromPipeline = true, ParameterSetName = "Default")] 21 | public ExtensionInfo Queue { get; set; } 22 | 23 | [Parameter(Mandatory = true, ParameterSetName = "Manual")] 24 | public string QueueAccountId { get; set; } 25 | 26 | [Parameter(Mandatory = false)] 27 | public CallTypes CallTypes { get; set; } = CallTypes.AllCalls; 28 | 29 | [Parameter(Mandatory = false)] 30 | public bool IgnoreWeekends { get; set; } = false; 31 | 32 | protected override void ProcessRecord() 33 | { 34 | if (Queue != null && Queue.Type != ExtensionType.CallQueue) 35 | throw new PSInvalidOperationException($"Extension '{Queue.DisplayName}' was of type '{Queue.Type}', however only extensions of type {ExtensionType.CallQueue} are allowed"); 36 | 37 | if (ParameterSetName == "Default") 38 | QueueAccountId = Queue.AccountId; 39 | 40 | var results = client.CallQueueLogs.StreamSearch(StartDate, EndDate, new[] { QueueAccountId }, CallTypes, IgnoreWeekends); 41 | 42 | foreach (var result in results) 43 | WriteObject(result); 44 | } 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Cmdlet/Data/GetSvxCallQueueStatus.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Management.Automation; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using SwitchvoxAPI.PowerShell.Base; 8 | 9 | namespace SwitchvoxAPI.PowerShell.Cmdlet 10 | { 11 | [Cmdlet(VerbsCommon.Get, "SvxCallQueueStatus", DefaultParameterSetName = "Manual")] 12 | public class GetSvxCallQueueStatus : SwitchvoxCmdlet 13 | { 14 | [Parameter(Mandatory = true, ValueFromPipeline = true, ParameterSetName = "Default")] 15 | public ExtensionInfo Queue { get; set; } 16 | 17 | [Parameter(Mandatory = true, ParameterSetName = "Manual")] 18 | public string QueueAccountId { get; set; } 19 | 20 | protected override void ProcessRecord() 21 | { 22 | if (Queue != null && Queue.Type != ExtensionType.CallQueue) 23 | throw new PSInvalidOperationException($"Extension '{Queue.DisplayName}' was of type '{Queue.Type}', however only extensions of type {ExtensionType.CallQueue} are allowed"); 24 | 25 | if (ParameterSetName == "Default") 26 | QueueAccountId = Queue.AccountId; 27 | 28 | var status = client.CallQueues.GetCurrentStatus(QueueAccountId); 29 | 30 | WriteObject(status); 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Cmdlet/Data/GetSvxExtension.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Management.Automation; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using SwitchvoxAPI.PowerShell.Base; 8 | 9 | namespace SwitchvoxAPI.PowerShell.Cmdlet.Data 10 | { 11 | [Cmdlet(VerbsCommon.Get, "SvxExtension")] 12 | public class GetSvxExtension : SwitchvoxCmdlet 13 | { 14 | [Parameter(Mandatory = false, Position = 0)] 15 | public string Name { get; set; } 16 | 17 | [Parameter(Mandatory = false)] 18 | public string[] Extension { get; set; } 19 | 20 | [Parameter(Mandatory = false)] 21 | public string[] AccountID { get; set; } 22 | 23 | [Parameter(Mandatory = false)] 24 | public string MinExtension { get; set; } 25 | 26 | [Parameter(Mandatory = false)] 27 | public string MaxExtension { get; set; } 28 | 29 | [Parameter(Mandatory = false)] 30 | public ExtensionType[] Type { get; set; } 31 | 32 | [Parameter(Mandatory = false)] 33 | public DateTime? MinCreationDate { get; set; } 34 | 35 | [Parameter(Mandatory = false)] 36 | public DateTime? MaxCreationDate { get; set; } 37 | 38 | protected override void ProcessRecord() 39 | { 40 | var extensions = client.Extensions.Search(MinExtension, MaxExtension, MinCreationDate, MaxCreationDate, 100000, 1, Type); 41 | 42 | if (Extension != null && Extension.Length > 0) 43 | extensions = extensions.Where(e => Extension.Any(ex => ex == e.Extension)).ToList(); 44 | 45 | if (AccountID != null && AccountID.Length > 0) 46 | extensions = extensions.Where(e => AccountID.Any(ex => ex == e.AccountId)).ToList(); 47 | 48 | if (Name != null) 49 | { 50 | WildcardPattern pattern = new WildcardPattern(Name, WildcardOptions.IgnoreCase); 51 | 52 | extensions = extensions.Where(e => pattern.IsMatch(e.DisplayName) || pattern.IsMatch(e.Extension)).ToList(); 53 | } 54 | 55 | WriteObject(extensions, true); 56 | 57 | //todo -- remove item/count parameters for logs 58 | //todo -- implement count parameter with streaming implementation 59 | } 60 | } 61 | } 62 | -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Cmdlet/Data/GetSvxExtensionGroup.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Management.Automation; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using SwitchvoxAPI.PowerShell.Base; 8 | 9 | namespace SwitchvoxAPI.PowerShell.Cmdlet 10 | { 11 | [Cmdlet(VerbsCommon.Get, "SvxExtensionGroup")] 12 | public class GetSvxExtensionGroup : SwitchvoxCmdlet 13 | { 14 | [Parameter(Mandatory = false, Position = 0)] 15 | public string Name { get; set; } 16 | 17 | protected override void ProcessRecord() 18 | { 19 | var list = client.ExtensionGroups.GetList(); 20 | 21 | if (Name != null) 22 | { 23 | var wildcard = new WildcardPattern(Name, WildcardOptions.IgnoreCase); 24 | 25 | list = list.Where(e => wildcard.IsMatch(e.Name)).ToList(); 26 | } 27 | 28 | var records = list.Select(e => client.ExtensionGroups.GetInfo(e.Id)); 29 | 30 | WriteObject(records, true); 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Cmdlet/Data/GetSvxExtensionSettings.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Management.Automation; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using SwitchvoxAPI.PowerShell.Base; 8 | 9 | namespace SwitchvoxAPI.PowerShell.Cmdlet 10 | { 11 | [Cmdlet(VerbsCommon.Get, "SvxExtensionSettings")] 12 | public class GetSvxExtensionSettings : SwitchvoxCmdlet 13 | { 14 | protected override void ProcessRecord() 15 | { 16 | var settings = client.Extensions.Settings.GetInfo(); 17 | 18 | WriteObject(settings); 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Cmdlet/Data/GetSvxIVRVariable.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Management.Automation; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using SwitchvoxAPI.PowerShell.Base; 8 | 9 | namespace SwitchvoxAPI.PowerShell.Cmdlet 10 | { 11 | [Cmdlet(VerbsCommon.Get, "SvxIVRVariable")] 12 | public class GetSvxIVRVariable : SwitchvoxCmdlet 13 | { 14 | [Parameter(Mandatory = false, Position = 0)] 15 | public string Name { get; set; } 16 | 17 | protected override void ProcessRecord() 18 | { 19 | var records = client.IVR.GlobalVariables.GetList(); 20 | 21 | if (Name != null) 22 | { 23 | var wildcard = new WildcardPattern(Name, WildcardOptions.IgnoreCase); 24 | 25 | records = records.Where(r => wildcard.IsMatch(r.Name)).ToList(); 26 | } 27 | 28 | WriteObject(records, true); 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Cmdlet/Data/GetSvxUserCallQueueStatus.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Management.Automation; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using SwitchvoxAPI.PowerShell.Base; 8 | 9 | namespace SwitchvoxAPI.PowerShell.Cmdlet 10 | { 11 | [Cmdlet(VerbsCommon.Get, "SvxUserCallQueueStatus", DefaultParameterSetName = "Manual")] 12 | public class GetSvxUserCallQueueStatus : SwitchvoxCmdlet 13 | { 14 | [Parameter(Mandatory = true, ValueFromPipeline = true, ParameterSetName = "Default")] 15 | public ExtensionInfo Queue { get; set; } 16 | 17 | [Parameter(Mandatory = true, ParameterSetName = "Manual")] 18 | public string QueueAccountId { get; set; } 19 | 20 | /// 21 | /// Account ID of the extension to use to make the request. Extension does not need to be a member of the queue, however should have Queue Visibility Permissions (under Queue -> Permissions -> Queue Visibility Permissions) 22 | /// 23 | [Parameter(Mandatory = true, Position = 0, ParameterSetName = "Default")] 24 | [Parameter(Mandatory = true, Position = 1, ParameterSetName = "Manual")] 25 | public string UserAccountId { get; set; } 26 | 27 | protected override void ProcessRecord() 28 | { 29 | if (Queue != null && Queue.Type != ExtensionType.CallQueue) 30 | throw new ParameterBindingException($"Extension {Queue.DisplayName} was of type {Queue.Type}, however only call queues are allowed"); 31 | 32 | if (ParameterSetName == "Default") 33 | QueueAccountId = Queue.AccountId; 34 | 35 | var status = client.Users.CallQueues.GetTodaysStatus(QueueAccountId, UserAccountId); 36 | 37 | WriteObject(status); 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Cmdlet/DisconnectSvxServer.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Management.Automation; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace SwitchvoxAPI.PowerShell.Cmdlet 9 | { 10 | [Cmdlet(VerbsCommunications.Disconnect, "SvxServer")] 11 | public class DisconnectSvxServer : PSCmdlet 12 | { 13 | protected override void ProcessRecord() 14 | { 15 | SwitchvoxSessionState.Client = null; 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Cmdlet/GetSvxClient.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Management.Automation; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace SwitchvoxAPI.PowerShell.Cmdlet 9 | { 10 | [Cmdlet(VerbsCommon.Get, "SvxClient")] 11 | public class GetSvxClient : PSCmdlet 12 | { 13 | protected override void ProcessRecord() 14 | { 15 | WriteObject(SwitchvoxSessionState.Client); 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Resources/SwitchvoxAPI.cmd: -------------------------------------------------------------------------------- 1 | start powershell -executionpolicy bypass -noexit -command "import-module '%~dp0..\SwitchvoxAPI'; cd $env:userprofile" -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Resources/SwitchvoxAPI.psd1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lordmilko/SwitchvoxAPI/add38984cf9eb4e3ee13cecd6b80ad71623a450c/SwitchvoxAPI/PowerShell/Resources/SwitchvoxAPI.psd1 -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Resources/SwitchvoxAPI.psm1: -------------------------------------------------------------------------------- 1 | New-Alias Add-SvoxIVRVariable Add-SvxIVRVariable 2 | New-Alias Disconnect-SvoxCall Disconnect-SvxCall 3 | New-Alias Invoke-SvoxCall Invoke-SvxCall 4 | New-Alias Remove-SvoxIVRVariable Remove-SvxIVRVariable 5 | New-Alias Set-SvoxIVRVariable Set-SvxIVRVariable 6 | 7 | New-Alias Get-SvoxCall Get-SvxCall 8 | New-Alias Get-SvoxCallLog Get-SvxCallLog 9 | New-Alias Get-SvoxCallQueueLog Get-SvxCallQueueLog 10 | New-Alias Get-SvoxCallQueueStatus Get-SvxCallQueueStatus 11 | New-Alias Get-SvoxClient Get-SvxClient 12 | New-Alias Get-SvoxExtension Get-SvxExtension 13 | New-Alias Get-SvoxExtensionGroup Get-SvxExtensionGroup 14 | New-Alias Get-SvoxExtensionSettings Get-SvxExtensionSettings 15 | New-Alias Get-SvoxIVRVariable Get-SvxIVRVariable 16 | New-Alias Get-SvoxUserCallQueueStatus Get-SvxUserCallQueueStatus 17 | 18 | New-Alias GoSvox Connect-GoSvoxServer 19 | 20 | . $PSScriptRoot\SwitchvoxAPI.GoSvox.ps1 21 | 22 | Export-ModuleMember -Alias * -Function * -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/Resources/SwitchvoxAPI.tt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lordmilko/SwitchvoxAPI/add38984cf9eb4e3ee13cecd6b80ad71623a450c/SwitchvoxAPI/PowerShell/Resources/SwitchvoxAPI.tt -------------------------------------------------------------------------------- /SwitchvoxAPI/PowerShell/SwitchvoxSessionState.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace SwitchvoxAPI.PowerShell 8 | { 9 | class SwitchvoxSessionState 10 | { 11 | internal static SwitchvoxClient Client { get; set; } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Properties/AssemblyFileVersion.cs: -------------------------------------------------------------------------------- 1 | //0 2 | //3 3 | //2 4 | //0 5 | // 6 | // This code was generated by a tool. Any changes made manually will be lost 7 | // the next time this code is regenerated. 8 | // 9 | 10 | using System.Reflection; 11 | 12 | [assembly: AssemblyFileVersion("0.3.2.0")] 13 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Properties/AssemblyFileVersion.tt: -------------------------------------------------------------------------------- 1 | <#@ template debug="false" hostspecific="true" language="C#" #> 2 | <#@ import namespace="System.IO" #> 3 | <#@ output extension=".cs" #> 4 | <# 5 | int major = 0; 6 | int minor = 0; 7 | int build = 0; 8 | int revision = 0; 9 | 10 | try 11 | { 12 | using(var f = File.OpenText(Host.ResolvePath("AssemblyFileVersion.cs"))) 13 | { 14 | var firstLine = string.Empty; 15 | 16 | do 17 | { 18 | //Appveyor inserts a bunch of newlines at the top of T4 generated files sometimes 19 | firstLine = f.ReadLine(); 20 | 21 | if(firstLine.StartsWith("//")) 22 | break; 23 | } while (f.Peek() >= 0); 24 | 25 | string maj = firstLine.Replace("//",""); 26 | 27 | string min = f.ReadLine().Replace("//",""); 28 | string b = f.ReadLine().Replace("//",""); 29 | string r = f.ReadLine().Replace("//",""); 30 | 31 | major = int.Parse(maj); 32 | minor = int.Parse(min); 33 | build = int.Parse(b) + 1; 34 | revision = int.Parse(r); 35 | } 36 | } 37 | catch 38 | { 39 | //It's your responsibility to assembly a valid AssemblyFileVersion.cs file to begin with 40 | throw; 41 | } 42 | #> 43 | //<#= major #> 44 | //<#= minor #> 45 | //<#= build #> 46 | //<#= revision #> 47 | // 48 | // This code was generated by a tool. Any changes made manually will be lost 49 | // the next time this code is regenerated. 50 | // 51 | 52 | using System.Reflection; 53 | 54 | [assembly: AssemblyFileVersion("<#= major #>.<#= minor #>.<#= build #>.<#= revision #>")] 55 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.InteropServices; 3 | 4 | // General Information about an assembly is controlled through the following 5 | // set of attributes. Change these attribute values to modify the information 6 | // associated with an assembly. 7 | [assembly: AssemblyTitle("SwitchvoxAPI")] 8 | [assembly: AssemblyDescription("C#/PowerShell interface for Digium Switchvox PBX")] 9 | [assembly: AssemblyConfiguration("")] 10 | [assembly: AssemblyCompany("")] 11 | [assembly: AssemblyProduct("SwitchvoxAPI")] 12 | [assembly: AssemblyCopyright("Copyright © 2015")] 13 | [assembly: AssemblyTrademark("")] 14 | [assembly: AssemblyCulture("")] 15 | 16 | // Setting ComVisible to false makes the types in this assembly not visible 17 | // to COM components. If you need to access a type in this assembly from 18 | // COM, set the ComVisible attribute to true on that type. 19 | [assembly: ComVisible(false)] 20 | 21 | // The following GUID is for the ID of the typelib if this project is exposed to COM 22 | [assembly: Guid("af889421-e8de-42d6-b43f-d878a657297a")] 23 | 24 | // Version information for an assembly consists of the following four values: 25 | // 26 | // Major Version 27 | // Minor Version 28 | // Build Number 29 | // Revision 30 | // 31 | // You can specify all the values or you can default the Build and Revision Numbers 32 | // by using the '*' as shown below: 33 | // [assembly: AssemblyVersion("1.0.*")] 34 | //[assembly: AssemblyVersion("1.0.0.0")] 35 | //[assembly: AssemblyFileVersion("1.0.0.0")] 36 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Properties/AssemblyVersion.cs: -------------------------------------------------------------------------------- 1 | //0 2 | //3 3 | //0 4 | //0 5 | // 6 | // This code was generated by a tool. Any changes made manually will be lost 7 | // the next time this code is regenerated. 8 | // 9 | 10 | using System.Reflection; 11 | 12 | [assembly: AssemblyVersion("0.3.0.0")] 13 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Properties/AssemblyVersion.tt: -------------------------------------------------------------------------------- 1 | <#@ template debug="false" hostspecific="true" language="C#" #> 2 | <#@ import namespace="System.IO" #> 3 | <#@ output extension=".cs" #> 4 | <# 5 | int major = 0; 6 | int minor = 0; 7 | int build = 0; 8 | int revision = 0; 9 | 10 | try 11 | { 12 | using(var f = new StreamReader(Host.ResolvePath("AssemblyFileVersion.cs"), false)) 13 | { 14 | var firstLine = string.Empty; 15 | 16 | do 17 | { 18 | //Appveyor inserts a bunch of newlines at the top of T4 generated files sometimes 19 | firstLine = f.ReadLine(); 20 | 21 | if(firstLine.StartsWith("//")) 22 | break; 23 | } while (f.Peek() >= 0); 24 | 25 | string maj = firstLine.Replace("//",""); 26 | string min = f.ReadLine().Replace("//",""); 27 | 28 | major = int.Parse(maj); 29 | minor = int.Parse(min); 30 | build = 0; 31 | revision = 0; 32 | } 33 | } 34 | catch 35 | { 36 | throw; 37 | } 38 | #> 39 | //<#= major #> 40 | //<#= minor #> 41 | //<#= build #> 42 | //<#= revision #> 43 | // 44 | // This code was generated by a tool. Any changes made manually will be lost 45 | // the next time this code is regenerated. 46 | // 47 | 48 | using System.Reflection; 49 | 50 | [assembly: AssemblyVersion("<#= major #>.<#= minor #>.<#= build #>.<#= revision #>")] 51 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Request/RequestMethod.cs: -------------------------------------------------------------------------------- 1 | using System.Text; 2 | using System.Xml.Linq; 3 | 4 | namespace SwitchvoxAPI 5 | { 6 | /// 7 | /// Serves as the base class for all Switchvox API XML requests. 8 | /// 9 | public class RequestMethod 10 | { 11 | /// 12 | /// The XML to be sent to the phone system. 13 | /// 14 | public XDocument Xml { get; private set; } 15 | 16 | /// 17 | /// The name of this Switchvox Request Method. 18 | /// 19 | public string Name { get; private set; } 20 | 21 | /// 22 | /// Initializes a new instance of the class. 23 | /// 24 | /// The name of the Switchvox API Method this class implements. For a list of valid methods please see http://developers.digium.com/switchvox/wiki/index.php/WebService_methods 25 | /// The XML to use for the request. 26 | public RequestMethod(string method, object xml) 27 | { 28 | Name = method; 29 | SetXml(xml); 30 | } 31 | 32 | /// 33 | /// Convert the XML of this API Request to its equivalent byte representation. 34 | /// 35 | /// The byte representation of this XML API Request. 36 | public byte[] ToBytes() 37 | { 38 | byte[] bytes = Encoding.ASCII.GetBytes(Xml.ToString()); 39 | 40 | return bytes; 41 | } 42 | 43 | /// 44 | /// Set the XML of this RequestMethod. 45 | /// 46 | /// The XML to use. If this Switchvox API Method does not include any parameters, this value can be null. 47 | private void SetXml(object xml) 48 | { 49 | Xml = new XDocument( 50 | new XElement("request", 51 | new XAttribute("method", Name), 52 | new XElement("parameters", xml) 53 | ) 54 | ); 55 | } 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/CallLogs/CallLog.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Xml.Serialization; 4 | 5 | namespace SwitchvoxAPI 6 | { 7 | public class CallLog 8 | { 9 | [XmlAttribute("id")] 10 | public string Id { get; set; } 11 | 12 | [XmlAttribute("origination")] 13 | public CallDirection Direction { get; set; } 14 | 15 | [XmlAttribute("start_time")] 16 | public DateTime StartTime { get; set; } 17 | 18 | [XmlAttribute("from")] 19 | public string From { get; set; } 20 | 21 | [XmlAttribute("from_account_id")] 22 | public string FromAccountId { get; set; } 23 | 24 | [XmlAttribute("from_name")] 25 | public string FromName { get; set; } 26 | 27 | [XmlAttribute("from_number")] 28 | public string FromNumber { get; set; } 29 | 30 | [XmlAttribute("to")] 31 | public string To { get; set; } 32 | 33 | [XmlAttribute("to_account_id")] 34 | public string ToAccountId { get; set; } 35 | 36 | [XmlAttribute("to_name")] 37 | public string ToName { get; set; } 38 | 39 | [XmlAttribute("to_number")] 40 | public string ToNumber { get; set; } 41 | 42 | [XmlAttribute("total_duration")] 43 | public TimeSpan TotalDuration { get; set; } 44 | 45 | [XmlAttribute("talk_duration")] 46 | public TimeSpan TalkDuration { get; set; } 47 | 48 | [XmlAttribute("cdr_call_id")] 49 | public string CDRId { get; set; } 50 | 51 | [XmlIgnore] 52 | public List Events => events.Items; 53 | 54 | [XmlElement("events")] 55 | protected ListDeserializationLayers.CallLogEvents events { get; set; } 56 | 57 | public override string ToString() 58 | { 59 | return $"{FromName} => {ToName ?? ToNumber}"; 60 | } 61 | } 62 | } 63 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/CallLogs/CallLogEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Xml.Serialization; 3 | 4 | namespace SwitchvoxAPI 5 | { 6 | public class CallLogEvent 7 | { 8 | /// 9 | /// The time the event occurred. 10 | /// 11 | [XmlAttribute("start_time")] 12 | public DateTime DateTime { get; set; } 13 | 14 | /// 15 | /// The type of event that occurred. 16 | /// 17 | [XmlAttribute("type")] 18 | public CallEventType Type { get; set; } 19 | 20 | /// 21 | /// Details of what happened in the event. 22 | /// 23 | [XmlAttribute("display")] 24 | public string Details { get; set; } 25 | 26 | public override string ToString() 27 | { 28 | return Details; 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/CallLogs/CallLogs.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Xml.Serialization; 3 | 4 | namespace SwitchvoxAPI 5 | { 6 | [XmlRoot("calls")] 7 | public class CallLogs 8 | { 9 | [XmlAttribute("page_number")] 10 | public int PageNumber { get; set; } 11 | 12 | [XmlAttribute("TotalPages")] 13 | public int TotalPages { get; set; } 14 | 15 | [XmlAttribute("items_per_page")] 16 | public int ItemsPerPage { get; set; } 17 | 18 | [XmlAttribute("total_items")] 19 | public int TotalItems { get; set; } 20 | 21 | [XmlElement("call")] 22 | public List Items { get; set; } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/CallQueueLogs/CallQueueLog.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Xml.Serialization; 3 | 4 | namespace SwitchvoxAPI 5 | { 6 | public class CallQueueLog 7 | { 8 | [XmlAttribute("start_time")] 9 | public DateTime StartTime { get; set; } 10 | 11 | [XmlAttribute("type")] 12 | public QueueCallType Type { get; set; } 13 | 14 | [XmlAttribute("queue_account_id")] 15 | public string QueueAccountId { get; set; } 16 | 17 | [XmlAttribute("queue_name")] 18 | public string QueueName { get; set; } 19 | 20 | [XmlAttribute("queue_extension")] 21 | public string QueueExtension { get; set; } 22 | 23 | [XmlAttribute("caller_id_number")] 24 | public string CallerIdNumber { get; set; } 25 | 26 | [XmlAttribute("caller_id_name")] 27 | public string CallerIdName { get; set; } 28 | 29 | [XmlAttribute("origination")] 30 | public CallDirection Direction { get; set; } 31 | 32 | [XmlAttribute("wait_time")] 33 | public TimeSpan WaitTime { get; set; } 34 | 35 | [XmlAttribute("enter_position")] 36 | public int StartPosition { get; set; } 37 | 38 | [XmlAttribute("talk_time")] 39 | public TimeSpan TalkTime { get; set; } 40 | 41 | [XmlAttribute("member_account_id")] 42 | public string MemberAccountId { get; set; } 43 | 44 | [XmlAttribute("member_name")] 45 | public string MemberName { get; set; } 46 | 47 | [XmlAttribute("member_extension")] 48 | public string MemberExtension { get; set; } 49 | 50 | [XmlAttribute("member_misses")] 51 | public int MemberMisses { get; set; } 52 | 53 | [XmlAttribute("uniqueid")] 54 | public string UniqueId { get; set; } 55 | 56 | [XmlAttribute("result_type")] 57 | public string ResultType { get; set; } 58 | } 59 | } 60 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/CallQueues/CallQueueCurrentStatus.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using System.Xml.Serialization; 7 | using SwitchvoxAPI.ListDeserializationLayers; 8 | 9 | namespace SwitchvoxAPI 10 | { 11 | [XmlRoot("call_queue")] 12 | public class CallQueueCurrentStatus 13 | { 14 | /// 15 | /// Account ID of the Call Queue. 16 | /// 17 | [XmlAttribute("account_id")] 18 | public string AccountId { get; set; } 19 | 20 | /// 21 | /// Extension of the Call Queue. 22 | /// 23 | [XmlAttribute("extension")] 24 | public string Extension { get; set; } 25 | 26 | [XmlAttribute("call_queue_name")] 27 | public string Name { get; set; } 28 | 29 | [XmlAttribute("strategy")] 30 | public CallQueueStrategy Strategy; 31 | 32 | [XmlElement("queue_members")] 33 | protected CallQueueStatusMembers members { get; set; } //this will contain a list of things with attribute queue_member. should this class inherit from 34 | 35 | [XmlIgnore] 36 | public List Members => members.Items; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/CallQueues/CallQueueCurrentStatusMember.cs: -------------------------------------------------------------------------------- 1 | using System.Xml.Serialization; 2 | 3 | namespace SwitchvoxAPI 4 | { 5 | public class CallQueueCurrentStatusMember : BaseCallQueueStatusMember 6 | { 7 | [XmlAttribute("logged_in_status")] 8 | public string LoggedInStatus { get; set; } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/CurrentCalls/CurrentCall.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Xml.Serialization; 3 | 4 | namespace SwitchvoxAPI 5 | { 6 | public class CurrentCall 7 | { 8 | [XmlAttribute("state")] 9 | public CurrentCallState State { get; set; } 10 | 11 | [XmlAttribute("start_time")] 12 | public DateTime? StartTime { get; set; } 13 | 14 | [XmlAttribute("duration")] 15 | public TimeSpan Duration { get; set; } 16 | 17 | [XmlAttribute("to_caller_id_name")] 18 | public string ToName { get; set; } 19 | 20 | [XmlAttribute("to_caller_id_number")] 21 | public string ToNumber { get; set; } 22 | 23 | [XmlAttribute("from_caller_id_name")] 24 | public string FromName { get; set; } 25 | 26 | [XmlAttribute("from_caller_id_number")] 27 | public string FromNumber { get; set; } 28 | 29 | [XmlAttribute("format")] 30 | public string Format { get; set; } 31 | 32 | [XmlAttribute("id")] 33 | public string Id { get; set; } 34 | 35 | [XmlAttribute("lotnum")] 36 | public int? LotNum { get; set; } 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/ExtensionGroups/ExtensionGroup.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using System.Xml.Serialization; 7 | using SwitchvoxAPI.ListDeserializationLayers; 8 | 9 | namespace SwitchvoxAPI 10 | { 11 | [XmlRoot("extension_group")] 12 | public class ExtensionGroup : ExtensionGroupOverview 13 | { 14 | [XmlElement("members")] 15 | protected ExtensionGroupMembers members { get; set; } 16 | 17 | [XmlIgnore] 18 | public List Members => members.Items; 19 | 20 | [XmlElement("dependents")] 21 | protected ExtensionGroupDependents dependents { get; set; } 22 | 23 | [XmlIgnore] 24 | public List Dependents => dependents.Items; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/ExtensionGroups/ExtensionGroupDependent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using System.Xml.Serialization; 7 | 8 | namespace SwitchvoxAPI 9 | { 10 | public class ExtensionGroupDependent 11 | { 12 | [XmlAttribute("type")] 13 | public object Type { get; set; } //could this be currentcallstate? an extension type? and separately from this, 14 | //dont we need to add an extensiontype for all the different types of extensions we have. what if we make a bunch of feature extensions 15 | //and then do extensions.getlist() 16 | 17 | //we should update our readme file on github to list all the methods we currently support 18 | 19 | //we should implement systemclock.getinfo and find a way to convert the current timezone to some sort of object like timezoneinfo? 20 | 21 | [XmlAttribute("display_name")] 22 | public string DisplayName { get; set; } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/ExtensionGroups/ExtensionGroupMember.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using System.Xml.Serialization; 7 | 8 | namespace SwitchvoxAPI 9 | { 10 | //todo: need to make notes as to whether fields will have values based on whether this is another group or is a real member 11 | 12 | public class ExtensionGroupMember 13 | { 14 | [XmlAttribute("account_id")] 15 | public string AccountId { get; set; } 16 | 17 | [XmlAttribute("extension")] 18 | public string Extension { get; set; } 19 | 20 | [XmlAttribute("first_name")] 21 | public string FirstName { get; set; } 22 | 23 | [XmlAttribute("last_name")] 24 | public string LastName { get; set; } 25 | 26 | [XmlAttribute("display_name")] 27 | public string DisplayName { get; set; } 28 | 29 | [XmlAttribute("position")] 30 | public int Position { get; set; } 31 | 32 | [XmlAttribute("id")] 33 | public int? Id { get; set; } 34 | 35 | [XmlAttribute("name")] 36 | public string Name { get; set; } 37 | 38 | [XmlAttribute("description")] 39 | public string Description { get; set; } 40 | 41 | [XmlAttribute("date_created")] 42 | public DateTime DateCreated { get; set; } 43 | 44 | [XmlAttribute("vm_quota")] 45 | public int? VmQuota { get; set; } 46 | 47 | public override string ToString() 48 | { 49 | return DisplayName; 50 | } 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/ExtensionGroups/ExtensionGroupOverview.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using System.Xml.Serialization; 7 | 8 | namespace SwitchvoxAPI 9 | { 10 | public class ExtensionGroupOverview 11 | { 12 | [XmlAttribute("id")] 13 | public string Id { get; set; } 14 | 15 | [XmlAttribute("name")] 16 | public string Name { get; set; } 17 | 18 | [XmlAttribute("date_created")] 19 | public DateTime DateCreated { get; set; } 20 | 21 | [XmlAttribute("vm_quota")] 22 | public int? VmQuota { get; set; } 23 | 24 | [XmlAttribute("editable")] 25 | public bool Editable { get; set; } 26 | 27 | [XmlAttribute("user_viewable")] 28 | public bool UserViewable { get; set; } 29 | 30 | public override string ToString() 31 | { 32 | return Name; 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/Extensions/Settings/ExtensionSettings.cs: -------------------------------------------------------------------------------- 1 | using System.Xml.Serialization; 2 | 3 | namespace SwitchvoxAPI 4 | { 5 | [XmlRoot("extensions_settings")] 6 | public class ExtensionSettings 7 | { 8 | [XmlAttribute("extension_length_constraint")] 9 | public int ExtensionLength { get; set; } 10 | 11 | [XmlAttribute("beep_after_assisted_transfer")] 12 | public bool BeepAfterAssistedTransfer { get; set; } 13 | 14 | [XmlAttribute("require_strong_user_password")] 15 | public bool RequireStrongUserPassword { get; set; } 16 | 17 | [XmlAttribute("require_strong_phone_password")] 18 | public bool RequireStrongPhonePassword { get; set; } 19 | 20 | [XmlAttribute("force_weak_user_password_change")] 21 | public bool ForceWeakPasswordChange { get; set; } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/IVR/GlobalVariables/GlobalIVRVariable.cs: -------------------------------------------------------------------------------- 1 | using System.Xml.Serialization; 2 | 3 | namespace SwitchvoxAPI 4 | { 5 | public class GlobalIVRVariable 6 | { 7 | [XmlAttribute("id")] 8 | public int Id { get; set; } 9 | 10 | [XmlAttribute("name")] 11 | public string Name { get; set; } 12 | 13 | private string value; 14 | 15 | [XmlAttribute("value")] 16 | public string Value 17 | { 18 | get { return value; } 19 | set { this.value = value == string.Empty ? null : value; } 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/ListDeserializationLayer.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using System.Xml.Serialization; 7 | using SwitchvoxAPI; 8 | 9 | namespace SwitchvoxAPI 10 | { 11 | /// 12 | /// Intermediate layer used for deserializing lists of elements. 13 | /// 14 | public class ListDeserializationLayer 15 | { 16 | [XmlElement("extension")] 17 | public List Extensions { get; set; } 18 | 19 | [XmlElement("queue_member")] 20 | public List CallQueueStatusMembers { get; set; } 21 | 22 | [XmlElement("waiting_caller")] 23 | public List CallQueueStatusWaitingCallers { get; set; } 24 | 25 | [XmlElement("event")] 26 | public List CallLogEvents { get; set; } 27 | 28 | [XmlElement("current_call")] 29 | public List CurrentCalls { get; set; } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/ListDeserializationLayers.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Xml.Serialization; 3 | 4 | namespace SwitchvoxAPI.ListDeserializationLayers 5 | { 6 | [XmlRoot("extensions")] 7 | public class Extensions 8 | { 9 | [XmlElement("extension")] 10 | public List Items { get; set; } 11 | } 12 | 13 | [XmlRoot("extension_groups")] 14 | public class ExtensionGroupOverviews 15 | { 16 | [XmlElement("extension_group")] 17 | public List Items { get; set; } 18 | } 19 | 20 | [XmlRoot("members")] 21 | public class ExtensionGroupMembers 22 | { 23 | [XmlElement("member")] 24 | public List Items { get; set; } 25 | } 26 | 27 | [XmlRoot("dependents")] 28 | public class ExtensionGroupDependents 29 | { 30 | [XmlElement("dependent")] 31 | public List Items { get; set; } 32 | } 33 | 34 | [XmlRoot("queue_members")] 35 | public class CallQueueStatusMembers 36 | { 37 | [XmlElement("queue_member")] 38 | public List Items { get; set; } 39 | } 40 | 41 | [XmlRoot("waiting_callers")] 42 | public class CallQueueTodaysStatusWaitingCallers 43 | { 44 | [XmlElement("waiting_caller")] 45 | public List Items { get; set; } 46 | } 47 | 48 | [XmlRoot("events")] 49 | public class CallLogEvents 50 | { 51 | [XmlElement("event")] 52 | public List Items { get; set; } 53 | } 54 | 55 | [XmlRoot("current_calls")] 56 | public class CurrentCalls 57 | { 58 | [XmlElement("current_call")] 59 | public List Items { get; set; } 60 | } 61 | 62 | [XmlRoot("global_ivr_variables")] 63 | public class GlobalIVRVariables 64 | { 65 | [XmlElement("global_ivr_variable")] 66 | public List Items { get; set; } 67 | } 68 | } 69 | 70 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/Users/CallQueueStatusMember.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using System.Xml.Serialization; 7 | 8 | namespace SwitchvoxAPI 9 | { 10 | class CallQueueStatusMember : BaseCallQueueStatusMember 11 | { 12 | [XmlAttribute("logged_in_status")] 13 | public string LoggedInStatus { get; set; } 14 | 15 | private string pausedSince; 16 | 17 | [XmlAttribute("paused_since")] 18 | public string PausedSince 19 | { 20 | get { return pausedSince; } 21 | set 22 | { 23 | pausedSince = value == string.Empty ? null : value; 24 | } 25 | } 26 | 27 | [XmlAttribute("paused")] 28 | public bool Paused { get; set; } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/Users/CallQueues/CallQueueTodaysStatus.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | using System.Xml.Serialization; 3 | 4 | namespace SwitchvoxAPI 5 | { 6 | [XmlRoot("callQueue")] 7 | public class CallQueueTodaysStatus 8 | { 9 | /// 10 | /// Account ID of the Call Queue. 11 | /// 12 | [XmlAttribute("account_id")] 13 | public string AccountId { get; set; } 14 | 15 | /// 16 | /// Name of the Call Queue. 17 | /// 18 | [XmlAttribute("name")] 19 | public string Name { get; set; } 20 | 21 | /// 22 | /// Extension of the Call Queue. 23 | /// 24 | [XmlAttribute("extension")] 25 | public string Extension { get; set; } 26 | 27 | [XmlElement("my_status")] 28 | public CallQueueTodaysStatusStatus Status { get; set; } 29 | 30 | [XmlElement("overview")] 31 | public CallQueueTodaysStatusOverview Overview { get; set; } 32 | 33 | [XmlElement("detailed_view")] 34 | protected CallQueueTodaysStatusDetails details { get; set; } 35 | 36 | [XmlIgnore] 37 | public List Members => details.Members.Items; 38 | 39 | [XmlIgnore] 40 | public List CallsWaiting => details.CallsWaiting.Items; 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/Users/CallQueues/CallQueueTodaysStatusCallsWaiting.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Xml.Serialization; 3 | 4 | namespace SwitchvoxAPI 5 | { 6 | //todo: i dont think this has been done correctly - i think the position attribute should have a position xml attribute? 7 | public class CallQueueTodaysStatusWaitingCall 8 | { 9 | [XmlAttribute("waiting_caller")] 10 | public int Position { get; set; } 11 | 12 | [XmlAttribute("entered_position")] 13 | public int StartingPosiiton { get; set; } 14 | 15 | [XmlAttribute("waiting_duration")] 16 | public TimeSpan WaitingDuration { get; set; } 17 | 18 | [XmlAttribute("talking_to_name")] 19 | public string TalkingToName { get; set; } 20 | 21 | [XmlAttribute("talking_to_number")] 22 | public string TalkingToNumber { get; set; } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/Users/CallQueues/CallQueueTodaysStatusDetails.cs: -------------------------------------------------------------------------------- 1 | using System.Xml.Serialization; 2 | using SwitchvoxAPI.ListDeserializationLayers; 3 | 4 | namespace SwitchvoxAPI 5 | { 6 | [XmlRoot("detailed_view")] 7 | public class CallQueueTodaysStatusDetails 8 | { 9 | [XmlElement("queue_members")] 10 | public CallQueueStatusMembers Members { get; set; } 11 | 12 | [XmlElement("waiting_callers")] 13 | public CallQueueTodaysStatusWaitingCallers CallsWaiting { get; set; } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/Users/CallQueues/CallQueueTodaysStatusMember.cs: -------------------------------------------------------------------------------- 1 | using System.Xml.Serialization; 2 | 3 | namespace SwitchvoxAPI 4 | { 5 | public class CallQueueTodaysStatusMember : BaseCallQueueStatusMember 6 | { 7 | private string callDuration; 8 | 9 | //todo: why is this not a timespan 10 | [XmlAttribute("call_duration")] 11 | public string CallDuration 12 | { 13 | get { return callDuration; } 14 | set 15 | { 16 | callDuration = value == string.Empty ? null : value; 17 | } 18 | } 19 | 20 | [XmlAttribute("loggedin_status")] 21 | public string LoggedInStatus { get; set; } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /SwitchvoxAPI/Responses/Users/CallQueues/CallQueueTodaysStatusStatus.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Xml.Serialization; 3 | 4 | namespace SwitchvoxAPI 5 | { 6 | [XmlRoot("my_status")] 7 | public class CallQueueTodaysStatusStatus 8 | { 9 | [XmlAttribute("login_status")] 10 | public string LoginStatus { get; set; } 11 | 12 | [XmlAttribute("current_call_duration")] 13 | public int CurrentCallDuration { get; set; } 14 | 15 | [XmlAttribute("current_caller_id_name")] 16 | public string CurrentCallerIdName { get; set; } 17 | 18 | [XmlAttribute("current_caller_id_number")] 19 | public string CurrentCallerIdNumber { get; set; } 20 | 21 | [XmlAttribute("calls_taken")] 22 | public int CallsTaken { get; set; } 23 | 24 | //todo what data format should this be 25 | [XmlAttribute("login_time")] 26 | public string LoginTime { get; set; } 27 | 28 | [XmlAttribute("time_of_last_call")] 29 | public DateTime? LastCallTime { get; set; } 30 | 31 | [XmlAttribute("total_talk_time")] 32 | public TimeSpan TotalTalkTime { get; set; } 33 | 34 | [XmlAttribute("avg_talk_time")] 35 | public TimeSpan AverageTalkTime { get; set; } 36 | 37 | [XmlAttribute("max_talk_time")] 38 | public TimeSpan MaxTalkTime { get; set; } 39 | 40 | [XmlAttribute("paused_time")] 41 | public TimeSpan PausedTime { get; set; } 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /SwitchvoxAPI/SwitchvoxAPI.nuspec: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $id$ 5 | $version$ 6 | SwitchvoxAPI 7 | lordmilko 8 | $author$ 9 | https://github.com/lordmilko/SwitchvoxAPI 10 | 11 | https://raw.githubusercontent.com/lordmilko/SwitchvoxAPI/master/LICENSE 12 | false 13 | $description$ 14 | SwitchvoxAPI is a C#/PowerShell library that abstracts away the complexity of interfacing with the Digium Switchvox XML API. 15 | 16 | SwitchvoxAPI implements a collection of methods and enumerations that help create and execute the varying HTTP POST requests required to interface with Switchvox. All responses from Switchvox are automatically deserialized by SwitchvoxAPI. 17 | 18 | For more information and usage examples, please see the Project Site. 19 | (c) 2015 lordmilko. All rights reserved. 20 | PSModule 21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/AccessControl/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.AccessControl 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/AccessControl/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.AccessControl 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/AccessControl/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.AccessControl 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/AccessControl/IsAllowed.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.AccessControl 2 | { 3 | class IsAllowed 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/AccessControl/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.AccessControl 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/AccessControl/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.AccessControl 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/AddonLicenses/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.AddonLicenses 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Admins/AccessPermissions/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Admins.AccessPermissions 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Admins/AccessPermissions/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Admins.AccessPermissions 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Admins/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Admins 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Admins/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Admins 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Admins/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Admins 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Admins/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Admins 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Admins/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Admins 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Backups/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Backups 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Backups/Apply.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Backups 2 | { 3 | class Apply 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Backups/Directories/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Backups.Directories 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Backups/Directories/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Backups.Directories 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Backups/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Backups 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Backups/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Backups 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/BlockedIPs/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.BlockedIPs 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/BlockedIPs/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.BlockedIPs 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/BlockedIPs/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.BlockedIPs 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/BlockedIPs/Settings/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.BlockedIPs.Settings 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/BlockedIPs/Settings/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.BlockedIPs.Settings 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/CallQueueMemberLogs/Search.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.CallQueueMemberLogs 2 | { 3 | class Search 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/CallQueueMemberReports/Search.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.CallQueueMemberReports 2 | { 3 | class Search 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/CallQueueMissedCalls/Search.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.CallQueueMissedCalls 2 | { 3 | class Search 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/CallQueueReports/Search.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.CallQueueReports 2 | { 3 | class Search 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/CallRecordings/RecordedCalls/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.CallRecordings.RecordedCalls 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/CallRecordings/ScheduledRecordings/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.CallRecordings.ScheduledRecordings 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/CallRecordings/ScheduledRecordings/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.CallRecordings.ScheduledRecordings 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/CallRecordings/ScheduledRecordings/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.CallRecordings.ScheduledRecordings 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/CallRecordings/ScheduledRecordings/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.CallRecordings.ScheduledRecordings 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/CallRecordings/Settings/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.CallRecordings.Settings 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/CallRecordings/Settings/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.CallRecordings.Settings 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/CallReports/CallQueues/Search.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.CallReports.CallQueues 2 | { 3 | class Search 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/CallReports/DID/Search.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.CallReports.DID 2 | { 3 | class Search 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/CallReports/IVRs/Search.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.CallReports.IVRs 2 | { 3 | class Search 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/CallReports/Phones/Search.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.CallReports.Phones 2 | { 3 | class Search 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/CallReports/Providers/Search.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.CallReports.Providers 2 | { 3 | class Search 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/CallReports/Search.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.CallReports 2 | { 3 | class Search 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ConvergedDevices/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ConvergedDevices 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ConvergedDevices/Search.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ConvergedDevices 2 | { 3 | class Search 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Debug/ACLI/Sessions/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Debug.ACLI.Sessions 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Debug/ACLI/Sessions/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Debug.ACLI.Sessions 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Debug/ACLI/Sessions/GetLog.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Debug.ACLI.Sessions 2 | { 3 | class GetLog 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Debug/ACLI/StartSession.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Debug.ACLI 2 | { 3 | class StartSession 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Debug/ACLI/StopSession.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Debug.ACLI 2 | { 3 | class StopSession 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Debug/PCAP/Sessions/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Debug.PCAP.Sessions 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Debug/PCAP/Sessions/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Debug.PCAP.Sessions 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Debug/PCAP/Sessions/GetLog.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Debug.PCAP.Sessions 2 | { 3 | class GetLog 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Debug/PCAP/StartSession.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Debug.PCAP 2 | { 3 | class StartSession 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Debug/PCAP/StopSession.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Debug.PCAP 2 | { 3 | class StopSession 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Debug/PRI/Sessions/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Debug.PRI.Sessions 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Debug/PRI/Sessions/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Debug.PRI.Sessions 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Debug/PRI/Sessions/GetLog.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Debug.PRI.Sessions 2 | { 3 | class GetLog 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Debug/PRI/StartSession.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Debug.PRI 2 | { 3 | class StartSession 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Debug/PRI/StopSession.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Debug.PRI 2 | { 3 | class StopSession 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Debug/Sessions/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Debug.Sessions 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Debug/Sessions/GetTypes.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Debug.Sessions 2 | { 3 | class GetTypes 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/DigiumPhones/Apps/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.DigiumPhones.Apps 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/DigiumPhones/Apps/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.DigiumPhones.Apps 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/DigiumPhones/Apps/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.DigiumPhones.Apps 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/DigiumPhones/Apps/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.DigiumPhones.Apps 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/DigiumPhones/Assignments/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.DigiumPhones.Assignments 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/DigiumPhones/Assignments/CheckConflicts.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.DigiumPhones.Assignments 2 | { 3 | class CheckConflicts 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/DigiumPhones/Assignments/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.DigiumPhones.Assignments 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/DigiumPhones/Assignments/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.DigiumPhones.Assignments 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/DigiumPhones/Assignments/Ignore/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.DigiumPhones.Assignments.Ignore 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/DigiumPhones/Assignments/Ignore/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.DigiumPhones.Assignments.Ignore 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/DigiumPhones/Assignments/Options/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.DigiumPhones.Assignments.Options 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/DigiumPhones/Assignments/Options/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.DigiumPhones.Assignments.Options 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/DigiumPhones/Assignments/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.DigiumPhones.Assignments 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/DigiumPhones/Assignments/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.DigiumPhones.Assignments 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Directories/GetExtensionList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Directories 2 | { 3 | class GetExtensionList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Directories/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Directories 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Directories/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Directories 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/DistinctiveRing/Tones/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.DistinctiveRing.Tones 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/DistinctiveRing/Tones/GetFile.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.DistinctiveRing.Tones 2 | { 3 | class GetFile 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/DistinctiveRing/Tones/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.DistinctiveRing.Tones 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/DistinctiveRing/Tones/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.DistinctiveRing.Tones 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/DistinctiveRing/Tones/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.DistinctiveRing.Tones 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ExtensionGroups/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ExtensionGroups 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ExtensionGroups/Members/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ExtensionGroups.Members 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ExtensionGroups/Members/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ExtensionGroups.Members 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ExtensionGroups/Members/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ExtensionGroups.Members 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ExtensionGroups/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ExtensionGroups 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ExtensionGroups/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ExtensionGroups 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ExternalContacts/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ExternalContacts 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ExternalContacts/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ExternalContacts 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ExternalContacts/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ExternalContacts 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/File/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.File 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/IVR/DistinctiveRingHints/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.IVR.DistinctiveRingHints 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/IVR/DistinctiveRingHints/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.IVR.DistinctiveRingHints 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/IVR/DistinctiveRingHints/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.IVR.DistinctiveRingHints 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Images/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Images 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Images/GetFile.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Images 2 | { 3 | class GetFile 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Images/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Images 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Images/UpdateCrop.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Images 2 | { 3 | class UpdateCrop 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/IncomingCallerIdRules/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.IncomingCallerIdRules 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/IncomingCallerIdRules/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.IncomingCallerIdRules 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/IncomingCallerIdRules/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.IncomingCallerIdRules 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/IncomingCallerIdRules/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.IncomingCallerIdRules 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/IncomingCallerIdRules/Search.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.IncomingCallerIdRules 2 | { 3 | class Search 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/IncomingCallerIdRules/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.IncomingCallerIdRules 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/IncomingDIDRoutes/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.IncomingDIDRoutes 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/IncomingDIDRoutes/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.IncomingDIDRoutes 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/IncomingDIDRoutes/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.IncomingDIDRoutes 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/IncomingDIDRoutes/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.IncomingDIDRoutes 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/IncomingDIDRoutes/Search.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.IncomingDIDRoutes 2 | { 3 | class Search 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/IncomingDIDRoutes/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.IncomingDIDRoutes 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Info/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Info 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Info/GetMaximumConcurrentCalls.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Info 2 | { 3 | class GetMaximumConcurrentCalls 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Info/GetPhoneConfigurationTokens.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Info 2 | { 3 | class GetPhoneConfigurationTokens 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Info/GetSoftwareVersion.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Info 2 | { 3 | class GetSoftwareVersion 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Info/GetUserExtensions.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Info 2 | { 3 | class GetUserExtensions 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Localization/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Localization 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Localization/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Localization 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Network/HostAddresses/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Network.HostAddresses 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Network/HostAddresses/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Network.HostAddresses 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Network/HostAddresses/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Network.HostAddresses 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Network/HostAddresses/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Network.HostAddresses 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Network/HostAddresses/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Network.HostAddresses 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/OutgoingCallDiagnostics/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.OutgoingCallDiagnostics 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/OutgoingCallDiagnostics/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.OutgoingCallDiagnostics 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/OutgoingCallRules/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.OutgoingCallRules 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/OutgoingCallRules/CheckConflicts.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.OutgoingCallRules 2 | { 3 | class CheckConflicts 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/OutgoingCallRules/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.OutgoingCallRules 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/OutgoingCallRules/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.OutgoingCallRules 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/OutgoingCallRules/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.OutgoingCallRules 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/OutgoingCallRules/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.OutgoingCallRules 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/OutgoingCallerIdRules/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.OutgoingCallerIdRules 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/OutgoingCallerIdRules/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.OutgoingCallerIdRules 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/OutgoingCallerIdRules/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.OutgoingCallerIdRules 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/OutgoingCallerIdRules/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.OutgoingCallerIdRules 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/OutgoingCallerIdRules/Search.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.OutgoingCallerIdRules 2 | { 3 | class Search 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/OutgoingCallerIdRules/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.OutgoingCallerIdRules 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ParkingLots/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ParkingLots 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/PhoneSetup/Options/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.PhoneSetup.Options 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/PhoneSetup/Options/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.PhoneSetup.Options 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/PhoneSetup/Phones/Bulk/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.PhoneSetup.Phones.Bulk 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/PhoneSetup/Phones/Configured/AdditionalLines/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.PhoneSetup.Phones.Configured.AdditionalLines 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/PhoneSetup/Phones/Configured/AdditionalLines/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.PhoneSetup.Phones.Configured.AdditionalLines 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/PhoneSetup/Phones/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.PhoneSetup.Phones 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/PhoneSetup/Phones/Reboot.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.PhoneSetup.Phones 2 | { 3 | class Reboot 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/PhoneSetup/Phones/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.PhoneSetup.Phones 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Progress/Check.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Progress 2 | { 3 | class Check 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Providers/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Providers 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/SNMPSettings/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.SNMPSettings 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/SNMPSettings/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.SNMPSettings 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ScheduledReports/CallReports/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ScheduledReports.CallReports 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ScheduledReports/CallReports/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ScheduledReports.CallReports 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ScheduledReports/CallReports/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ScheduledReports.CallReports 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ScheduledReports/CallReports/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ScheduledReports.CallReports 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ScheduledReports/CallReports/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ScheduledReports.CallReports 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ScheduledReports/QueueMemberReports/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ScheduledReports.QueueMemberReports 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ScheduledReports/QueueMemberReports/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ScheduledReports.QueueMemberReports 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ScheduledReports/QueueMemberReports/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ScheduledReports.QueueMemberReports 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ScheduledReports/QueueMemberReports/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ScheduledReports.QueueMemberReports 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ScheduledReports/QueueMemberReports/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ScheduledReports.QueueMemberReports 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ScheduledReports/QueueReports/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ScheduledReports.QueueReports 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ScheduledReports/QueueReports/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ScheduledReports.QueueReports 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ScheduledReports/QueueReports/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ScheduledReports.QueueReports 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ScheduledReports/QueueReports/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ScheduledReports.QueueReports 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/ScheduledReports/QueueReports/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.ScheduledReports.QueueReports 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Scheduler/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Scheduler 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Scheduler/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Scheduler 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Scheduler/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Scheduler 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Scheduler/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Scheduler 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Status/Hardware/GetDiskInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Status.Hardware 2 | { 3 | class GetDiskInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Status/Hardware/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Status.Hardware 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Status/Hardware/GetLoadInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Status.Hardware 2 | { 3 | class GetLoadInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Status/Hardware/GetMemoryInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Status.Hardware 2 | { 3 | class GetMemoryInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Status/Phones/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Status.Phones 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Status/VoipProviders/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Status.VoipProviders 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/SystemClock/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.SystemClock 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/TechSupport/Connect.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.TechSupport 2 | { 3 | class Connect 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/TechSupport/Disconnect.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.TechSupport 2 | { 3 | class Disconnect 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/TechSupport/GetConnectionStatus.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.TechSupport 2 | { 3 | class GetConnectionStatus 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Updates/Apply.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Updates 2 | { 3 | class Apply 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Updates/Download.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Updates 2 | { 3 | class Download 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Updates/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Updates 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Updates/GetRenewalDate.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Updates 2 | { 3 | class GetRenewalDate 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Call.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users 2 | { 3 | class Call 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/CallQueues/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.CallQueues 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/CallQueues/Login.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.CallQueues 2 | { 3 | class Login 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/CallQueues/Logout.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.CallQueues 2 | { 3 | class Logout 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/CallQueues/Pause.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.CallQueues 2 | { 3 | class Pause 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/CallQueues/Resume.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.CallQueues 2 | { 3 | class Resume 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/CallRuleSets/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.CallRuleSets 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/CallRuleSets/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.CallRuleSets 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/CallRuleSets/Rules/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.CallRuleSets.Rules 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/CallRuleSets/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.CallRuleSets 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/ConvergedDevices/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.ConvergedDevices 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/ConvergedDevices/Authorize.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.ConvergedDevices 2 | { 3 | class Authorize 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/ConvergedDevices/Deauthorize.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.ConvergedDevices 2 | { 3 | class Deauthorize 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/ConvergedDevices/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.ConvergedDevices 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/ConvergedDevices/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.ConvergedDevices 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/ConvergedDevices/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.ConvergedDevices 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Cookies/GetPassword.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Cookies 2 | { 3 | class GetPassword 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/CurrentCalls/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.CurrentCalls 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/CurrentCalls/SendToVoicemail.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.CurrentCalls 2 | { 3 | class SendToVoicemail 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/CurrentCalls/StartRecording.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.CurrentCalls 2 | { 3 | class StartRecording 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/CurrentCalls/StopRecording.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.CurrentCalls 2 | { 3 | class StopRecording 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/DeviceStatus/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.DeviceStatus 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/DistinctiveRing/Rules/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.DistinctiveRing.Rules 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/DistinctiveRing/Rules/Conditions/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.DistinctiveRing.Rules.Conditions 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/DistinctiveRing/Rules/Conditions/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.DistinctiveRing.Rules.Conditions 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/DistinctiveRing/Rules/Conditions/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.DistinctiveRing.Rules.Conditions 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/DistinctiveRing/Rules/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.DistinctiveRing.Rules 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/DistinctiveRing/Rules/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.DistinctiveRing.Rules 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/DistinctiveRing/Rules/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.DistinctiveRing.Rules 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/DistinctiveRing/Tones/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.DistinctiveRing.Tones 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/DistinctiveRing/Tones/GetFile.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.DistinctiveRing.Tones 2 | { 3 | class GetFile 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/DistinctiveRing/Tones/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.DistinctiveRing.Tones 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/DistinctiveRing/Tones/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.DistinctiveRing.Tones 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/DistinctiveRing/Tones/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.DistinctiveRing.Tones 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/ExtensionGroups/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.ExtensionGroups 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Extensions/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Extensions 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Fax/GetFile.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Fax 2 | { 3 | class GetFile 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/GetMyInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users 2 | { 3 | class GetMyInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Info/GetSoftwareVersion.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Info 2 | { 3 | class GetSoftwareVersion 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Localization/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Localization 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Localization/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Localization 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/ParkingLots/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.ParkingLots 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/PhoneOptions/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.PhoneOptions 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/PhoneOptions/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.PhoneOptions 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Phonebooks/DesiStrip/GetFile.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Phonebooks.DesiStrip 2 | { 3 | class GetFile 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Phonebooks/Entries/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Phonebooks.Entries 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Phonebooks/Entries/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Phonebooks.Entries 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Phonebooks/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Phonebooks 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Phonebooks/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Phonebooks 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Phones/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Phones 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Phones/IdleScreenImages/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Phones.IdleScreenImages 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Phones/IdleScreenImages/GetFile.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Phones.IdleScreenImages 2 | { 3 | class GetFile 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Phones/IdleScreenImages/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Phones.IdleScreenImages 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Phones/Reboot.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Phones 2 | { 3 | class Reboot 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Presence/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Presence 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Presence/Options/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Presence.Options 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Presence/Options/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Presence.Options 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Presence/Options/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Presence.Options 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Presence/Options/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Presence.Options 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Presence/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Presence 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Profile/ExtraNumbers/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Profile.ExtraNumbers 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Profile/ExtraNumbers/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Profile.ExtraNumbers 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Profile/ExtraNumbers/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Profile.ExtraNumbers 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Profile/ExtraNumbers/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Profile.ExtraNumbers 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Profile/Images/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Profile.Images 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Profile/Images/Attach.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Profile.Images 2 | { 3 | class Attach 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Profile/Images/GetFile.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Profile.Images 2 | { 3 | class GetFile 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Profile/Images/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Profile.Images 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Profile/Images/UpdateCrop.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Profile.Images 2 | { 3 | class UpdateCrop 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Timezone/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Timezone 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Voicemail/Forward.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Voicemail 2 | { 3 | class Forward 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Voicemail/GetFile.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Voicemail 2 | { 3 | class GetFile 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Voicemail/GetFolderList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Voicemail 2 | { 3 | class GetFolderList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Voicemail/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Voicemail 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Voicemail/GetQuota.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Voicemail 2 | { 3 | class GetQuota 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Voicemail/GetUsedSpace.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Voicemail 2 | { 3 | class GetUsedSpace 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Voicemail/MarkRead.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Voicemail 2 | { 3 | class MarkRead 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Voicemail/MarkUnread.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Voicemail 2 | { 3 | class MarkUnread 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Voicemail/Move.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Voicemail 2 | { 3 | class Move 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Voicemail/Play.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Voicemail 2 | { 3 | class Play 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/Voicemail/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.Voicemail 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/VoicemailGreetingTypes/Activate.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.VoicemailGreetingTypes 2 | { 3 | class Activate 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/VoicemailGreetingTypes/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.VoicemailGreetingTypes 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/VoicemailGreetings/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.VoicemailGreetings 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/VoicemailGreetings/GetFile.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.VoicemailGreetings 2 | { 3 | class GetFile 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/VoicemailGreetings/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.VoicemailGreetings 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/VoicemailGreetings/GetSettings.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.VoicemailGreetings 2 | { 3 | class GetSettings 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/VoicemailGreetings/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.VoicemailGreetings 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/VoicemailGreetings/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.VoicemailGreetings 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/Users/VoicemailGreetings/UpdateSettings.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Users.VoicemailGreetings 2 | { 3 | class UpdateSettings 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/AgentLogIn/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.AgentLogIn 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/AgentLogIn/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.AgentLogIn 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/AgentLogIn/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.AgentLogIn 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/AgentLogIn/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.AgentLogIn 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/AgentLogOut/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.AgentLogOut 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/AgentLogOut/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.AgentLogOut 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/AgentLogOut/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.AgentLogOut 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/AgentLogOut/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.AgentLogOut 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/CallParking/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.CallParking 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/CallParking/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.CallParking 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/CallParking/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.CallParking 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/CallParking/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.CallParking 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/CallQueues/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.CallQueues 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/CallQueues/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.CallQueues 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/CallQueues/Members/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.CallQueues.Members 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/CallQueues/Members/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.CallQueues.Members 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/CallQueues/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.CallQueues 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/CallQueues/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.CallQueues 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/DialTone/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.DialTone 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/DialTone/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.DialTone 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/DialTone/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.DialTone 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Directory/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Directory 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Directory/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Directory 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Directory/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Directory 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Directory/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Directory 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/FeatureCodes/CallMonitoring/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.FeatureCodes.CallMonitoring 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/FeatureCodes/CallMonitoring/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.FeatureCodes.CallMonitoring 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/FeatureCodes/CallMonitoring/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.FeatureCodes.CallMonitoring 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/FeatureCodes/CallMonitoring/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.FeatureCodes.CallMonitoring 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/FeatureCodes/DirectedPickup/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.FeatureCodes.DirectedPickup 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/FeatureCodes/DirectedPickup/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.FeatureCodes.DirectedPickup 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/FeatureCodes/DirectedPickup/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.FeatureCodes.DirectedPickup 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/FeatureCodes/DirectedPickup/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.FeatureCodes.DirectedPickup 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/FeatureCodes/Fax/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.FeatureCodes.Fax 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/FeatureCodes/Fax/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.FeatureCodes.Fax 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/FeatureCodes/Fax/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.FeatureCodes.Fax 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/FeatureCodes/Fax/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.FeatureCodes.Fax 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/FeatureCodes/GoToVoicemail/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.FeatureCodes.GoToVoicemail 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/FeatureCodes/GoToVoicemail/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.FeatureCodes.GoToVoicemail 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/FeatureCodes/GoToVoicemail/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.FeatureCodes.GoToVoicemail 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/FeatureCodes/PersonalIntercom/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.FeatureCodes.PersonalIntercom 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/FeatureCodes/PersonalIntercom/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.FeatureCodes.PersonalIntercom 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/FeatureCodes/PersonalIntercom/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.FeatureCodes.PersonalIntercom 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/FeatureCodes/PersonalIntercom/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.FeatureCodes.PersonalIntercom 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/GetVoicemailInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions 2 | { 3 | class GetVoicemailInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/GroupPickup/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.GroupPickup 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/GroupPickup/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.GroupPickup 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/GroupPickup/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.GroupPickup 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/GroupPickup/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.GroupPickup 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/IVR/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.IVR 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/IVR/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.IVR 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/IVR/Menus/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.IVR.Menus 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/IVR/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.IVR 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/IVR/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.IVR 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Intercom/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Intercom 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Intercom/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Intercom 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Intercom/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Intercom 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Intercom/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Intercom 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/MeetMeConference/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.MeetMeConference 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/MeetMeConference/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.MeetMeConference 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/MeetMeConference/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.MeetMeConference 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/MeetMeConference/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.MeetMeConference 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/Analog/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones.Analog 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/Analog/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones.Analog 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/Analog/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones.Analog 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/AttachImage.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones 2 | { 3 | class AttachImage 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/Bulk/Upload.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones.Bulk 2 | { 3 | class Upload 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/OutgoingCallRules/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones.OutgoingCallRules 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/OutgoingCallRules/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones.OutgoingCallRules 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/SIP/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones.SIP 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/SIP/BulkUpdate.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones.SIP 2 | { 3 | class BulkUpdate 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/SIP/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones.SIP 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/SIP/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones.SIP 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/Template/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones.Template 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/Template/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones.Template 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/Template/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones.Template 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/Template/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones.Template 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/Template/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones.Template 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/Virtual/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones.Virtual 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/Virtual/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones.Virtual 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Phones/Virtual/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Phones.Virtual 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Settings/CustomSettings/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Settings.CustomSettings 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Settings/CustomSettings/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Settings.CustomSettings 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Settings/CustomSettings/GetList.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Settings.CustomSettings 2 | { 3 | class GetList 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Settings/CustomSettings/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Settings.CustomSettings 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Settings/CustomSettings/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Settings.CustomSettings 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/Settings/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.Settings 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/SimpleConferenceRoom/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.SimpleConferenceRoom 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/SimpleConferenceRoom/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.SimpleConferenceRoom 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/SimpleConferenceRoom/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.SimpleConferenceRoom 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/SimpleConferenceRoom/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.SimpleConferenceRoom 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/VoicemailAccess/Add.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.VoicemailAccess 2 | { 3 | class Add 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/VoicemailAccess/GetInfo.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.VoicemailAccess 2 | { 3 | class GetInfo 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/VoicemailAccess/Remove.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.VoicemailAccess 2 | { 3 | class Remove 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/_Unimplemented/extensions/VoicemailAccess/Update.cs: -------------------------------------------------------------------------------- 1 | namespace Switchvox.Extensions.VoicemailAccess 2 | { 3 | class Update 4 | { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /SwitchvoxAPI/todo.txt: -------------------------------------------------------------------------------- 1 |  2 | make extension.status an enum instead of an int. what are the various values we can have, and what do they mean? 3 | basecallqueuestatusmember - all properties with getters/setters 4 | also logintime/pausedtime should be a datetime or timespan? 5 | reimplement callduration in basecallqueuestatusmember 6 | sounds like this is only part of callqueuetodaysstatusmember 7 | search for all todo items 8 | add required parameters for calling the extensions.search method 9 | implement t2 template versioning 10 | change version to 0.3 11 | after we do a commit, move the methods folder to under the request folder 12 | 13 | -- 14 | 15 | add xml docs 16 | create extensions of all phone types (directory, agent login, etc), make a call and add the missing extensiontypes 17 | CallQueueStatusStatus.loginstatus can be an enum --------------------------------------------------------------------------------