Class MessagingAgent
Proxy class for the Messaging Agent Used when communicating remote using WebServices. Avoid using directly. Use the AgentFactory to create the proxy instead.
Online Restricted: This agent is not available in Online by default. Access must be requested specifically when app is registered.Inherited Members
Namespace: SuperOffice.CRM.Services
Assembly: SuperOffice.Services.Implementation.dll
Syntax
public class MessagingAgent : IMessagingAgent, IAgent
Constructors
MessagingAgent(IIncomingMessageImplementation, IMessageDeliveryStatusImplementation, IOutgoingMessageImplementation, IProviderInfoImplementation, ISoRequestItemsAccessor)
Proxy class for the Messaging Agent Used when communicating remote using WebServices. Avoid using directly. Use the AgentFactory to create the proxy instead.
Online Restricted: This agent is not available in Online by default. Access must be requested specifically when app is registered.Declaration
public MessagingAgent(IIncomingMessageImplementation incomingMessageImplementation, IMessageDeliveryStatusImplementation messageDeliveryStatusImplementation, IOutgoingMessageImplementation outgoingMessageImplementation, IProviderInfoImplementation providerInfoImplementation, ISoRequestItemsAccessor accessor)
Parameters
| Type | Name | Description |
|---|---|---|
| IIncomingMessageImplementation | incomingMessageImplementation | |
| IMessageDeliveryStatusImplementation | messageDeliveryStatusImplementation | |
| IOutgoingMessageImplementation | outgoingMessageImplementation | |
| IProviderInfoImplementation | providerInfoImplementation | |
| ISoRequestItemsAccessor | accessor |
MessagingAgent(IIncomingMessageImplementation, IMessageDeliveryStatusImplementation, IOutgoingMessageImplementation, IProviderInfoImplementation, ISoRequestItemsAccessor, IDebugUser, IServiceCallsRepository, IScriptingConfiguration, IOnlineConfiguration)
Proxy class for the Messaging Agent Used when communicating remote using WebServices. Avoid using directly. Use the AgentFactory to create the proxy instead.
Online Restricted: This agent is not available in Online by default. Access must be requested specifically when app is registered.Declaration
public MessagingAgent(IIncomingMessageImplementation incomingMessageImplementation, IMessageDeliveryStatusImplementation messageDeliveryStatusImplementation, IOutgoingMessageImplementation outgoingMessageImplementation, IProviderInfoImplementation providerInfoImplementation, ISoRequestItemsAccessor accessor, IDebugUser debugUser, IServiceCallsRepository serviceCallsRepository, ConfigFile.IScriptingConfiguration scriptingConfiguration, ConfigFile.IOnlineConfiguration onlineConfiguration)
Parameters
| Type | Name | Description |
|---|---|---|
| IIncomingMessageImplementation | incomingMessageImplementation | |
| IMessageDeliveryStatusImplementation | messageDeliveryStatusImplementation | |
| IOutgoingMessageImplementation | outgoingMessageImplementation | |
| IProviderInfoImplementation | providerInfoImplementation | |
| ISoRequestItemsAccessor | accessor | |
| IDebugUser | debugUser | |
| IServiceCallsRepository | serviceCallsRepository | |
| IScriptingConfiguration | scriptingConfiguration | |
| IOnlineConfiguration | onlineConfiguration |
Methods
CreateMessageAsync(IncomingMessage, CancellationToken)
Create a new message and insert it in the message queue. (inbox)
Declaration
public Task CreateMessageAsync(IncomingMessage incomingMessage, CancellationToken cancellationToken = default)
Parameters
| Type | Name | Description |
|---|---|---|
| IncomingMessage | incomingMessage | |
| CancellationToken | cancellationToken | This operation cannot be cancelled; the cancellationToken parameter is ignored |
Returns
| Type | Description |
|---|---|
| Task |
GetDeliveryStatusAsync(int[], CancellationToken)
Get delivery status
Declaration
public Task<MessageDeliveryStatus[]> GetDeliveryStatusAsync(int[] messagingIds, CancellationToken cancellationToken = default)
Parameters
| Type | Name | Description |
|---|---|---|
| int[] | messagingIds | Array of messaging ids. |
| CancellationToken | cancellationToken | This operation cannot be cancelled; the cancellationToken parameter is ignored |
Returns
| Type | Description |
|---|---|
| Task<MessageDeliveryStatus[]> |
GetPluginsAsync(CancellationToken)
Proxy class for the Messaging Agent Used when communicating remote using WebServices. Avoid using directly. Use the AgentFactory to create the proxy instead.
Online Restricted: This agent is not available in Online by default. Access must be requested specifically when app is registered.Declaration
public Task<ProviderInfo[]> GetPluginsAsync(CancellationToken cancellationToken = default)
Parameters
| Type | Name | Description |
|---|---|---|
| CancellationToken | cancellationToken | This operation cannot be cancelled; the cancellationToken parameter is ignored |
Returns
| Type | Description |
|---|---|
| Task<ProviderInfo[]> |
SendMessagesAsync(string, OutgoingMessage[], CancellationToken)
Send an array of messages
Declaration
public Task<MessageDeliveryStatus[]> SendMessagesAsync(string plugin, OutgoingMessage[] outgoingMessages, CancellationToken cancellationToken = default)
Parameters
| Type | Name | Description |
|---|---|---|
| string | plugin | Name of plugin to use. |
| OutgoingMessage[] | outgoingMessages | Array of outgoing messages you want to send. |
| CancellationToken | cancellationToken | This operation cannot be cancelled; the cancellationToken parameter is ignored |
Returns
| Type | Description |
|---|---|
| Task<MessageDeliveryStatus[]> | Array of MessageDeliveryStatus. Length of the array is equal to the number of outgoing messages. |
SendMessagesWithConfigAsync(string, OutgoingMessage[], StringDictionary, CancellationToken)
Send an array of messages using given config
Declaration
public Task<MessageDeliveryStatus[]> SendMessagesWithConfigAsync(string plugin, OutgoingMessage[] outgoingMessages, StringDictionary config, CancellationToken cancellationToken = default)
Parameters
| Type | Name | Description |
|---|---|---|
| string | plugin | Name of plugin to use. |
| OutgoingMessage[] | outgoingMessages | Array of outgoing messages you want to send. |
| StringDictionary | config | Config values used by the plugin. |
| CancellationToken | cancellationToken | This operation cannot be cancelled; the cancellationToken parameter is ignored |
Returns
| Type | Description |
|---|---|
| Task<MessageDeliveryStatus[]> | Array of MessageDeliveryStatus. Length of the array is equal to the number of outgoing messages. |
SetDeliveryStatusAsync(string, string, int, string, CancellationToken)
Set or change the delivery status on an outgoing messsage.
Declaration
public Task SetDeliveryStatusAsync(string plugin, string externalMessageId, int status, string statusDescription, CancellationToken cancellationToken = default)
Parameters
| Type | Name | Description |
|---|---|---|
| string | plugin | Name of plugin |
| string | externalMessageId | External message id known to plugin. |
| int | status | Delivery status |
| string | statusDescription | String describing delivery status. |
| CancellationToken | cancellationToken | This operation cannot be cancelled; the cancellationToken parameter is ignored |
Returns
| Type | Description |
|---|---|
| Task |