Created
March 28, 2024 11:42
-
-
Save information-redacted/63413468d62974a0c6d305f56a1ce59e to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
FTP Rush v2.x RFQ (RushFTP Queue) File Format | |
============================================= | |
NOTE: All strings are UTF-16 (Unicode) encoded unless explicitly noted otherwise. | |
NOTE: All integers are encoded as UTF-16 (Unicode) strings. | |
- A RFQ file MAY begin with 0xFF 0xFE (the "Byte Order Mark" byte sequence). | |
- A RFQ file MAY contain multiple Queue Entries in NEW LINES, using | |
the CARRIAGE-RETURN, LINE-FEED (CRLF) terminator, of course, encoded using | |
Unicode (0x0D, 0x00, 0x0A, 0x00). | |
- Every PARAMETER in a RFQ file is SPLIT using the PARAMETER TERMINATOR (0x02, 0x00). | |
The parameters, in order of encoding, are as follows: | |
- File Type: | |
Integer, Enum { Unknown, Directory, File } | |
- Transfer Type: | |
Integer, Enum { Upload, Download, Fxp, Unknown3, Unknown4, Unknown5, Unknown6 } | |
- Source Site Unique Id (UID): | |
String, The UID parameter from the RushSite.xml file. | |
- Source Site Path: | |
String, The BASE PATH to the file, excluding the file name. | |
- Source Site File Name: | |
String, The FILE NAME in the above path. | |
- Desitnation Site Unique Id (UID) | |
- Destination Site Path | |
- Destination Site File Name | |
- Item Size (in BYTES) | |
- UNKNOWN | |
- Advanced Parameters: | |
The Advanced Parameters is a mix of 4 different integer-based parameters, | |
in the format of `000000000000000,0,0,0`. | |
^--- Date Param 2 | |
^----- Date Param 1 | |
^------- File Size Param (BYTES) | |
^^^^^^^^^^^^^^^--------- Options IntMap | |
The Options Integer Map is a 15-integer mapping of different boolean and enum settings, | |
which are as follows: | |
* BOOL: 0: false, 1: true | |
* ENUM: Starting at 0, incremented as enum value | |
- 0: Use global skip-list (BOOL) | |
- 1: Enable "Synchronize" mode (BOOL) | |
- 2: Include subfolders (BOOL) | |
- 3: Use regular expressions (BOOL) | |
- 4: Existing Files Only (BOOL, only available in "Synchronize" mode) | |
- 5: File Size (Enum { Disabled, Equals, AtMost, AtLeast }) | |
- 6: Apply Date Condition to Folders (BOOL) | |
- 7: Delete non-exitent files (BOOL, only available in "Synchronize" mode) | |
- 8: Compare file date-time (BOOL, only available in "Synchronize" mode) | |
- 9: Compare file size (BOOL, only available in "Synchronize" mode) | |
- 10: "File Not Older Than" mode (BOOL, If 0, will use "Date Between") | |
- 11: Use Binary Mode for transferring ASCII files (BOOL, only available in "Synchronize" mode) | |
- 12: Synchronize both sides (BOOL, only available in "Synchronize" mode) | |
- 13: Disconnect after Transfer Complete (BOOL) | |
- 14: UNKNOWN | |
The File Size Param is only used for when the File Size Option is set to something other than Disabled. | |
Date Param 1: | |
- If in "Date Between" mode: | |
In "Date Between" mode, Date Param 1 is set to the TDateTime value of the earliest allowed date. | |
- If in "File not older than" mode: | |
In "File not older than" mode, Date Param 1 is set to the numerical value of timeframes allowed. | |
Date Param 2: | |
- If in "Date Between" mode: | |
In "Date Between" mode, Date Param 2 is set to the TDateTime value of the latest allowed date. | |
- If in "File not older than" mode: | |
In "File not older than" mode, Date Param 2 is set to the enum value of the timeframe; | |
- 1: Day(s) | |
- 2: Week(s) | |
- 3: Month(s) | |
- 4: Year(s) | |
Setting both date params to 0 disables any date checks. | |
- Remark: | |
String, Description of the Transfer Item, usually Site X -> Site Y | |
- Advanced - Included Folders ("Folder Include"): | |
String, the input of the "Folder Include" field, which is to be interpreted | |
as the rest of the Advanced Options dictate. | |
- Advanced - Excluded Folders ("Folder Exclude"): | |
String, the input of the "Folder Exclude" field, which is to be interpreted | |
as the rest of the Advanced Options dictate. | |
- Advanced - Included Files ("File Include"): | |
String, the input of the "File Include" field, which is to be interpreted | |
as the rest of the Advanced Options dictate. | |
- Advanced - Excluded Files ("File Exclude"): | |
String, the input of the "File Exclude" field, which is to be interpreted | |
as the rest of the Advanced Options dictate. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment