The eiConsole Offers the Configuration of an FTP/SFTP Listener (Adapter) with a Host of Features Built-In
The FTP/SFTP Listener (Adapter) allows you to configure a basic FTP Adapter from the Listener Type drop-down. As with all the components of the eiConsole, the user is presented with a graphical interface with easy-to-configure screens.
Listener (Adapter) Configuration Drop-Down List
Basic FTP/SFTP Listener Configuration Options
The Basic tab lets you configure how often to poll the FTP Server, File Name Restrictions, File Extension Restrictions, Tokenizers (split an inbound file into pieces based on a delimiter, when left blank the entire file is treated as a message), Polling Directory and Host (FTP server).
- FTP Type – FTP Type: Regular FTP, FTP over SSL (Explicit), FTP over SSL (Implicit), Encrypted FTP (SSH/SFTP), Encrypted FTP (JSCH SSH/SFTP)
- Host – the host FTP address, this field is required
- Port – the FTP port. 21 is the default for FTP/FTPS, 22 is the default for SFTP/JSCH.
- Polling Interval – how often the directory is polled for new files. If the value is set with enhanced properties, the units are seconds.
- Polling Directory – the directory path to be polled. To choose a current directory enter a ‘.’ or enter a ‘/’ to choose a root path.
- File/Folder Name Restriction – an expression which must be contained by a file name to be picked up by the Listener
- File Extension Restriction – valid filename extensions
FTP/SFTP Listener Basic Configuration Options
- Specify Full File Path – if enabled, a full file path may be specified to pick up a particular file
- Path to File/Folder – the path to the file to be picked up. Note: Some FTP servers require a ‘/’ to precede the relative path, while for others this will be seen as the root of the file system.
- File is MVS Data Set – check this box when retrieving an MVS Data Set
FTP/SFTP Listener Basic Configuration Options
Advanced FTP/SFTP Listener Configuration Options
The Advanced tab allows you to choose whether or not to initialize this Listener when triggered externally, the maximum number of transactions to process at a given time, determining whether to traverse subfolders when scanning for files, change the default FTP port and determine whether to maintain the connection when not actively querying the server.
- Initialize on Trigger Only – if enabled, the Listener doesn’t start up until a trigger initializes it
- Allow Command-line Invocation – if enabled, the listener can be invoked using the CLI client application
- Restart on Listening Error – if enabled, the listener will be restarted after an error occurs
- FIFO Queue Name – the FIFO option enables a “First In, First Out” queuing mechanism between Listeners and Transports. If a FIFO Queue Name is provided, it will be used as a key for a transaction queue. Transactions will be written to this queue before they reach a Transport. The transactions in this queue will be ordered according to when they were created by the Listener.
- FIFO Queue Delay – this is the interval between updates or checks against that queue. Providing a queue name guarantees that a given Transport sends transactions in the same order the Listener created them in.
- Max Transaction per Run – specifies the maximum number of transactions to process at a time
- Connection Timeout – specifies how long the Listener should wait for messages which are interrupted before timing out the connection
- Socket Timeout – the length of time to wait for the socket to connect – 0 to disable (default). If the value is set with enhanced properties, the units are seconds.
FTP/SFTP Listener Advanced Configuration Options (top half of screen)
- Retry Connection – if selected, the Listener will attempt to make the connection twice, with a delay between the attempts, if the first connection attempt fails
- Retry Delay – the length of time to wait after a failed connection before attempting to retry. Set to -1 for no delay. If the value is set with enhanced properties, the units are seconds.
- Keep Connection – this specifies whether connections are to be dropped once operations are completed, or maintained – creating connections is extremely expensive, so this can be utilized on a heavy server to reduce resource consumption.
- Passive Mode – specifies if local passive (or active) mode should be used
- SSL Protocol – specify the type of SSL protocol to use. The recommendation is TLS.
- Data Channel Protection Level – specifies the security mode
- Protection Buffer Size (PBSZ) – maximum protected buffer size for the connection
FTP/SFTP Listener Advanced Configuration Options (middle half of screen)
- File Type – type of transfer to use – ASCII Text or Binary
- Stop if Directory Not Found – the Listener will stop and report an error when the polling directory or post-process target directory do not exist
- Include Subfolders – this specifies whether or not subfolders should be searched for files as well
- Use ChangeDirectory Command – if enabled, ChangeDirectory is explicitly called
- Reconnect after Bytes – reconnect SFTP connection after this number of bytes have been received
- Cache Type – choose between File Cashe and Memory Cashe. File Cache is the default because it handles larger file sizes better than Memory Cashe. However, if the file sizes will be small, Memory Caching will have higher performance.
FTP/SFTP Listener Advanced Configuration Options (bottom half of screen)
Transaction Logging FTP/SFTP Listener Configuration Options
On the Transaction Logging tab, you can enable transaction events logging. That data can be logged by a Transaction Event Listener (TransactionEventListener).
- Transaction Logging Enabled – this checkbox allows transaction events originating from this Listener to be logged by a Transaction Event Listener (TransactionEventListener)
- Log Transaction Data – if enabled, logs the transaction data body
- Log Transaction Data Base64 – if enabled, logs transaction data body as Base64
- Log Transaction Attribute – if enabled, logs transaction attributes
- Log All Attributes – if enabled, no attributes will be filtered
- Allowed Attributes – attributes that are allowed to be logged
FTP/SFTP Listener Transaction Logging Configuration Options
Inactivity FTP/SFTP Listener Configuration Options
On the Inactivity tab you can specify:
- Enable Inactivity Monitor – check this box to enable inactivity monitoring – this will throw a non-transaction exception if the specified number of transactions haven’t been processed in the specified time interval
- Minimum Transactions to Expect – the number of transactions to expect to be completed per monitoring interval
- Monitoring Interval – how often to check the specified number of transactions that have been processed
- Times to Monitor – if set, monitoring will be done during the defined times of day – to ignore, set start and end time equally
- Days to Exclude from Monitoring – inactivity monitoring will not occur on the days specified
- Include Errors in Transaction Count – if checked, transactions that attempted to start but failed at the Listener stage will also be counted
FTP/SFTP Listener Inactivity Configuration Options
Throttling FTP/SFTP Listener Configuration Options
On the Throttling tab, you can specify:
- Throttling Mode – the throttling mode to use for limiting the number of transactions or messages emitted by this Listener. “Timed” will limit transactions based on time intervals, while “Concurrent” will limit based on a concurrent number of transactions. “Concurrent” mode requires a Throttling Response Processor step later in your interface workflow to acknowledge completion.
FTP/SFTP Listener Throttling Mode
- Throttling Mechanism – the mechanism to use for throttling message – “Blocking” prevents the Listener from continuing to process and emit messages altogether, while “Queued” pushes received messages into the interface queue or a default, in-memory queue.
- Max Concurrent Messages – how many messages can be concurrently processed, either by time-based limits (“Allow X per Second”) or synchronous (“Allow X at any Time”)
- Timed Emission Interval – the interval for time-based limits (“Allow X per X Timed Emission Interval”)
- Synchronous Timeout Interval – the interval to wait for a synchronous response before failing
FTP/SFTP Listener Throttling Configuration Options
Post-Process FTP/SFTP Listener Configuration Options
The Post-Process tab allows you to specify the behavior of the system after a file has been picked up. You can delete or move the file.
The Post-Process tab lets you determine what to do with the file after it has been processed. You can choose to delete or move the file. If you choose move, the Target Directory configuration item becomes required. Choose the directory for where you would like to move the file. You can also enter this information as text.
FTP/SFTP Listener Post-Process Configuration Options
Credentials FTP/SFTP Listener Configuration Options
The Credentials tab allows you to enter the User Name and Password for the server. Also, you can set a Key file to authenticate with.
FTP/SFTP Listener Credentials Configuration Options
Certificates FTP/SFTP Listener Configuration Options
On the Certificates tab, you can specify:
- Use KeyStore – use a KeyStore to provide client certificates for 2-way SSL
- KeyStore – the file path for the KeyStore with a single client keypair in it
- KeyStore Type – the format of the KeyStore – recommended is JKS
- KeyStore Password – the KeyStore password
- Use TrustStore – use a TrustStore to validate the server’s certificate
- TrustStore – file path for the TrustStore with the server’s public key in it
- TrustStore Type – the format of the TrustStore – recommended is JKS
- TrustStore Password – the TrustStore password
FTP/SFTP Listener Certificate Configuration Options
Accept Tests FTP/SFTP Listener Configuration Options
On the Accept Tests tab, you can specify:
- Check FTP Permissions – if enabled, only accept files with explicit WRITE permissions (DISABLE for Windows FTP)
- Check Previously Processed – if enabled, ignore files already processed by this listener since startup.
- Check Write In Process – if enabled, ignore files with very recent modification dates.
FTP/SFTP Listener Accept Tests Configuration Options
Scheduling FTP/SFTP Listener Configuration Options
The Scheduling tab allows you to specify a start time and end time for polling the FTP server (to see the window below click on the three buttons to the right of the Listener Type selection).
FTP/SFTP Listener Scheduling Configuration Options