Skip to content

About

No description, website, or topics provided.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

                    ██████╗ ███████╗████████╗████████╗███████╗██████╗
                    ██╔══██╗██╔════╝╚══██╔══╝╚══██╔══╝██╔════╝██╔══██╗
                    ██████╔╝█████╗     ██║      ██║   █████╗  ██████╔╝
                    ██╔══██╗██╔══╝     ██║      ██║   ██╔══╝  ██╔══██╗
                    ██████╔╝███████╗   ██║      ██║   ███████╗██║  ██║
                    ╚═════╝ ╚══════╝   ╚═╝      ╚═╝   ╚══════╝╚═╝  ╚═╝

  ███╗   ██╗███████╗██╗    ██╗███████╗ ██████╗ ██████╗  ██████╗ ██╗   ██╗██████╗ ███████╗
  ████╗  ██║██╔════╝██║    ██║██╔════╝██╔════╝ ██╔══██╗██╔═══██╗██║   ██║██╔══██╗██╔════╝
  ██╔██╗ ██║█████╗  ██║ █╗ ██║███████╗██║  ███╗██████╔╝██║   ██║██║   ██║██████╔╝███████╗
  ██║╚██╗██║██╔══╝  ██║███╗██║╚════██║██║   ██║██╔══██╗██║   ██║██║   ██║██╔═══╝ ╚════██║
  ██║ ╚████║███████╗╚███╔███╔╝███████║╚██████╔╝██║  ██║╚██████╔╝╚██████╔╝██║     ███████║
  ╚═╝  ╚═══╝╚══════╝ ╚══╝╚══╝ ╚══════╝ ╚═════╝ ╚═╝  ╚═╝ ╚═════╝  ╚═════╝ ╚═╝     ╚══════╝

A two-way gateway between Usenet newsgroups and the forums of The Major BBS v10.

By Sysop Network — https://github.com/SysopNetwork/Better-Newsgroups

Major BBS License Platform Release

📋 See what's new in v1.0.0 →


Articles in a newsgroup appear as messages in a BBS forum, threaded the way they were on Usenet. Messages your users write in that forum are posted back to the newsgroup. Everything runs inside the BBS as one module (SNBETNWS), with no external programs or scheduled tasks to set up.


✨ Features

Feature Description
🔁 Import and export Each linked newsgroup can bring articles in, send forum messages out, or both
📰 Any NNTP server Works with any news server, with an AUTHINFO login when the server needs one
🔒 Encrypted connections TLS (usually port 563) or STARTTLS, with certificate checking
🧵 Threading kept both ways Usenet replies are filed in the right forum thread; BBS replies carry proper References headers
🚫 No loops or duplicates Imported messages are never posted back, and the module recognizes its own posts when the server sends them back
🔤 Readable text MIME, quoted-printable, Base64, UTF-8 and other character sets become CP437; HTML-only articles become plain text; long articles are split across messages
✉️ Posts look right on Usenet UTF-8 text with colour codes removed, the user's BBS mail address, an optional signature line and Organization
📚 Backfill A new group can start with its last 0–9999999 articles, or ALL the server still has, read over several checks
📤 Reliable posting An outgoing queue with retries; if a post finally fails, the author gets a BBS e-mail saying why
🛠️ All settings online Changed from the module's Sysop menu while the board runs, applied at once, with no CNF options
⚡ Never slows the board All network work happens on a background thread
📜 Audit Trail and transcript Problems (and, if wanted, normal activity) go to the Audit Trail; an optional server transcript never contains passwords

🚀 Installation

Requirements

  • The Major BBS v10 (the module is 32-bit, like every v10 module, and runs on 64-bit Windows)
  • An account on an NNTP news server

Steps

  1. Download Better-Newsgroups-v1.0.0.zip from Releases.
  2. Copy SNBETNWS.DLL, SNBETNWS.MDF, SNBETNWS.MSG and SNBETNWS.RLN to the BBS directory.
  3. Add Better Newsgroups to a Sysop menu with the Menu Tree Editor.
  4. Restart the BBS. The data files (SNBETNWS.DAT, SNBETMID.DAT) are created on first start.

Quick start

Enter the module from the menu (the SYSOP key is required).

  1. Settings 2–7: your news server, port, connection security and login.
  2. G: link each newsgroup to a forum. Create the forums first with the usual forum tools.
  3. Setting 1 to YES, then C to check right away. The status line and the Audit Trail show the result.

Each setting has help: type ? at its prompt, or H and its number at the menu.


⚙️ Configuration

All settings live in SNBETNWS.DAT and are edited online from the module's Sysop menu. A change applies at once; there are no CNF options.

🌐 News server

# Setting Description Default
1Gateway enabledTurns all checking and posting on or offNO
2News serverHost name of the NNTP server(none)
3News server port119 for plain or STARTTLS, 563 for TLS119
4Connection securityNONE, STARTTLS or TLSNONE
5Verify TLS certificateCheck the server's certificate (recommended)YES
6Login nameAUTHINFO login name; - for none(none)
7PasswordAUTHINFO password, never shown once set; - clears it(none)
8Check every (minutes)How often the server is checked, 1–144010
9Timeout (seconds)How long to wait for the server, 10–30060

📥 Import

# Setting Description Default
10Articles for a new groupHow many existing articles a new link starts with: 0–9999999, or ALL50
11Most articles per checkPer newsgroup, 1–1000; a larger backlog continues next check200
12Largest article (KB)Larger articles are imported as a short notice, 4–102464
19Sender line in messagesPut the sender's name, address and the date at the top of imported messagesYES
20Word-wrap columnWord-wrap imported text at this column, 40–132; 0 leaves lines as sent79
21Keep Message-IDs (days)How long the BBS remembers which forum message is which article (no duplicates, threading), 7–3650365

📤 Export

# Setting Description Default
13From nameDisplay name on posts; {USER} = User-ID, {BBS} = BBS name{USER}
14Message-ID host nameHost name in each post's Message-ID; set it when the mail host name is not a real domainBBS mail host name
15OrganizationOne-line Organization header(none)
16Key needed to postLimit posting to Usenet to users holding this keyanyone who can write in the forum
17Retry interval (minutes)Wait between attempts to send a post, 1–144015
18Give up after (hours)A post still unsent after this long is dropped and its author told, 1–72048

📜 Logging

# Setting Description Default
22Audit normal activityRecord each check that found articles, and each post sent, in the Audit TrailNO
23Audit errorsWrite problems to the Audit TrailYES
24Transcript log fileRecord the server conversation in SNBETNWS.LOG (passwords are never written)NO

🔗 Newsgroup links (G)

Each link joins one newsgroup to one forum. Several newsgroups may share one forum; export then posts to all of them at once, as one cross-posted article.

Setting Description
NewsgroupThe newsgroup's name, exactly as the news server lists it
ForumThe BBS forum it is linked to
Import articlesCopy the group's articles into the forum
Export messagesPost what users write in the forum to the group
Next article numberThe next article to read; 0 starts over with the newest articles (setting 10), without importing anything twice

🧭 Sysop menu

Key Action
1–24 Change a setting
N Other page of settings
G Newsgroup links
C Check the news server now
Q Posts waiting to be sent
H Help (H 12 explains setting 12)
X Exit

💬 Usage

Users read and write in the linked forums as they do in any other forum. Forum access settings decide who can read and who can post; setting 16 can further limit posting to Usenet to users who hold a key.

A forum's message lifetime still applies: the BBS's nightly cleanup removes older imported articles like any other forum message.


📁 Architecture

Better-Newsgroups/
├── SRC/
│   ├── SNBETNWS.C        # module: Sysop menu, settings, import, export hook, timer
│   ├── BNWORK.C          # background worker: one news server session per check
│   ├── BNNNTP.C          # NNTP client (AUTHINFO, GROUP, ARTICLE, POST, STARTTLS)
│   ├── BNART.C           # articles in and out (headers, MIME, References)
│   ├── BNSPOOL.C         # incoming spool between the worker and the BBS thread
│   ├── BNVER.H           # the version number
│   ├── SNBETNWS.MSG      # all text the module shows (CP437, Sysop-editable)
│   ├── SNBETNWS.MDF      # module definition
│   ├── SNBETNWS.RLN      # release notes / online manual
│   └── SHARED/           # TLS sockets, MIME and character set code
├── TESTS/                # BNTEST unit tests
├── TOOLS/                # BNFETCH command-line test tool
└── DIST/v1.0.0/          # the deployable files

The network work runs on a background thread that never touches the BBS. Articles it fetches are written to SNBETNWS\IN\ and imported into forums a few at a time by the BBS's own thread. A message written in a linked forum is turned into an article at once, queued in SNBETNWS\OUT\, and posted by the worker. SNBETMID.DAT maps every Message-ID to its forum message, which is how threads are kept and loops prevented.

See TECHNICAL.MD for the details and BUILDING.MD to build from source.


🛟 Support

Report problems at https://github.com/SysopNetwork/Better-Newsgroups/issues. Include the Audit Trail lines and, if you can, a transcript from setting 24. The transcript never contains passwords.


🏆 Credits

Better Newsgroups is developed and maintained by Mark Laudenbach at Sysop Network.

The files in SRC/SHARED/ are shared with Sysop Network's Better Internet Email.


💖 Tips / Donations

If this module is useful to you, tips are appreciated:


📄 License

MIT — Copyright (c) 2026 Sysop Network. See LICENSE.


Better Newsgroups for The Major BBS v10 by Mark Laudenbach - https://github.com/laudenbachm

About

No description, website, or topics provided.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages