home bbs files messages ]

Just a sample of the Echomail archive

<< oldest | < older | list | newer > | newest >> ]

 Message 80 
 Stephen Walsh to All 
 PyGate Has been released 
 22 Jan 26 11:36:10 
 
MSGID: 3:633/280 697170fb
CHRS: CP437 2
TZUTC: 1100
TID: hpt/lnx 1.9 2024-03-02
Hello everybody!


PyGate - Python FidoNet-NNTP Gateway, has been released to the public.

PyGate is a Python-based gateway system that bridges FidoNet echomail and NNTP
newsgroups, allowing seamless message exchange between the two networks.

Version: 1.5.2
Author: Stephen Walsh
Contact: vk3heg@gmail.com | FidoNet 3:633/280 | FSXNet 21:1/195 | Amiganet
39:901/280
Based on: SoupGate by Tom Torfs

Features
Core Functionality

    Bidirectional Gateway: Messages flow seamlessly between FidoNet and NNTP
    Flexible Deployment Modes: Full gateway mode or client-only mode
    Area Mapping: Flexible mapping between FidoNet areas and NNTP newsgroups
    Message Hold System: Manual review and approval of messages
    Spam Filtering: Advanced regex-based filtering with built-in patterns
    Netmail Notifications: Automatic notifications for held messages
    Areafix Support: Dynamic area management via netmail with wildcard
protection
    Character Set Handling: Proper encoding conversion per FTS standards

Advanced Features

    Message Deduplication: Prevents duplicate messages
    Cross-posting Control: Configurable limits on cross-posted messages
    Timezone Support: Proper timezone handling (TZUTC)
    Message Threading: Preserves reply chains and references
    Administrative Panel: Admin panel interface for message review of held
messages, filter management, newsrc management, newsgroups list viewing.

Requirements

    Python 3.7 or higher
    NNTP server access
    FidoNet mailer (binkd recommended)
    Required Python packages:
        configparser
        pathlib
        logging
        datetime
        uuid
        json
        paramiko (for SSH/remote ctlinnd on Windows deployments)
        psutil (for automation script process management)


Deployment Modes

PyGate supports two deployment modes:
Full Gateway Mode (Default)

In this mode, PyGate manages both the NNTP connection and the server
configuration:

    Updates local newsrc file when areas are added/removed
    Executes ctlinnd commands to create/remove newsgroups on NNTP server
    Requires server administrative privileges or SSH access
    Best for deployments where PyGate runs on or manages the news server

[Gateway]
client_mode = false  # or omit this line (false is default)

Client-Only Mode

In this mode, PyGate operates as a standard NNTP client without server
management:

    Updates local newsrc file when areas are added/removed
    Does NOT execute ctlinnd commands
    Assumes newsgroups already exist on the remote NNTP server
    Does not require server administrative privileges
    Best for connecting to external/remote news servers you don't control

[Gateway]
client_mode = true

When to use client-only mode:

    Connecting to a remote news server you don't administer
    Using a commercial or third-party news provider
    Testing PyGate without affecting server configuration
    Security-restricted environments where ctlinnd access is unavailable

Note: In client-only mode, areafix operations will still update your local
newsrc file, but you must ensure the corresponding newsgroups exist on the NNTP
server before subscribing to them.


Message Hold System

The hold system allows manual review of messages before they are gated,
providing control over message flow. When areas are remapped to fidonet
echomail
areas. This is mainly to protect fidonet from usenet spam.

Configuration

Enable holding in pygate.cfg:

[Arearemap]
Hold = yes
notify_sysop = yes

How It Works

    Message Evaluation: Each message is checked against area mappings
    Hold Decision: Messages in mapped areas are held for review
    Notification: Netmail sent to sysop (once per hour maximum)
    Review Process: Admin reviews messages via admin panel
    Action: Messages are approved, rejected, or archived

Notification System

When messages are held:

    Netmail sent to sysop at linked_address
    Rate Limited: Maximum one notification per hour
    Comprehensive: Lists all areas with pending messages
    Tracking: State saved in hold/notifications.json





https://github.com/vk3heg/pygate




Vorlon


--- GoldED+/LNX 1.1.5-b20250409
 * Origin: Dragon's Lair ---:- dragon.vk3heg.net -:--- Prt: 6800 (3:633/280)
SEEN-BY: 105/81 106/201 128/187 129/14 153/7715 154/110 218/700 226/30
SEEN-BY: 227/114 229/110 112 134 206 300 317 400 426 428 470 616 664
SEEN-BY: 229/700 705 266/512 280/464 291/111 320/219 322/757 342/200
SEEN-BY: 396/45 460/58 633/267 280 414 418 420 422 2744 712/848 770/1
SEEN-BY: 902/26 5075/35
PATH: 633/280 229/426


<< oldest | < older | list | newer > | newest >> ]

(c) 1994,  bbs@darkrealms.ca