Extension Interface

Represents the set of configuration settings for a single, physical extension.

Definition

Namespace: TCX.Configuration
Assembly: 3cxpscomcpp2 (in 3cxpscomcpp2.dll) Version: 20.0.1
C#
public interface Extension : DN, 
	IOMStorable, IOMRemovable, IOMSnapshot, IEquatable<Object>, 
	ICalendarHolder, IDisposable, IEquatable<DN>
Implements
IDisposable, IEquatableObject, IEquatableDN, DN, ICalendarHolder, IOMRemovable, IOMSnapshot, IOMStorable

Properties

AddressNumberOrData0 Additional address info field 0
(Inherited from DN)
AddressNumberOrData1 Additional address info field 1
(Inherited from DN)
AddressNumberOrData2 Additional address info field 2
(Inherited from DN)
AddressNumberOrData3 Additional address info field 3
(Inherited from DN)
AddressNumberOrData4 Additional address info field 4
(Inherited from DN)
AddressNumberOrData5 Additional address info field 5
(Inherited from DN)
AddressNumberOrData6 Additional address info field 6
(Inherited from DN)
AddressNumberOrData7 Additional address info field 7
(Inherited from DN)
AddressNumberOrData8 Additional address info field 8
(Inherited from DN)
AddressNumberOrData9 Additional address info field 9
(Inherited from DN)
AuthID SIP Phone Authentication ID.
AuthPassword SIP Phone Authentication password.
BreakTime Overrides dummy implementation provided in DN and provides storage for the break time schedule.
BreakTimeRouteDN may support time based redirection of the incoming calls On break time, the calls will be sent to the destionation specified here. The default destionationis ProceedWithNoExceptions
(Inherited from DN)
BreakTimeRoutePrompt prompt for break time route
(Inherited from DN)
BreakTimeRoutePromptEnabled Break time route prompt playback enabled
(Inherited from DN)
BusyDetection Configures the busy detection mechanism to use to determine whether the phone can accept a call or not. This setting is superseded by CurrentProfile.BusyDetection which is defining timeout when Extension is in specified state.
CalendarHours Object which represent CalendarHoursType
(Inherited from ICalendarHolder)
CalendarHoursType Schedule hours can be changed without modification of the hours set. We don't need to update set of hours ranges each time when we update type of schedule
(Inherited from ICalendarHolder)
ContactImage This url can be used to get image of the specific contact
(Inherited from DN)
CurrentProfile Rules from this profile will be applied after OverrideProfile but before suitable for dynamic part of forwarding rules (f.e. may depend on current status of user)
CurrentProfileOverride This profile temporarly overrides CurrentProfile Overriding expires at the time (must be set as UTC time) specified by OverrideExpiresAt Can be set only after Extension is put into persistent storage (Save)
DeliverAudio Controls whether the PABX Media Server should perform audio delivery to this extension.
DialCodePrefix [For future use] This DN is dialcode prefix.
(Inherited from DN)
EmailAddress E-mail address of user for this extension.
Enabled Determines whether this extension is active (enabled).
EnableSRTP Controls whether the PABX Media Server should accept/propose secure RTP media stream from/to this extension.
Obsolete.
FallbackProfile Rules from this profile will be applied if there is no any overriding rules in OverrideProfile and falback (default) rules for extension.
Obsolete.
FirstName First name of user for this extension.
ForwardingRules The list of forwarding rules preconfigured for this extension. Those rules are applied before the status profile. Effectivelly, it is OverrideProfile previously used to store exception rules.

read access: returns set of preconfigured ExtensionRuleSave method applies new set of rules to extension.

write access: new set of rules for extension.

FwdProfiles List of forwarding profiles configured for this extension Modification of the profiles which are assigned to the extension is applied by Extension.Save() method.
GroupMembership The collection of GroupMember objects for all (Group) to which this DN belongs.
(Inherited from DN)
Groups The collection of administrative Groups (Group) to which this DN belongs.
(Inherited from DN)
Obsolete.
HasAttached Indicates that the object has attached data for saving transaction
(Inherited from IOMSnapshot)
HidePresence Determines whether presence of this extension should be hidden.
HolidayInboundReferences Array of ExternalLineRule objects where this DN is referenced in HolidaysDestination
(Inherited from DN)
HolidaysActivity specifies activity of schedule during holidays
(Inherited from ICalendarHolder)
HolidaysRouteDN may support time based redirection of the incoming calls On holidays, the calls will be sent to the destionation specified here. The default destionationis ProceedWithNoExceptions
(Inherited from DN)
HolidaysRoutePrompt Prompt for Holiday route
(Inherited from DN)
HolidaysRoutePromptEnabled Holiday route prompt playback enabled
(Inherited from DN)
Hours Time schedule of when object is active. Interpretation of this data depends on the type of object. It can be OfficeTime, the time when specific routing rule is active etc.
(Inherited from ICalendarHolder)
ID each object has unique ID. It is the same as the value returned by GetHashCode. (legacy) new object has ID=0. After successful call to save snapshot gets persistent ID.
(Inherited from IOMSnapshot)
InOfficeInboundReferences Array of ExternalLineRule objects where this DN is referenced in OfficeHoursDestination
(Inherited from DN)
Internal Controls whether calls from this extension can be made to external lines.
IsOverrideActiveNow Returns true if CurrentProfileOverride is active now. (used DateTime.UtcNow to check time specified by OverrideExpiresAt) Overriding expires at the time (must be set as UTC time) specified by OverrideExpiresAt
IsRegistered cumulative registration status. true - if at least one device is registered false otherwise
(Inherited from DN)
LastName Last name of user for this extension.
NoAnswerTimeout Configures the number of seconds the phone rings before the call is considered as 'no answer' and the no answer forwarding rule applies.
This setting is superseded by CurrentProfile.NoAnswerTimeout which is defining timeout when Extension is in specified state.
Number The number (physical or virtual) associated with this DN entity. Effectivelly it is internal unique identifier of the entity
(Inherited from DN)
OfficeHoursRouteDN may support time based redirection of the incoming calls At office time, the calls will be sent to the destionation specified here. The default destionationis ProceedWithNoExceptions
(Inherited from DN)
OfficeHoursRoutePrompt Prompt for office route (when no handled)
(Inherited from DN)
OfficeHoursRoutePromptEnabled Pffice hours route prompt playback enabled
(Inherited from DN)
OutboundCallerID The Outbound Caller ID for this extension.
OutOfOfficeHoursRouteDN may support time based redirection of the incoming calls At out of office time, the calls will be sent to the destionation specified here. The default destionationis ProceedWithNoExceptions
(Inherited from DN)
OutOfOfficeHoursRoutePrompt Prompt for out of office route
(Inherited from DN)
OutOfOfficeHoursRoutePromptEnabled Out of office hours route prompt playback enabled
(Inherited from DN)
OutOfOfficeInboundReferences Array of ExternalLineRule objects where this DN is referenced in OutOfOfficeHoursDestination
(Inherited from DN)
OverrideExpiresAt returns DateTime(0, Utc) if time is not specified or invalid The overriding expires at the time specified by this property (must be set as Utc time) specified by CurrentProfileOverride
OverrideProfile Rules from this profile will be applied before rules from CurrentProfile and suitable for static black/white list
Obsolete.
PhoneBookEntries Collection of phone book entries attached to the DN
(Inherited from DN)
PhoneDevices Represents the set of phone devices associated with this extension.
Properties Collection of the custom properties
(Inherited from DN)
QueueMembership DN participation as a queue agent
(Inherited from DN)
QueueStatus Controls whether this extension is currently participating in queues.
RecordCalls Controls whether calls from this extension are recorded.
RemovePrefixOnDelivery [For future use] Only if DialCodePrefix == true, Call Manager must remove prefix when send a call to DN (or SendTo
(Inherited from DN)
SendTo [For future use] This entity is shortcut to another destination
(Inherited from DN)
SIPID Extension's SIP ID.
SRTPMode Supersedes EnableSRTP. Allows to set optional and mandatory usage of SRTP
SupportReinvite Determines whether the phone connected to this extension supports re-invites.
SupportReplaces Determines whether the phone connected to this extension supports the 'replaces' SIP feature.
SystemDN If set to true,the DN is integral part of the system core. DN cannot be removed. Delete will fail.
(Inherited from DN)
UserStatus Controls whether the user is Available or Away. This setting is superseded by CurrentProfile.
VMEmailOptions Voice Mail e-mail option.
VMEnabled Controls whether Voice Mail is enabled for this extension.
VMPIN User's PIN Number to access his Voice Mail.
VMPlayCallerID Controls whether the Caller ID is played back when the user listens to his Voice Mail.
VMPlayMsgDateTime Determines whether the Voice Mail plays back the date and time to the user, and if yes, in which format.
VoiceMailBox voice mail box information see VMBInformation
(Inherited from DN)

Methods

AddCustomFwdProfile For future use. All versions of 3CX phone system including v15 support only predefined set of status profiles defined by DefaultProfiles this method allows to add custom status with free name to extension configuration.
AttachOnSave(IEnumerableIOMSnapshot) This method allows to add other object updates to the main object saving transaction
(Inherited from IOMSnapshot)
AttachOnSave(IOMSnapshot) This method allows to add other object updates to the saving transaction of main object
(Inherited from IOMSnapshot)
CheckExceptions Checks whether the caller is in the list of the exceptions.
CheckForwarding Checks whether the current status is forwarding calls to another destination. This check is only for status profile. CheckExceptions(DateTime, String, DN) returns destination applied by exceptions
Clone Makes fresh snapshot of the object without modifications
(Inherited from IOMSnapshot)
CreateForwardingRule Creates a new forwarding rule for this extension.
CreateFwdProfile creates new forwarding profile object for the extension.
CreatePhoneBookEntry Creates a new PhoneBookEntry object attached to the DN (private phone book)
(Inherited from DN)
CreatePhoneDevice Creates a new phone device association for this extension.
Delete Delete object from configuration database.
(Inherited from IOMRemovable)
DeleteOnSave(IEnumerableIOMSnapshot) Allows to remove other objects as a part of the main object saving transaction.
(Inherited from IOMSnapshot)
DeleteOnSave(IOMSnapshot) Allows to remove other objects as a part of the main object saving transaction.
(Inherited from IOMSnapshot)
DeleteProperty Removes property form list of DN properties. Changes are made to local cache. To store them into persistent storage, call Save method.
(Inherited from DN)
FindContacts Personal phonebook lookup. Returns array of contacts matching specified caller id as described in FindContacts(String, UInt32)
(Inherited from DN)
GetActiveConnections Returns a set of ActiveConnection objects currently assotiated to this DN
(Inherited from DN)
GetHashCode Hash code is "record" identifier. So all snapshots of the object has the same hash.
(Inherited from IOMSnapshot)
GetPhoneBookEntries Collection of phone book entries attached to the DN
(Inherited from DN)
GetProperties The collection of custom properties for this DN.
(Inherited from DN)
GetPropertyByName(String) Returns a particular DN property given its name from persistent storage, or if not found.
(Inherited from DN)
GetPropertyByName(String, Boolean) Returns a particular DN property given its name from persistent storage or from local cache, or if not found.
(Inherited from DN)
GetPropertyValue returns actual value of named property in snapshot. returns values which was modified using SetProperty/DeleteProperty
(Inherited from DN)
GetQueues The set of Queue to which this DN belongs.
(Inherited from DN)
GetRegistrarContacts Returns a set of contacts currently assotiated with this DN It is recommended to use GetRegistrarContactsEx which provides detailed information about all contacts associated with DN
(Inherited from DN)
GetRegistrarContactsEx Returns a set of RegistrarRecord currently assotiated with DN
(Inherited from DN)
GetRingGroups The set of RingGroup to which this DN belongs.
(Inherited from DN)
GetTenant Returns the Tenant to which this DN object belongs.
(Inherited from DN)
Refresh Reverts all modifications (if any) and reloads object from configuration/realtime storage
(Inherited from IOMStorable)
ResetCurrentProfileOverride Resets override of current profile.
ResetPrimaryGroup Resets current primary group.
(Inherited from DN)
Save Commits the changes. This method inserts new or update existing object in persistent storage.
(Inherited from IOMStorable)
SetProperty(String, String) Adds new or updates existing property of DN, where PropertyType is String, and description is empty string. Changes are made to local cache. To store them into persistent storage, call Save method.
(Inherited from DN)
SetProperty(String, String, PropertyType, String) Adds new or updates existing property of DN. Changes are made to local cache. To store them into persistent storage, call Save method.
(Inherited from DN)
ToString Brief description of object in term of Object model. default implementation is ToString. Concrete implementation may be more verbose.
(Inherited from IOMSnapshot)

Extension Methods

BargeInCallbackAsync Call barge-in from the specific Extension. All devices of the Extension will be called.
(Defined by CallControlAPI)
Deserialize deserializes object and remenber repeatlist. object can be saved
(Defined by SerializationExtension)
GetSerializableProperties Returns list of properties which are require serialization
(Defined by SerializationExtension)
GetTimeDestinationOverride providing full information about current time and time based routing destination for DN
(Defined by CommonRoutingExtensions)
IsBreak Is now the breaktime for dn?
(Defined by CommonRoutingExtensions)
IsHoliday Is dnTime at the holiday for dn?
(Defined by CommonRoutingExtensions)
IsOffice Is now the office time for dn?
(Defined by CommonRoutingExtensions)
IsOutOfOffice Is now the out of office time for dn?
(Defined by CommonRoutingExtensions)
MakeCallAsync
(Defined by CallControlAPI)
Now Obtaining current time of the DN
(Defined by CommonRoutingExtensions)
OMDelete Apply update of the specific snapshot. virtually any object may be updated even those which are not supporting IOMStorable interface.
(Defined by CollectionTransactionsHelper)
OMSave Apply update of the specific snapshot. virtually any object may be updated even those which are not supporting IOMStorable interface.
(Defined by CollectionTransactionsHelper)
PickupCallbackAsync Redirects replaces ringing replace_connection with the callback to the sendto device
(Defined by CallControlAPI)
SerializeObject Deserializer for IOMSnapshot
(Defined by SerializationExtension)
SerializeProperty returns false if there are no enough information at the moment and it should be repeated after after all objects will be restored. Typical case is forward reference to the DN object.
(Defined by SerializationExtension)
ServiceCallAsyncServiceCallAsync(RegistrarRecord, RPCParameters)
(Defined by CallControlAPI)
TryDeserializeProperty returns false if there are no enough information at the moment and it should be repeated after after all objects will be restored. Typical case is forward reference to the DN object.
(Defined by SerializationExtension)

See Also