Configure a Subscriber

A subscriber receives messages from a configured publisher and forwards the message to a configured endpoint for processing by an external system. This type of subscriber relies on a custom DLL that forwards the message to an external system. An alternative subscriber type for ActiveMQ connections is also available. See Configure an ActiveMQ Subscriber.

Note: Recommended practice for all adaptors: Copy IntegrationHub.dll and IntegrationHub.Interfaces.API.dll from the IMS Integration Hub installation folder to the folder with the adaptor DLL before configuring the subscriber. (Configuring the adaptor path of the subscriber without having these DLLs in the same folder causes an error that can only be resolved by deleting and recreating the subscriber.)

Recommended practice for adaptors used with MineMarket:

  1. Place the adaptor DLL in the MineMarket installation folder.
  2. Copy IntegrationHub.dll and IntegrationHub.Interfaces.API.dll from the IMS Integration Hub installation folder to the MineMarket installation folder before configuring the subscriber.
  3. In the following configuration, set Load Adaptor In Own Application Domain to True.

Activity Steps

  1. On the toolbar, click New Subscriber.

    A subscriber is added to the Integration » Subscribers node in the Configuration Explorer.

  2. Double-click the subscriber node.

    The Subscriber screen displays the connection details for the subscriber.

  3. Complete the following fields.
    • Name
    • Retry Count—Number of times IMS Integration Hub should try to push a message to the subscriber before stopping. Default: 1.
    • Retry Timeout—The amount of time that IMS Integration Hub waits after a failed attempt to push a message to a subscriber before retrying. Default: 30 seconds.
    • B2MML Message Type—The name of the related message type in the B2MML schema; for example, NotifyWorkExecutedEvent. For more about B2MML subscribers, see IMS Integration Hub B2MML Configuration.

      Note: Separate subscribers must be configured for each B2MML message type.

    • Error Endpoint—The name of the Windows Communication Framework (WCF) endpoint configured to receive error messages. Errors that occur on the subscriber during message processing are sent to the WCF endpoint when the subscriber enters the 'given up' state based on the configuration of the subscriber.

      Important: This field is optional but recommended for B2MML integration. If an endpoint is specified, the matching endpoint and binding must be configured and enabled in DistributionManager.Service.exe.config and DistributionManager.Server.exe.config. See the IMS Integration Hub Installation Guide for further information. Example: IntegrationHub.WCF.Contracts.IMSSubscriberError.

    • Log Successful Runs—Whether to log each attempt to send a message to a subscriber.
  4. Complete the following fields.
    • Adaptor Path—The path to the custom adaptor DLL file.
    • Class Name—The fully qualified class name that IMS Integration Hub calls to push a message.
    • Load Adaptor In Own Application Domain—Whether IMS Integration Hub loads the specified DLL in the application domain where the DLL is located. If unchecked, the DLL is loaded as though it is located in the IMS Integration Hub application domain. The purpose of this setting is to simplify the deployment process for solutions using IMS Integration Hub adaptors. If the adaptor is self-contained and depends on no other DLLs apart from those supplied with IMS Integration Hub itself, the adaptor should be placed in the folder where IMS Integration Hub is installed so that IntegrationHub.dll and IntegrationHub.Interfaces.API.dll do not need to be copied to a separate folder (and re-copied each time IMS Integration Hub is upgraded). In this scenario, this setting should be unchecked. In all other scenarios, the adaptor should be placed in the folder where all the DLLs that it depends on can also be found, and the setting should be checked.
    • Configuration Parameters—Name-value pairs of custom configuration parameters for the DLL.
  5. Click Save.