This is a fork of the TC²-BBS system integrated with Meshtastic devices. The system allows for message handling, bulletin boards, mail systems, and a channel directory.
Enter a list of other BBS nodes you would like to sync messages and bulletins with. Separate each by comma and no spaces as shown in the example below.
You can find the nodeID in the menu under `Radio Configuration > User` for each node, or use this script for getting nodedb data from a device:
[Meshtastic-Python-Examples/print-nodedb.py at main · pdxlocations/Meshtastic-Python-Examples (github.com)](https://github.com/pdxlocations/Meshtastic-Python-Examples/blob/main/print-nodedb.py)
The file is currently setup for a user named 'pi' and assumes that the TC2-BBS-mesh directory is located in the home directory (which it should be if the earlier directions were followed)
We just need to replace the 4 parts that have "pi" in those 3 lines with your username.
2.**Configuring systemd**
From the TC2-BBS-mesh directory, run the following commands:
```sh
sudo cp mesh-bbs.service /etc/systemd/system/
```
```sh
sudo systemctl enable mesh-bbs.service
```
```sh
sudo systemctl start mesh-bbs.service
```
The service should be started now and should start anytime your device is powered on or rebooted. You can check the status of the service by running the following command:
```sh
sudo systemctl status mesh-bbs.service
```
If you need to stop the service, you can run the following:
```sh
sudo systemctl stop mesh-bbs.service
```
If you need to restart the service, you can do so with the following command:
```sh
sudo systemctl restart mesh-bbs.service
```
2.**Viewing Logs**
Viewing past logs:
```sh
journalctl -u mesh-bbs.service
```
Viewing live logs:
```sh
journalctl -u mesh-bbs.service -f
```
## Radio Configuration
Note: There have been reports of issues with some device roles that may allow the BBS to communicate for a short time, but then the BBS will stop responding to requests.
The following device roles have been working:
- **Client**
- **Router_Client**
## Features
- **Mail System**: Send and receive mail messages.
- **Bulletin Boards**: Post and view bulletins on various boards.
- **Channel Directory**: Add and view channels in the directory.
- **Statistics**: View statistics about nodes, hardware, and roles.
- **Wall of Shame**: View devices with low battery levels.
- **Fortune Teller**: Get a random fortune. Pulls from the fortunes.txt file. Feel free to edit this file remove or add more if you like.
## Usage
You interact with the BBS by sending direct messages to the node that's connected to the system running the Python script. Sending any message to it will get a response with the main menu.
Make selections by sending messages based on the letter or number in brackets - Send M for [M]ail Menu for example.
A video of it in use is available on our YouTube channel:
For the JS8Call side of things, big thanks to Jordan Sherer for JS8Call and the [example API Python script](https://bitbucket.org/widefido/js8call/src/js8call/tcp.py)