Message Base
General Information
In ENiGMA½, a message base is divided into two logical grouping components: Message Conferences and Areas. Message conferences are top level containers while areas are for a specific topic. Messages are always stored internally with a area tag.
Conferences
Message Conferences are the top level container for 1:n Message Areas via the messageConferences
block in config.hjson
. A common setup may include a local conference and one or more conferences each dedicated to a particular message network such as fsxNet, ArakNet, etc.
Each conference is represented by a entry under messageConferences
. Each entries top level key is it’s conference tag.
It is highly recommended to use snake_case style message conference tags and area tags!
Config Item | Required | Description |
---|---|---|
name |
Friendly conference name | |
desc |
Friendly conference description. | |
sort |
Set to a number to override the default alpha-numeric sort order based on the name field. |
|
default |
Specify true to make this the default conference (e.g. assigned to new users) |
|
areas |
Container of 1:n areas described below | |
acs |
A standard ACS block. See ACS below. |
ACS
An optional standard ACS block can be supplied with the following rules:
-
read
: ACS required to read (see) this conference. Defaults toGM[users]
. -
write
: ACS required to write (post) to this conference. Defaults toGM[users]
.
Example
{
messageConferences: {
local: { // conference tag
name: Local
desc: Local discussion
sort: 1
default: true
acs: {
read: GM[users] // default
}
}
}
}
Message Areas
Message Areas are topic specific containers for messages that live within a particular conference. The top level key for an area sets it’s area tag. For example, “General Discussion” may live under a Local conference while an fsxNet conference may contain “BBS Discussion”.
Config Item | Required | Description |
---|---|---|
name |
Friendly area name. | |
desc |
Friendly area description. | |
sort |
Set to a number to override the default alpha-numeric sort order based on the name field. |
|
default |
Specify true to make this the default area (e.g. assigned to new users) |
|
acs |
A standard ACS block. See ACS below. | |
autoSignatures |
Set to false to disable auto-signatures in this area. |
|
realNames |
Set to true to use real names in this area. |
ACS
An optional standard ACS block can be supplied with the following rules:
-
read
: ACS required to read (see) this area. Defaults toGM[users]
. -
write
: ACS required to write (post) to this area. Defaults toGM[users]
.
Example
messageConferences: {
local: {
// ... see above ...
areas: {
enigma_dev: { // Area tag - required elsewhere!
name: ENiGMA 1/2 Development
desc: ENiGMA 1/2 development and discussion!
sort: 1
default: true
acs: {
read: GM[users] // default
write: GM[l33t] // super elite ENiGMA 1/2 users!
}
}
}
}
}
Importing
FidoNet style .na
files as well as legacy AREAS.BBS
files in common formats can be imported using oputil.js mb import-areas
. See The oputil CLI for more information and usage.