* Docs theme to match ENiGMA website

* New docs layout ready for github pages serving
* Tonnes of new docs
* Update gitignore
* Probably other stuff too
This commit is contained in:
David Stephens
2018-01-31 23:35:54 +00:00
parent 06ea2d1600
commit 26849ba4fa
62 changed files with 1974 additions and 810 deletions

View File

@@ -0,0 +1,74 @@
---
layout: page
title: 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`.
| Config Item | Required | Description |
|-------------------------|----------|---------------------------------------------------------------------------------|
| `defaultZone` | :+1: | Sets the default BSO outbound zone
| `defaultNetwork` | :-1: | Sets the default network name from `messageNetworks.ftn.networks`. **Required if more than one network is defined**.
| `paths` | :-1: | Override default paths set by the system. This section may contain `outbound`, `inbound`, and `secInbound`.
| `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)
| `schedule` | :+1: | See Scheduling
| `nodes` | :+1: | See Nodes
## 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 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 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 style address (up to 5D) **as a key** in `config.hjson`. This key may
contain wildcard(s) for net/zone/node/point/domain.
| Config Item | Required | Description |
|------------------|----------|---------------------------------------------------------------------------------|
| `packetType` | :-1: | `2`, `2.2`, or `2+`. Defaults to `2+` for modern mailer compatiability |
| `packetPassword` | :-1: | Password for the packet |
| `encoding` | :-1: | Encoding to use for message bodies; Defaults to `utf-8` |
| `archiveType` | :-1: | Specifies the archive type for ArcMail bundles. Must be a valid archiver name such as `zip` (See archiver configuration) |
**Example**:
```hjson
{
scannerTossers: {
ftn_bso: {
nodes: {
"46:*": {
packetType: 2+
packetPassword: mypass
encoding: cp437
archiveType: zip
}
}
}
}
}
```

View File

@@ -0,0 +1,65 @@
---
layout: page
title: Configuring a Message Area
---
**Message Conferences** and **Areas** allow for grouping of message base topics.
## Message Conferences
Message Conferences are the top level container for 1:n Message Areas via the `messageConferences` section
in `config.hjson`. Common message conferences may include a local conference and one or more conferences
each dedicated to a particular message network such as FsxNet, AgoraNet, etc.
Each conference is represented by a entry under `messageConferences`. **The areas key is the conferences tag**.
| Config Item | Required | Description |
|-------------|----------|---------------------------------------------------------------------------------|
| `name` | :+1: | Friendly conference name |
| `desc` | :+1: | Friendly conference description |
| `sort` | :-1: | If supplied, provides a key used for sorting |
| `default` | :-1: | Specify `true` to make this the default conference (e.g. assigned to new users) |
| `areas` | :+1: | Container of 1:n areas described below |
### Example
```hjson
{
messageConferences: {
local: {
name: Local
desc: Local discussion
sort: 1
default: true
}
}
}
```
## Message Areas
Message Areas are topic specific containers for messages that live within a particular conference. #
**The area's key is its area tag**. For example, "General Discussion" may live under a Local conference
while an AgoraNet conference may contain "BBS Discussion".
| Config Item | Required | Description |
|-------------|----------|---------------------------------------------------------------------------------|
| `name` | :+1: | Friendly area name |
| `desc` | :+1: | Friendly area discription |
| `sort` | :-1: | If supplied, provides a key used for sorting |
| `default` | :-1: | Specify `true` to make this the default area (e.g. assigned to new users) |
### Example
```hjson
messageConferences: {
local: {
// ... see above ...
areas: {
enigma_dev: { // Area tag - required elsewhere!
name: ENiGMA 1/2 Development
desc: ENiGMA 1/2 discussion!
sort: 1
default: true
}
}
}
}
```

View File

@@ -0,0 +1,67 @@
---
layout: page
title: Message Networks
---
Configuring message networks in ENiGMA½ requires three specific pieces of config - the network and your
assigned address on it, the message areas (echos) of the network you wish to map to ENiGMA½ message areas,
then the schedule and routes to send mail packets on the network.
## FTN Networks
FTN networks are configured under the `messageNetworks::ftn` section of `config.hjson`.
The `networks` section contains a sub section for each network you wish you join your board to.
Each entry's key name is referenced elsewhere in `config.hjson` for FTN oriented configurations.
### Example Configuration
```hjson
{
messageNetworks: {
ftn: {
networks: {
agoranet: {
localAddress: "46:3/102"
}
fsxnet: {
localAddress: "21:4/333"
}
}
}
}
}
```
## Message Areas
The `areas` section describes a mapping of local **area tags** configured in your `messageConferences` (see
[Configuring a Message Area][/messageareas/configuring-a-message-area]) to a message network (described
above), a FTN specific area tag, and remote uplink address(s).
This section can be thought of similar to the *AREAS.BBS* file used by other BBS packages.
When ENiGMA½ imports messages, they will be placed in the local area that matches key under `areas`.
| Config Item | Required | Description |
|-------------|----------|----------------------------------------------------------|
| `network` | :+1: | Associated network from the `networks` section above |
| `tag` | :+1: | FTN area tag |
| `uplinks` | :+1: | An array of FTN address uplink(s) for this network |
### Example Configuration
```hjson
{
messageNetworks: {
ftn: {
areas: {
agoranet_bbs: { // tag found within messageConferences
network: agoranet
tag: AGN_BBS
uplinks: "46:1/100"
}
}
}
}
}
```

View File

@@ -0,0 +1,38 @@
---
layout: page
title: Netmail
---
ENiGMA support import and export of Netmail from the Private Mail area. `RiPuk @ 21:1/136` and
`RiPuk <21:1/136>` 'To' address formats are supported.
## Netmail Routing
A configuration block must be added to the `scannerTossers::ftn_bso` `config.hjson` section to tell the
ENiGMA½ tosser where to route netmail.
The following configuration would tell ENiGMA½ to route all netmail addressed to 21:* through 21:1/100,
and all 46:* netmail through 46:1/100:
````hjson
scannerTossers: {
/* other scannerTosser config removed for clarity */
ftn_bso: {
netMail: {
routes: {
"21:*" : {
address: "21:1/100"
network: fsxnet
}
"46:*" : {
address: "46:1/100"
network: agoranet
}
}
}
}
}
````
The `network` tag must match the networks defined in `messageNetworks::ftn::networks` within `config.hjson`.