Overview

The FTP connector provides file-monitoring and on-demand file operations against an FTP server, using the FluentFTP SDK.

Two separate connections are deliberately maintained rather than merged into one. The first is used exclusively by a background file monitor, watching a configured path for added, deleted, and changed files and reporting them via the built-in ADDED/DELETED/CHANGED tags. The second is used exclusively for the on-demand RunMethod operations (RENAME/MOVEFILE/GETFILE/DELETEFILE/UPLOADFILE/GETLISTING). FTP clients are generally not safe for concurrent use from multiple threads - the underlying protocol is fundamentally one command at a time per connection - so this avoids a slow on-demand operation blocking file monitoring, or vice versa.

%CONNECTED reflects the monitoring connection specifically; the on-demand connection is connected (and reconnected, if needed) lazily, the first time a RunMethod call actually needs it.

The connector detects when the monitoring connection is lost and reconnects automatically without blocking - reconnection runs on its own dedicated background thread.

Parameters

Name Values Description
Type FTP The connector type identifier.
HOST hostname or IP The FTP server address.
USER / PASS string FTP credentials.
MONITORPATH comma-separated paths One or more server-side paths to watch for added/deleted/changed files. If omitted, file monitoring is disabled entirely (only the on-demand RunMethod operations are available).
UpdateRate milliseconds (integer) How often the connector's heartbeat runs. Defaults to 5000. Note this does not control file-monitoring frequency - see below.
ReconnectDelay milliseconds (integer) Delay between reconnect attempts while the monitoring connection is unreachable. Defaults to 5000.

The monitor's own poll interval (how often it checks MONITORPATH for changes) is fixed at 20 seconds and is not currently configurable via a parameter.

Supported Tag Types:

Tag Type Address Behaviour
ADDED - Built-in tag. Updated with the list of newly-added files whenever the monitor detects a change, if MONITORPATH is configured.
DELETED - Built-in tag. Updated with the list of deleted files.
CHANGED - Built-in tag. Updated with the list of changed files.

These three tags are created automatically by the connector - there's no need to (and no way to) configure additional tags against this connector; all file data arrives through them or through the RunMethod results below.

Connector Methods

Name Arguments Description
RENAME Source, Destination Renames a file on the server.
MoveFile Source, Destination Moves a file on the server.
GetFile Path Downloads a file's contents on demand.
DeleteFile Path Deletes a file on the server.
UploadFile Path, File Uploads a file's contents to the server at the given path.
GetListing Path Lists the contents of a directory on the server.

Each of these retries automatically (up to 20 attempts, 50ms apart) before reporting a failure via %ERROR.

Addressing

Tags on this connector don't use an Address at all - the three built-in tags report monitor events directly by name, and everything else is accessed on demand via the RunMethod operations above, addressed by an explicit Path/Source/Destination argument rather than a tag Address.