Difference between revisions of "OS4X plugin os4xplugin ftp upload"
(9 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | |||
− | |||
== Purpose == | == Purpose == | ||
− | |||
For simple FTP upload tasks, this plugin can transfer all job files to a target FTP server | For simple FTP upload tasks, this plugin can transfer all job files to a target FTP server | ||
− | |||
== Configuration == | == Configuration == | ||
Line 16: | Line 12: | ||
*Path: target path where to upload files to. | *Path: target path where to upload files to. | ||
**Syntax: /<pathToUpload> | **Syntax: /<pathToUpload> | ||
+ | **Example: <code>/upload</code> | ||
**Missing leading slashes will be appended automatically, but you should configure this. | **Missing leading slashes will be appended automatically, but you should configure this. | ||
**Trailing slashes will be removed automatically, but you should not configure these. | **Trailing slashes will be removed automatically, but you should not configure these. | ||
*''(optionally)'' Username: The username used for login to the server. | *''(optionally)'' Username: The username used for login to the server. | ||
*''(optionally)'' Password: The password used for login to the server. | *''(optionally)'' Password: The password used for login to the server. | ||
+ | *''(optionally)'' Verbose output: all protocol specific communication (incoming and outgoing) will be logged. | ||
+ | *''(optionally)'' Disable proxy: no proxy will be used, even is there is one configured elsewhere in the system. | ||
+ | *''(optionally)'' Force HTTP 1.0 for proxy communication: Bugfix for several proxy systems which support HTTP 1.0 (i.e. for FTP transfers), but don't support the default HTTP 1.1 behaviour. | ||
+ | |||
+ | Since OS4X 3 Build 20191106, the target directory may contain variables, which are resolved at runtime of the plugin. The list of usable variables is: | ||
+ | *%j: job number | ||
+ | *%d: day of job creation (two digits) | ||
+ | *%m: month of job creation (two digits) | ||
+ | *%Y: year of job creation (four digits) | ||
+ | *%H: hour of job creation (two digits, 24h format) | ||
+ | *%M: minute of job creation (two digits) | ||
+ | *%S: second of job creation (two digits) | ||
+ | *%D: job direction (either "<code>incoming</code>" or "<code>outgoing</code>") | ||
+ | *%r: recipient partner shortname | ||
+ | *%s: sender partner shortname | ||
+ | *%t: recipient location | ||
+ | *%u: recipient department | ||
+ | *%v: recipient name | ||
+ | *%w: recipient last name | ||
+ | *%x: recipient address code | ||
+ | *%g: sender location | ||
+ | *%h: sender department | ||
+ | *%i: sender name | ||
+ | *%J: sender last name | ||
+ | *%k: sender address code | ||
+ | *%e: depending on the job direction, the partner shortname of the external communication partner | ||
+ | **for incoming jobs: sender partner shortname (see "<code>%s</code>") | ||
+ | **job outgoing (or undefined job directions): recipient partner shortname (see "<code>%r</code>") | ||
+ | *%a: ENGDAT Message Reference [UNH0062] (if given, otherwise empty) | ||
+ | *%b: ENGDAT Document Number [MID1004] (if given, otherwise empty) | ||
+ | *%p: sender partner's event parameter | ||
+ | *%P: recipient partner's event parameter | ||
+ | *%Q: depending on the job direction, the event parameter of the external communication partner: | ||
+ | **incoming jobs: sender's event parameter (= "<code>%p</code>") | ||
+ | **outgoing jobs or undefined job direction: recipient's company shortname (= "<code>%P</code>") | ||
+ | |||
+ | Since OS4X release 2021-06-15, the following variable exists: | ||
+ | *%A: year of job creation (last two digits) | ||
+ | |||
+ | Starting with OS4X release 2021-06-15, the following variable is also available: | ||
+ | *%A: job year (short, two digits) | ||
− | == | + | Since OS4X 3 Build 20211130 the following variable is available: |
+ | *%%: represents the character "<code>%</code>" | ||
+ | |||
+ | == Behaviour == | ||
The plugin loops over all files of the job and handles them separately (one after another). For each file, the plugin | The plugin loops over all files of the job and handles them separately (one after another). For each file, the plugin | ||
*connects to the FTP server | *connects to the FTP server | ||
Line 27: | Line 68: | ||
*after upload, the file is being renamed to the virtual filename without the leading dot. | *after upload, the file is being renamed to the virtual filename without the leading dot. | ||
− | Since the plugin has no specific configuration for proxies, the plugin uses the system-wide proxy settings of your system (see [[OS4X HTTP Proxy support]]). | + | Since the plugin has no specific configuration for proxies, the plugin uses the system-wide proxy settings of your system (see [[OS4X HTTP Proxy support]]), if a HTTP target is being adressed. |
+ | |||
+ | When using a FTP proxy, you have to define an environment variable, either: | ||
+ | *ftp_proxy | ||
+ | *all_proxy | ||
+ | The syntax of these environment variables is the same as the one for HTTP (described [[OS4X HTTP Proxy support|here]]). | ||
+ | |||
+ | == Protocol support == | ||
+ | The plugin is compiled with the following contained protocols. For details, please refer to the CURL library: | ||
+ | * DICT | ||
+ | * FILE | ||
+ | * FTP | ||
+ | * FTPS | ||
+ | * GOPHER | ||
+ | * HTTP | ||
+ | * HTTPS | ||
+ | * IMAP | ||
+ | * IMAPS | ||
+ | * POP3 | ||
+ | * POP3S | ||
+ | * RTSP | ||
+ | * SCP | ||
+ | * SFTP | ||
+ | * SMB | ||
+ | * SMBS | ||
+ | * SMTP | ||
+ | * SMTPS | ||
+ | * TELNET | ||
+ | * TFTP | ||
+ | |||
+ | [[Category:Plugins]] |
Latest revision as of 14:30, 30 November 2021
Purpose
For simple FTP upload tasks, this plugin can transfer all job files to a target FTP server
Configuration
The plugin must be configured on per-partner level and has no global configuration.
Configuration parameters are:
- Server: server incl. protocol being used. Supported protocols are (at least, but not limited to) "ftp".
- Syntax: ftp://<ip or hostname>
- Traling slashed are being eliminated automatically, but you should not configure these.
- Example:
ftp://192.168.1.2
orftp://ftp.myserver.com
- Path: target path where to upload files to.
- Syntax: /<pathToUpload>
- Example:
/upload
- Missing leading slashes will be appended automatically, but you should configure this.
- Trailing slashes will be removed automatically, but you should not configure these.
- (optionally) Username: The username used for login to the server.
- (optionally) Password: The password used for login to the server.
- (optionally) Verbose output: all protocol specific communication (incoming and outgoing) will be logged.
- (optionally) Disable proxy: no proxy will be used, even is there is one configured elsewhere in the system.
- (optionally) Force HTTP 1.0 for proxy communication: Bugfix for several proxy systems which support HTTP 1.0 (i.e. for FTP transfers), but don't support the default HTTP 1.1 behaviour.
Since OS4X 3 Build 20191106, the target directory may contain variables, which are resolved at runtime of the plugin. The list of usable variables is:
- %j: job number
- %d: day of job creation (two digits)
- %m: month of job creation (two digits)
- %Y: year of job creation (four digits)
- %H: hour of job creation (two digits, 24h format)
- %M: minute of job creation (two digits)
- %S: second of job creation (two digits)
- %D: job direction (either "
incoming
" or "outgoing
") - %r: recipient partner shortname
- %s: sender partner shortname
- %t: recipient location
- %u: recipient department
- %v: recipient name
- %w: recipient last name
- %x: recipient address code
- %g: sender location
- %h: sender department
- %i: sender name
- %J: sender last name
- %k: sender address code
- %e: depending on the job direction, the partner shortname of the external communication partner
- for incoming jobs: sender partner shortname (see "
%s
") - job outgoing (or undefined job directions): recipient partner shortname (see "
%r
")
- for incoming jobs: sender partner shortname (see "
- %a: ENGDAT Message Reference [UNH0062] (if given, otherwise empty)
- %b: ENGDAT Document Number [MID1004] (if given, otherwise empty)
- %p: sender partner's event parameter
- %P: recipient partner's event parameter
- %Q: depending on the job direction, the event parameter of the external communication partner:
- incoming jobs: sender's event parameter (= "
%p
") - outgoing jobs or undefined job direction: recipient's company shortname (= "
%P
")
- incoming jobs: sender's event parameter (= "
Since OS4X release 2021-06-15, the following variable exists:
- %A: year of job creation (last two digits)
Starting with OS4X release 2021-06-15, the following variable is also available:
- %A: job year (short, two digits)
Since OS4X 3 Build 20211130 the following variable is available:
- %%: represents the character "
%
"
Behaviour
The plugin loops over all files of the job and handles them separately (one after another). For each file, the plugin
- connects to the FTP server
- uploads the file to the target directory with the temporary name with a leading dot ("
.
") in front of the virtual filename - after upload, the file is being renamed to the virtual filename without the leading dot.
Since the plugin has no specific configuration for proxies, the plugin uses the system-wide proxy settings of your system (see OS4X HTTP Proxy support), if a HTTP target is being adressed.
When using a FTP proxy, you have to define an environment variable, either:
- ftp_proxy
- all_proxy
The syntax of these environment variables is the same as the one for HTTP (described here).
Protocol support
The plugin is compiled with the following contained protocols. For details, please refer to the CURL library:
- DICT
- FILE
- FTP
- FTPS
- GOPHER
- HTTP
- HTTPS
- IMAP
- IMAPS
- POP3
- POP3S
- RTSP
- SCP
- SFTP
- SMB
- SMBS
- SMTP
- SMTPS
- TELNET
- TFTP