Merge branch 'master' of ssh://numinibsd/git/base/enigma-bbs into 280-config-revamp

This commit is contained in:
Bryan Ashby 2020-07-12 18:34:07 -06:00
commit 313f594633
No known key found for this signature in database
GPG Key ID: B49EB437951D2542
3 changed files with 26 additions and 7 deletions

View File

@ -67,6 +67,7 @@ exports.getModule = class DoorPartyModule extends MenuModule {
if(doorTracking) {
trackDoorRunEnd(doorTracking);
doorTracking = null;
}
}
};
@ -103,6 +104,10 @@ exports.getModule = class DoorPartyModule extends MenuModule {
self.client.term.rawWrite(d);
});
stream.on('end', () => {
sshClient.end();
});
stream.on('close', () => {
restorePipe();
sshClient.end();

View File

@ -51,14 +51,22 @@ class TelnetClientConnection extends EventEmitter {
constructor(client) {
super();
this.client = client;
this.client = client;
this.dataHits = 0;
}
updateActivity() {
if (0 === (this.dataHits++ % 4)) {
this.client.explicitActivityTimeUpdate();
}
}
restorePipe() {
if(!this.pipeRestored) {
this.pipeRestored = true;
this.client.dataPassthrough = false;
this.client.restoreDataHandler();
// client may have bailed
if(null !== _.get(this, 'client.term.output', null)) {
@ -75,11 +83,15 @@ class TelnetClientConnection extends EventEmitter {
this.emit('connected');
this.pipeRestored = false;
this.client.dataPassthrough = true;
this.client.term.output.pipe(this.bridgeConnection);
this.client.setTemporaryDirectDataHandler(data => {
this.updateActivity();
this.bridgeConnection.write(data);
});
});
this.bridgeConnection.on('data', data => {
this.updateActivity();
this.client.term.rawWrite(data);
//

View File

@ -1,15 +1,17 @@
---
layout: page
title: Configuring a Message Area
title: Message Base
---
## Message Conferences
**Message Conferences** and **Areas** allow for grouping of message base topics.
## 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*.
:information_source: It is **highly** recommended to use snake_case style message *conference tags* and *area tags*!
| Config Item | Required | Description |
|-------------|----------|-------------|
| `name` | :+1: | Friendly conference name |