Message Sources and Polls
To poll and enqueue messages from external sources like file systems and SFTP, Platform uses Message Source and Message Source Poll models. The following tables outline all fields for these models:
Table 16.4. MessageSource Fields
Field |
Description |
ValueChainId |
Value Chain which owns the MessageSource. (KEY field) |
Name |
Identifying name of the source (KEY field) |
EnterpriseName |
The MessageSource can optionally be scoped by a parent Enterprise. (optional KEY field) |
SourceType |
Supports values "File" for enqueuing directly from a file system and "SFTP" for enqueuing from an SFTP server. |
Config |
Configuration passed to the MessageSource; expected values are specific to the SourceType. For type "File", this should be a JSON of the form: { srcDir: '${SharedFileSystemRoot}/inboxes/router/Retailer1Test' } (Note that ${SharedFileSystemRoot} is a well-known variable replacement that is aliased to the root of the shared filesystem of the platform cluster.) For type "SFTP", this should be a JSON of the form: { host: 'mysftp.com', port: 22, Username: 'foo', Password: 'bar', polledDir: '/my/polleddir', sftpLib:'jsch' } |
Table 16.5. MessageSourcePoll Fields
Field |
Description |
ValueChainId |
Value Chain which owns the MessageSourcePoll. (KEY field) |
Name |
Identifying name of the source poll (KEY field) |
EnterpriseName |
The MessageSourcePoll can optionally be scoped by a parent Enterprise. (optional KEY field) |
MessageSourceName |
Name of MessageSource from which Messages should be picked up on a polled basis. |
MessageSourceEnterpriseName |
Enterprise of MessageSource from which Messages should be picked up on a polled basis, iff that source is scoped by Enterprise. |
GroupName |
Polling is done first by MessageSource; within a MessageSource, different MessageSourcePolls are then grouped by GroupName. Within a given GroupName, if the enqueue of messages fails for some reason, then any subsequent MessageSourcePolls for that same group will be skipped. MessageSourcePolls without a GroupName will be evaluated separately, without dependency. |
Precedence |
Within a GroupName, determines the order in which polling occurs. |
InboundQueueName |
Name of InboundQueue into which Message should be placed containing this file's content |
InboundQueueEnterpriseName |
Enterprise of InboundQueue into which Message should be placed containing this file's content, iff the queue is scoped by Enterprise. |
InboundInterface |
InboundInterface to be used to process the Message create |
InboundInterfaceVersion |
InboundInterface version to be used to process the Message created |
IncludeExpr |
When provided, only files matching this expression will be included; when omitted, all files are considered "included". |
ExcludeExpr |
When provided, any files matching this expression will be excluded (even if it matched the "IncludeExpr"). |