Class MessagingServiceProvider
- Namespace
- ArcanaDevelopment.adTempus.Client
- Assembly
- ArcanaDevelopment.adTempus.Client.dll
Contains settings for a Messaging Service Provider (e.g., email server).
public sealed class MessagingServiceProvider : ADTIndependentObject
- Inheritance
-
objectMessagingServiceProvider
Properties
AuthenticationType
Specifies the type of authentication to use for this provider.
public int AuthenticationType { get; set; }
Property Value
- int
Remarks
The range of valid values depend on the type of provider.
<ul><li>For SMTP notification, use the values from <xref href="ArcanaDevelopment.adTempus.Shared.SMTPAuthenticationType" data-throw-if-not-resolved="false"></xref></li></ul>
- See Also
ClassID
The Class ID for the object
[IgnoreDataMember]
public override ClassID ClassID { get; }
Property Value
ClassKeyName
The key name for the class.
public override string ClassKeyName { get; }
Property Value
- string
Remarks
This name the name used by adTempus to identify the class and is intended for programmatic use only. Use the ClassName for a user-friendly name.
Enabled
Determines whether this provider is enabled
public bool Enabled { get; set; }
Property Value
- bool
Remarks
When a provider is disabled any operations that target it will be failed
IsDependent
Indicates whether the object is a dependent of (owned by) another object
[IgnoreDataMember]
public override bool IsDependent { get; }
Property Value
- bool
Remarks
An independent object (IsDependent is false) is an object that can exist on its own without being part of another object. For example, Jobs, Job Groups, etc.
A dependent object (IsDependent is true) is a part of another object. For example, a JobStep cannot exist independently of a Job, so the JobStep is dependent.
Dependent objects cannot be directly fetched from the server: they are only fetched as part of the object they belong to. They also cannot be saved or deleted independently: they are automatically saved or deleted when the owning object is saved or deleted.
MailFetchProtocol
The protocol used when MessagingServiceType is IncomingEmail
public MailFetchProtocol? MailFetchProtocol { get; set; }
Property Value
MaxMessageLength
The maximum length for a message
public int MaxMessageLength { get; set; }
Property Value
- int
Remarks
The behavior depends on the MessagingServiceType:
| Messages longer than MaxMessageLength are truncated |
| Messages longer than MaxMessageLength are truncated if SplitLongMessages is false, or split into up to MaxMessages if SplitLongMessages is true. |
MaxMessages
The maximum number of message parts to send when an SMPP message is broken into parts based on MaxMessageLength
public int MaxMessages { get; set; }
Property Value
- int
MessagingServiceType
The type of messaging service this service provides
public MessagingServiceType MessagingServiceType { get; set; }
Property Value
Name
The display name for the provider
public string Name { get; set; }
Property Value
- string
OAuth2Provider
The service that OAuth2 authentication is being performed against. Must be set to one of the ArcanaDevelopment.OAuthConnector.OAuth2ProviderNames values.
public string OAuth2Provider { get; set; }
Property Value
- string
Remarks
Requires ServerVersion 5 or higher.
OAuth2TokenSet
public bool OAuth2TokenSet { get; }
Property Value
- bool
PasswordSet
Indicates whether a password has been set for the provider
public bool PasswordSet { get; }
Property Value
- bool
- See Also
Priority
The priority for this provider
public int Priority { get; set; }
Property Value
- int
Remarks
Use the Priority to set the order in which providers are tried when multiple providers can be used for an operation. For example, if there are several SMTP servers defined, adTempus will try them in order of Priority until the message can be sent successfully.
Protocol
The protocol to use
public string Protocol { get; set; }
Property Value
- string
Remarks
Values provider-type dependent.
No Protocol values are currently defined.
ReturnAddress
The return address to use when sending SMTP messages
public string ReturnAddress { get; set; }
Property Value
- string
Remarks
This must be a valid email address and most mail servers will validate it to ensure it is a valid email address for the account you are attempting to send mail from.
SenderName
The display name to use for the message sender
public string SenderName { get; set; }
Property Value
- string
Remarks
If this is not specified a default value of "adTempus on computername" is used.
ServerAddress
The name or IP address of the server
public string ServerAddress { get; set; }
Property Value
- string
ServerPort
The port number to connect to
public int ServerPort { get; set; }
Property Value
- int
Remarks
Set to 0 to use the default for the service type
SplitLongMessages
Determines whether messages that exceed MaxMessageLength are split into shorter messages
public bool SplitLongMessages { get; set; }
Property Value
- bool
Remarks
See Remarks under MaxMessageLength
UserID
The user ID for connecting to this service
public string UserID { get; set; }
Property Value
- string
Methods
GetObjectDescription()
Gets a description of the object's key settings.
protected override string GetObjectDescription()
Returns
- string
Remarks
This method is called by GetDescription() to get a user-friendly description of the object (such as its key settings) for display to the user. The description should contain enough information to distinguish this object from others of the same class.
SetOAuth2Token(string)
public void SetOAuth2Token(string value)
Parameters
| Name | Type | Description |
|---|---|---|
value |
string |
SetPassword(string)
Sets the password for the provider
public void SetPassword(string value)
Parameters
| Name | Type | Description |
|---|---|---|
value |
string | The new password |
Remarks
The password can only be set; it cannot be retrieved. Use PasswordSet to determine whether a password has been set.
Test(string)
Tests the settings to determine whether a connection can be made
public MessageCollection Test(string testData)
Parameters
| Name | Type | Description |
|---|---|---|
testData |
string | The test data to use. See Remarks |
Returns
- MessageCollection
A collection of Messages indicating the results of the test. If the test succeeds, the collection will contain a single message with severity Informational and HighestSeverity() will return MessageType.Informational. If the test fails the collection will contain one or more messages with MessageType.Error describing the error(s).
Remarks
For outgoing providers (providers that send messages) Test will attempt to connect to the server and send a test message using the testData as the
message body.
For inbound providers (providers that fetch email) Test attempts to connect to the server and list the messages.
WriteToConfigurationReport(IADTObjectConfigurationReportWriter)
Writes the object and any contained objects to a configuration report
public override void WriteToConfigurationReport(IADTObjectConfigurationReportWriter reportBuilder)
Parameters
| Name | Type | Description |
|---|---|---|
reportBuilder |
IADTObjectConfigurationReportWriter | The report builder to write the object to. |
Inherited Members
- ADTIndependentObject.Refresh()
- ADTIndependentObject.Revert()
- ADTIndependentObject.Save()
- ADTIndependentObject.Save(out MessageCollection)
- ADTIndependentObject.SaveWithAuditOrSnapshot(ChangeLogParameters)
- ADTIndependentObject.SaveWithAuditOrSnapshot(ChangeLogParameters, out MessageCollection)
- ADTIndependentObject.Delete()
- ADTIndependentObject.DeleteWithAuditOrSnapshot(ChangeLogParameters)
- ADTIndependentObject.GetSecurityDescriptor()
- ADTIndependentObject.ReplaceObjectReferences(string[], bool, int, IEnumerable<OID>, ADTObject, bool, ChangeLogParameters)
- ADTIndependentObject.GetObjectReferences(string[], bool, int)
- ADTIndependentObject.GetObjectReferences(string[], bool, int, OID[])
- ADTObject.LastModified
- ADTObject.CreationTimestamp
- ADTObject.FromController
- ADTObject.CustomProperties
- ADTObject.Description
- ADTObject.DescriptionTextType
- ADTObject.OID
- ADTObject.BindingDescription
- ADTObject.ToString()
- ADTObject.ParentObject
- ADTObject.CanPerform(SecurityPermission)
- ADTObject.Duplicate()
- ADTObject.DataContext
- ADTObject.AccessMask
- ADTObject.Validate(MessageCollection)
- ADTObject.SupportedSecurityActions
- ADTObject.SupportedSecurityInheritanceOptions
- ADTObject.GetTopLevelOwner()
- ADTObject.GetConfigurationReport()
- ADTObject.GetConfigurationReport(bool)
- ADTObject.IsReadOnly
- ObjectBase.IsDirty
- ObjectBase.IsNew
- ObjectBase.IsStub
- ObjectBase.ClassName
- ObjectBase.GetDescriptionWithClassName()
- ObjectBase.GetDescription()
- ObjectBase.BeginEdit()
- ObjectBase.BeginEdit(UndoLevelAction)
- ObjectBase.CommitEdit(Guid)
- ObjectBase.CommitEdit()
- ObjectBase.UndoEdit()
- ObjectBase.UndoEdit(Guid)