home bbs chatroom files | messages | login ]

      FPYTH173             PYTHON             103 messages      

[ list messages | list forums | previous | next ]

  Msg # 82 of 103 on FPYTH173, Thursday 1-21-26, 7:47  
  From: STEPHEN WALSH  
  To: ALL  
  Subj: PyGate Has been released  
  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)  

[ list messages | list forums | previous | next ]

352,367 visits
(c) 1994,  bbs@darkrealms.ca