FTN/BSO doc tidy up
This commit is contained in:
parent
8ee3317bd2
commit
fc22db5462
|
@ -35,7 +35,7 @@ function startup(cb) {
|
||||||
|
|
||||||
function resolveMimeType(query) {
|
function resolveMimeType(query) {
|
||||||
if(mimeTypes.extensions[query]) {
|
if(mimeTypes.extensions[query]) {
|
||||||
return query; // alreaed a mime-type
|
return query; // already a mime-type
|
||||||
}
|
}
|
||||||
|
|
||||||
return mimeTypes.lookup(query) || undefined; // lookup() returns false; we want undefined
|
return mimeTypes.lookup(query) || undefined; // lookup() returns false; we want undefined
|
||||||
|
|
|
@ -5,58 +5,23 @@ title: BSO Import / Export
|
||||||
## BSO Import / Export
|
## BSO Import / Export
|
||||||
The scanner/tosser module `ftn_bso` provides **B**inkley **S**tyle **O**utbound (BSO) import/toss and scan/export of messages EchoMail and NetMail messages. Configuration is supplied in `config.hjson` under `scannerTossers.ftn_bso`.
|
The scanner/tosser module `ftn_bso` provides **B**inkley **S**tyle **O**utbound (BSO) import/toss and scan/export of messages EchoMail and NetMail messages. Configuration is supplied in `config.hjson` under `scannerTossers.ftn_bso`.
|
||||||
|
|
||||||
:information_source: ENiGMA½'s `ftn_bso` module is not a mailer and **makes no attempts** to perfrom packet transport! An external [mailer](http://www.filegate.net/bbsmailers.htm) such as [Binkd](https://github.com/pgul/binkd) is required for this!
|
:information_source: ENiGMA½'s `ftn_bso` module is not a mailer and **makes no attempts to perform packet transport**! An external [mailer](http://www.filegate.net/bbsmailers.htm) such as [Binkd](https://github.com/pgul/binkd) is required for this task.
|
||||||
|
|
||||||
|
### Configuration
|
||||||
Let's look at some of the basic configuration:
|
Let's look at some of the basic configuration:
|
||||||
|
|
||||||
| Config Item | Required | Description |
|
| Config Item | Required | Description |
|
||||||
|-------------|----------|----------------------------------------------------------|
|
|-------------|----------|----------------------------------------------------------|
|
||||||
| `schedule` | :+1: | Sets `import` and `export` schedules. [Later style text parsing](https://bunkat.github.io/later/parsers.html#text) supported. `import` also can utilize a `@watch:<path/to/file>` syntax while `export` additionally supports `@immediate`. |
|
| `schedule` | :+1: | Sets `import` and `export` schedules. [Later style text parsing](https://bunkat.github.io/later/parsers.html#text) supported. `import` also can utilize a `@watch:<path/to/file>` syntax while `export` additionally supports `@immediate`. |
|
||||||
| `packetMsgEncoding` | :-1: | Override default `utf8` encoding.
|
| `packetMsgEncoding` | :-1: | Override default `utf8` encoding.
|
||||||
| `defaultNetwork` | :-1: | Explicitly set default network (by tag in `messageNetworks.ftn.networks`). If not set, the first found is used. |
|
| `defaultNetwork` | :-1: | Explicitly set default network (by tag found within `messageNetworks.ftn.networks`). If not set, the first found is used. |
|
||||||
| `nodes` | :+1: | Per-node settings. Entries (keys) here support wildcards for a portion of the FTN-style address (e.g.: `21:1/*`). `archiveType` may be set to a FTN supported archive extention that the system supports (TODO); if unset, only .PKT files are produced. `encoding` may be set to override `packetMsgEncoding` on a per-node basis. If the node requires a packet password, set `packetPassword` |
|
| `nodes` | :+1: | Per-node settings. Entries (keys) here support wildcards for a portion of the FTN-style address (e.g.: `21:1/*`). See **Nodes** below.
|
||||||
| `paths` | :-1: | An optional configuration block that can set a additional paths or override defaults. See "Paths" below. |
|
| `paths` | :-1: | An optional configuration block that can set a additional paths or override defaults. See **Paths** below. |
|
||||||
| `packetTargetByteSize` | :-1: | Overrides the system *target* packet (.pkt) size of 512000 bytes (512k) |
|
| `packetTargetByteSize` | :-1: | Overrides the system *target* packet (.pkt) size of 512000 bytes (512k) |
|
||||||
| `bundleTargetByteSize` | :-1: | Overrides the system *target* ArcMail bundle size of 2048000 bytes (2M) |
|
| `bundleTargetByteSize` | :-1: | Overrides the system *target* ArcMail bundle size of 2048000 bytes (2M) |
|
||||||
|
|
||||||
### Paths
|
#### Nodes
|
||||||
Paths for packet files work out of the box and are relative to your install directory. If you want to configure `reject` or `retain` to keep rejected/imported packet files respectively, set those values. You may override defaults as well.
|
The `nodes` section defines how to export messages for one or more uplinks.
|
||||||
|
|
||||||
| Key | Description | Default |
|
|
||||||
|-----|-------------|---------|
|
|
||||||
| `outbound` | *Base* path to write outbound (exported) packet files and bundles. | `enigma-bbs/mail/ftn_out/` |
|
|
||||||
| `inbound` | *Base* path to write inbound (ie: those written by an external mailer) packet files an bundles. | `enigma-bbs/mail/ftn_in/` |
|
|
||||||
| `secInbound` | *Base* path to write **secure** inbound packet files and bundles. | `enigma-bbs/mail/ftn_secin/` |
|
|
||||||
| `reject` | Path in which to write rejected packet files. | No default |
|
|
||||||
| `retain` | Path in which to write imported packet files. Useful for debugging or if you wish to archive the raw .pkt files. | No default |
|
|
||||||
|
|
||||||
|
|
||||||
## Scheduling
|
|
||||||
Schedules can be defined for importing and exporting via `import` and `export` under `schedule`. Each entry is allowed a "free form" text and/or special indicators for immediate export or watch file triggers.
|
|
||||||
|
|
||||||
* `@immediate`: A message will be immediately exported if this trigger is defined in a schedule. Only used for `export`.
|
|
||||||
* `@watch:/path/to/file`: This trigger watches the path specified for changes and will trigger an import or export when such events occur. Only used for `import`.
|
|
||||||
* Free form [Later style](https://bunkat.github.io/later/parsers.html#text) text — can be things like `at 5:00 pm` or `every 2 hours`.
|
|
||||||
|
|
||||||
See [Later text parsing documentation](http://bunkat.github.io/later/parsers.html#text) for more information.
|
|
||||||
|
|
||||||
### Example Schedule Configuration
|
|
||||||
|
|
||||||
```hjson
|
|
||||||
{
|
|
||||||
scannerTossers: {
|
|
||||||
ftn_bso: {
|
|
||||||
schedule: {
|
|
||||||
import: every 1 hours or @watch:/path/to/watchfile.ext
|
|
||||||
export: every 1 hours or @immediate
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
## Nodes
|
|
||||||
The `nodes` section defines how to export messages for one or more uplinks.
|
|
||||||
|
|
||||||
A node entry starts with a [FTN address](http://ftsc.org/docs/old/fsp-1028.001) (up to 5D) **as a key** in `config.hjson`. This key may contain wildcard(s) for net/zone/node/point/domain.
|
A node entry starts with a [FTN address](http://ftsc.org/docs/old/fsp-1028.001) (up to 5D) **as a key** in `config.hjson`. This key may contain wildcard(s) for net/zone/node/point/domain.
|
||||||
|
|
||||||
|
@ -65,7 +30,7 @@ A node entry starts with a [FTN address](http://ftsc.org/docs/old/fsp-1028.001)
|
||||||
| `packetType` | :-1: | `2`, `2.2`, or `2+`. Defaults to `2+` for modern mailer compatiability. |
|
| `packetType` | :-1: | `2`, `2.2`, or `2+`. Defaults to `2+` for modern mailer compatiability. |
|
||||||
| `packetPassword` | :-1: | Optional password for the packet |
|
| `packetPassword` | :-1: | Optional password for the packet |
|
||||||
| `encoding` | :-1: | Encoding to use for message bodies; Defaults to `utf-8`. |
|
| `encoding` | :-1: | Encoding to use for message bodies; Defaults to `utf-8`. |
|
||||||
| `archiveType` | :-1: | Specifies the archive type (by extension) for ArcMail bundles. This should be `zip` for most setups. Other valid examples include `arc`, `arj`, `lhz`, `pak`, `sqz`, or `zoo`. See [Archivers](docs/configuration/archivers.md) for more information. |
|
| `archiveType` | :-1: | Specifies the archive type (by extension or MIME type) for ArcMail bundles. This should be `zip` (or `application/zip`) for most setups. Other valid examples include `arc`, `arj`, `lhz`, `pak`, `sqz`, or `zoo`. See [Archivers](docs/configuration/archivers.md) for more information. |
|
||||||
|
|
||||||
**Example**:
|
**Example**:
|
||||||
```hjson
|
```hjson
|
||||||
|
@ -85,7 +50,42 @@ A node entry starts with a [FTN address](http://ftsc.org/docs/old/fsp-1028.001)
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
## A More Complete Example
|
#### Paths
|
||||||
|
Paths for packet files work out of the box and are relative to your install directory. If you want to configure `reject` or `retain` to keep rejected/imported packet files respectively, set those values. You may override defaults as well.
|
||||||
|
|
||||||
|
| Key | Description | Default |
|
||||||
|
|-----|-------------|---------|
|
||||||
|
| `outbound` | *Base* path to write outbound (exported) packet files and bundles. | `enigma-bbs/mail/ftn_out/` |
|
||||||
|
| `inbound` | *Base* path to write inbound (ie: those written by an external mailer) packet files an bundles. | `enigma-bbs/mail/ftn_in/` |
|
||||||
|
| `secInbound` | *Base* path to write **secure** inbound packet files and bundles. | `enigma-bbs/mail/ftn_secin/` |
|
||||||
|
| `reject` | Path in which to write rejected packet files. | No default |
|
||||||
|
| `retain` | Path in which to write imported packet files. Useful for debugging or if you wish to archive the raw .pkt files. | No default |
|
||||||
|
|
||||||
|
### Scheduling
|
||||||
|
Schedules can be defined for importing and exporting via `import` and `export` under `schedule`. Each entry is allowed a "free form" text and/or special indicators for immediate export or watch file triggers.
|
||||||
|
|
||||||
|
* `@immediate`: A message will be immediately exported if this trigger is defined in a schedule. Only used for `export`.
|
||||||
|
* `@watch:/path/to/file`: This trigger watches the path specified for changes and will trigger an import or export when such events occur. Only used for `import`.
|
||||||
|
* Free form [Later style](https://bunkat.github.io/later/parsers.html#text) text — can be things like `at 5:00 pm` or `every 2 hours`.
|
||||||
|
|
||||||
|
See [Later text parsing documentation](http://bunkat.github.io/later/parsers.html#text) for more information.
|
||||||
|
|
||||||
|
#### Example Schedule Configuration
|
||||||
|
|
||||||
|
```hjson
|
||||||
|
{
|
||||||
|
scannerTossers: {
|
||||||
|
ftn_bso: {
|
||||||
|
schedule: {
|
||||||
|
import: every 1 hours or @watch:/path/to/watchfile.ext
|
||||||
|
export: every 1 hours or @immediate
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### A More Complete Example
|
||||||
Below is a more complete example showing the sections described above.
|
Below is a more complete example showing the sections described above.
|
||||||
|
|
||||||
```hjson
|
```hjson
|
||||||
|
@ -149,7 +149,7 @@ do
|
||||||
done
|
done
|
||||||
```
|
```
|
||||||
|
|
||||||
Now, create an Event Scheuler entry in your `config.hjson`. As an example:
|
Now, create an Event Scheduler entry in your `config.hjson`. As an example:
|
||||||
```hjson
|
```hjson
|
||||||
eventScheduler: {
|
eventScheduler: {
|
||||||
events: {
|
events: {
|
||||||
|
@ -163,4 +163,4 @@ eventScheduler: {
|
||||||
```
|
```
|
||||||
|
|
||||||
## Additional Resources
|
## Additional Resources
|
||||||
* [Blog entry on setting up ENiGMA + Binkd on CentOS7](https://l33t.codes/enigma-12-binkd-on-centos-7/). Note that this references an **older version**, so be wary of the `config.hjson` refernces!
|
[Blog entry on setting up ENiGMA + Binkd on CentOS7](https://l33t.codes/enigma-12-binkd-on-centos-7/). Note that this references an **older version**, so be wary of the `config.hjson` references!
|
||||||
|
|
Loading…
Reference in New Issue