====== QWK-Networking via FTP ======

QNET-FTP is a JavaScript module (''[[dir:exec]]/qnet-ftp.js'') that may be used for QWK networking via FTP.

In 2020, ''qnet-ftp.js'' replaced the now deprecated Baja module ''qnet-ftp.src/bin'' in functionality.

===== Usage =====
''qnet-ftp <hub-id> [address] [password] [port]''

===== Configure =====

Configured by default, ''qnet-ftp-.js'' is used as the QWK network call-out script for DOVE-Net:

  ╔════════════════════════════════════════════════════════════════════╗
  ║                        VERT QWK Network Hub                        ║
  ╠════════════════════════════════════════════════════════════════════╣
  ║ │Hub System ID              VERT                                   ║
  ║ │Enabled                    No                                     ║
  ║ │Archive Format             ZIP                                    ║
  ║ │Call-out Command Line      *qnet-ftp %s dove.synchro.net YOURPASS ║
  ║ │Native Call-out Command    No                                     ║
  ║ │Call-out Node              1                                      ║
  ║ │Call-out Days              All                                    ║
  ║ │Call-out Frequency         4 times a day                          ║
  ║ │Include Kludge Lines       No                                     ║
  ║ │Include VOTING.DAT File    Yes                                    ║
  ║ │Include HEADERS.DAT File   Yes                                    ║
  ║ │Include UTF-8 Characters   Yes                                    ║
  ║ │Extended (QWKE) Packets    No                                     ║
  ║ │Exported Ctrl-A Codes      Leave in                               ║
  ║ │Advanced Options...                                               ║
  ║ │Import Conferences...                                             ║
  ║ │Networked Sub-boards...                                           ║
  ╚════════════════════════════════════════════════════════════════════╝

You can use ''qnet-ftp.js'' for multiple QWK networks and network hubs (not just one). This is achieved by passing the hostname or IP address of the QWK network hub on the command-line (''dove.synchro.net'' in the above example) or via the ''address'' key in the ''[qnet-ftp:hub-id]'' section of your ''[[dir:ctrl]]/[[config:modopts.ini]]'' file.

The first argument passed to ''qnet-ftp.js'' is always the intended QWKnet hub-ID (''%s'' expands to the configured hub-id in the context of the above example).

The second argument passed to ''qnet-ftp.js'' may be the address (hostname or IP address) of the QWKnet hub (if not specified in ''[[config:modopts.ini]]'').

The third argument passed to ''qnet-ftp.js'' may be the QWKnet account password on the QWKnet hub (if not specified in ''[[config:modopts.ini]]'').

The fourth argument passed to ''qnet-ftp.js'' may be the TCP port of the hub's FTP server (if non standard and not specified in ''[[config:modopts.ini]]'').

==== modopts.ini ====

If a ''[qnet-ftp:hub-id]'' section or ''[qnet-ftp]'' section exists in your ''[[dir:ctrl]]/[[config:modopts.ini]]'' file, the following keys may be used for configuration settings:

^ Key      ^ Description   ^
| address  | Hostname or IP address of QWKnet hub FTP server |
| port     | TCP control port of QWKnet hub's FTP server (default: 21) |
| dataport | TCP data port of  QWKnet hub's FTP server (default: 20) |
| password | QWKnet account password on QWKnet hub (e.g. to eliminate it from configured and logged QWKnet call-out command-line) |
| bindhost | Local address to bind to for active data connections (default: any) |
| passive  | Passive (not active) FTP (default: true) |

A ''[qnet-ftp:hub-id]'' section takes precedence over a ''[qnet-ftp]'' section, if they both exist.
===== See Also =====
  * [[network:DOVE-Net]]
  * [[:|Modules]]
  * [[:config:modopts.ini]]
  * [[qnet-http]]

{{tag>qwk network qnet ftp}}