Just a sample of the Echomail archive
Cooperative anarchy at its finest, still active today. Darkrealms is the Zone 1 Hub.
|    LINUX_BBS    |    Linux BBSing    |    935 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 924 of 935    |
|    Sean Rima to All    |
|    PKT Reporter released    |
|    01 Feb 26 13:24:51    |
      TZUTC: 0000       PID: FTools-lnx 2.3.2.6-B20251227       MSGID: 2:263/1 97f54230       Available at https://github.com/thecivvie/PKT-Reporter-for-Fidget-FTN-Systems              # pkt_report / pkt_indexer              A small, practical toolkit for indexing, analysing, and reporting       FidoNet-style packet and echomail traffic using SQLite.              Built for sysops who like clear stats, tidy reports, and scripts that       don’t get in the way.              Developed and used in real-world BBS / FTN environments.              -----------------------------------------------------------------------              ## 📦 What’s Included              This repository contains three core tools that work together:              ### pkt_indexer.py       Indexes FTN packets and messages into a SQLite database.              What it does:       - Parses incoming packet/message data       - Stores per-message metadata       - Tracks areas, posters, dates, sizes, and message characteristics              Data captured (depending on configuration):       - Area name       - Origin / poster       - Message date       - Message size (bytes)       - Line count (excluding kludges)       - Quoted percentage              This script is normally run periodically or via cron as packets arrive.              -----------------------------------------------------------------------              ### pkt_db_check.py       Validates and prepares the SQLite database schema.              What it does:       - Checks the database exists and is accessible       - Verifies required tables and columns       - Creates missing tables/columns if needed       - Ensures schema compatibility with newer report features              This allows the reporter to evolve without breaking existing databases.              -----------------------------------------------------------------------              ### pkt_report.py       Generates human-readable traffic reports from the indexed data.              Supported reports:       - Daily traffic tables by area       - Totals and per-day breakdowns       - TOP reports (posters, areas, message sizes)              Notable features:       - Clean day-based headers (robust across month changes)       - Optional filtering by area or zone       - TOP reports including:        - Total messages        - Total bytes posted        - Average message size        - Largest individual messages              Output is designed for terminal, email, or BBS posting.              -----------------------------------------------------------------------              ## 🛠 Requirements              - Python 3.8+       - SQLite3 (standard library)       - No third-party dependencies              Tested on:       - Linux (including Raspberry Pi)       - macOS              -----------------------------------------------------------------------              ## 🚀 Typical Workflow              1. Index packets as they arrive:               python3 pkt_indexer.py --folder /path/to/pkts --db pkt_index.db --delete              2. Verify / inspect the database (safe to re-run):               python3 pkt_db_check.py --db pkt_index.db              3. Generate reports:               python3 pkt_report.py --db pkt_index.db --date WEEK              -----------------------------------------------------------------------              ## 🧰 Usage / CLI              ### pkt_indexer.py       Indexes *.pkt files into SQLite.              Common options:       - --folder, -f Folder containing .pkt files (default: current directory)       - --db, -d SQLite database path (default: pkt_index.db)       - --recursive Scan subfolders for .pkt       - --delete Delete .pkt files after successful import       - --test Parse and display data without writing to DB              Examples:              Index a spool directory recursively:        python3 pkt_indexer.py -f /home/fmail/ftn/inbound --recursive -d pkt_index.db              Test parsing without DB writes:        python3 pkt_indexer.py -f /home/fmail/ftn/inbound --test              Import and delete packets after success:        python3 pkt_indexer.py -f /home/fmail/ftn/inbound --recursive --delete              -----------------------------------------------------------------------              ### pkt_db_check.py       Database inspector / sanity checker.              Common options:       - --db, -d SQLite database path (default: pkt_index.db)       - --limit, -n Number of sample rows to display (default: 20)              Example:               python3 pkt_db_check.py -d pkt_index.db -n 50              -----------------------------------------------------------------------              ### pkt_report.py       Generates traffic summary tables and TOP reports.              Date range options (pick one):       - --date WEEK | MONTH | CMONTH        WEEK = last 7 days        MONTH = previous calendar month        CMONTH = current calendar month so far       - --days N       - --from YYYY-MM-DD --to YYYY-MM-DD              Report shaping:       - --period auto | month | day       - --area-width N              Area inclusion / exclusion:       - --known-areas FILE       - --only-areas FILE       - --exclude-areas FILE              Files may be .txt (one area per line, # comments allowed) or .json.              TOP mode:       - --top ECHO        Shows top posters and message-size statistics (if size data exists)              Examples:              Last 7 days:        python3 pkt_report.py -d pkt_index.db --date WEEK              Last 30 days:        python3 pkt_report.py -d pkt_index.db --days 30              Explicit date range:        python3 pkt_report.py -d pkt_index.db --from 2026-01-26 --to 2026-02-01              Include known areas:        python3 pkt_report.py -d pkt_index.db --date WEEK --known-areas known.txt              Only selected areas:        python3 pkt_report.py -d pkt_index.db --date WEEK --only-areas areas.json              Exclude areas:        python3 pkt_report.py -d pkt_index.db --date WEEK --exclude-areas exclude.txt              TOP report for one echo:        python3 pkt_report.py -d pkt_index.db --date WEEK --top MIN_CHAT              -----------------------------------------------------------------------              ## 📊 Example Output              Statistics from 26-Jan-26 to 01-Feb-26              Area 26 27 28 29 30 31 01 Total       ============================================================================       MIN_CHAT 4 6 3 9 2 1 5 : 30       MIN_WEATHER 1 0 2 1 0 3 2 : 9       ============================================================================       TOTALS 5 6 5 10 2 4 7 : 39              TOP message size example:              === TOP POSTERS BY TOTAL MESSAGE SIZE ===       Poster Messages Total KB Avg KB Max KB       ------------------------------------------------------       Sean 42 418.2 9.9 22.1       MurphyBot 18 146.5 8.1 18.6              -----------------------------------------------------------------------              ## 🧠 Design Notes              - Internal date keys are used for correctness       - Display formatting prioritises readability       - Schema changes are handled defensively       - Scripts are intentionally simple and hackable              -----------------------------------------------------------------------              ## 📜 License              MIT License              Copyright (c) 2026 Sean Rima and Murphy              Permission is hereby granted, free of charge, to any person obtaining a copy       of this software and associated documentation files (the "Software"), to deal       in the Software without restriction.              THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND.              -----------------------------------------------------------------------              ## ☕ Final Words              If you’re running an FTN-style system in 2026 and still care about good       stats,       this is for you.              Pull requests welcome. Hacks encouraged. Coffee optional but recommended.              --- FMail-lnx 2.3.2.6-B20251227        * Origin: TCOB1 A Mail Only System (2:263/1)       SEEN-BY: 103/705 105/81 106/201 124/5016 128/187 129/14 305 153/757       SEEN-BY: 153/7715 154/10 30 110 203/0 218/700 221/0 222/2 226/30 227/114       SEEN-BY: 229/110 112 134 206 300 307 317 400 426 428 470 616 664 700       SEEN-BY: 229/705 240/1120 5832 263/1 266/512 280/464 5003 291/111       SEEN-BY: 292/854 8125 301/1 310/31 320/219 322/757 341/66 234 342/200       SEEN-BY: 396/45 423/120 460/58 256 1124 633/280 712/848 770/1 902/26       SEEN-BY: 5020/400 8912 5054/30 5075/35 6078/80       PATH: 263/1 280/464 460/58 229/426           |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca