• BinktermPHP 1.8.9 Released

    From awehttam@21:3/236 to All on Sun Mar 29 08:01:57 2026
    BinktermPHP 1.8.9 is now available! This is a broad feature release
    touching nearly every part of the system. Highlights below.

    INTERESTS
    * Admins define named topic groups bundling echo areas and file areas.
    Users subscribe with one click and are enrolled in all member areas.
    * Card-based user interest picker at /interests with optional per-area
    selection.
    * New users are guided through interest selection during onboarding.
    * Echomail reader gains an Interests tab and area list filter.
    * Activity Statistics includes a Popular Interests tab.
    * Controlled by ENABLE_INTERESTS in .env.

    REAL-TIME EVENTS (BINKSTREAM)
    * Unread badge counts for echomail, netmail, files, and file approvals
    are now pushed from the server -- no more client-side polling.
    * Message lists refresh silently in the background without a spinner.
    * Marking a message read in one tab reflects in all other open tabs.
    * realtime_server.php is now a core daemon alongside binkp_server.php.

    ECHOMAIL & NETMAIL
    * Right-click context menu (long-press on mobile) on message list rows.
    * Per-user ignore rules: block by sender name, node address, or subject.
    * Show Entire Conversation mode loads the full thread in one click.
    * Raw Source mode (A key cycle) shows message bytes verbatim.
    * Compose-time warning when approaching the 16 KB FidoNet message limit.
    * Fixed pipe code false-positive rendering English words with green
    backgrounds (e.g. |Advertise).

    FILE AREAS
    * Non-admin uploads land in a pending approval queue.
    * New Admin -> File Approvals page to review, scan, approve, or reject.
    * Users have a My Uploads view showing pending/approved/rejected status.
    * Live notification badge on the Files menu for pending approvals.
    * Activity Statistics excludes private file areas from public totals.

    AREAFIX / FILEFIX MANAGER
    * New admin tool at /admin/areafix for managing echo area subscriptions
    with the upstream hub's robots.
    * One-click quick-action buttons; incoming replies shown in a panel.
    * AreaFix/FileFix subjects masked to protect passwords in all views.

    QWK OFFLINE MAIL
    * HTTP Basic Auth endpoints at /qwk/download and /qwk/upload for
    scripted access by external offline-mail tools.
    * Optional standalone FTP daemon (scripts/ftp_daemon.php).
    * Users choose exactly which echo areas appear in their QWK packets.

    BINKP CONFIGURATION
    * Visual schedule builder for poll schedule cron expressions.
    * On-demand connectivity check button per uplink on the BinkP page.
    * Packet filenames in queue lists are clickable -- opens packet inspector.
    * Session log now covers normal inbound and outbound sessions, not just
    crash mail. Log records include process ID and log filename.
    * Old session log rows purged after 30 days (configurable via
    BINKP_SESSION_LOG_RETENTION_DAYS).

    ECHOMAIL MCP SERVER
    * Optional Model Context Protocol server gives AI assistants read-only
    access to echomail. Per-user bearer keys generated from Settings -> AI.
    * See docs/MCPServer.md for setup.

    AI PROVIDER LAYER
    * New abstracted AI provider layer supports Anthropic and OpenAI as
    backends. Admin usage report at /admin/ai-usage.

    TELNET / SSH BBS SERVER
    * System news from data/systemnews.md shown after login in a framed
    terminal screen.
    * Interests menu (I) for browsing and subscribing to topic groups.
    * QWK Offline Mail now supports ZMODEM download and upload -- no
    external tools required.

    USER SETTINGS
    * Settings page reorganized into tabbed layout: Display, Messaging,
    Notifications, and Account.
    * Notification sound preview button added.
    * Messaging tab includes an Ignored Echomail management section.

    USER PROFILE
    * New About Me field on the edit profile page. Content is rendered as
    Markdown on the public profile page.
    * Activity log timestamps now shown in the viewer's configured timezone.
    * "Last seen" label corrected to "Last login".
    * Edit profile page has a View Profile button linking to the public
    profile.

    DASHBOARD
    * Today's Callers is now a table with User, Time, and Online columns.
    * New Active BinkP Sessions card with live refresh.

    ADVERTISING
    * Content commands restricted to an approved whitelist.
    * Ads now support a Click-through URL. Impressions and clicks tracked
    and displayed on a new Ad Analytics page at /admin/ad-analytics.

    BROADCAST MANAGER
    * Campaign editor has a Clone action to duplicate a campaign.

    APPEARANCE
    * New Login tab lets sysops configure /login with a standard form or
    an ANSI-driven login screen with the prompt appended after the art.
    * ANSI size presets: 80x25, 132x24, 132x43, 132x50, and Full Screen.
    * New Term Server tab for editing the telnet/SSH welcome, menu, and
    goodbye ANSI screens from the browser.

    MRC CHAT
    * /join <room> slash command added.
    * Restructured interface with connect screen and room dropdown.
    * Users can set a custom MRC handle instead of their BBS username.
    * Private messages now appear inline in the main message stream.
    * Room updates delivered via BinkStream instead of client polling.

    TELNET / SSH BBS SERVER
    * System News from data/systemnews.md shown after login in a framed
    terminal screen before the shoutbox.
    * Interests menu (I) for browsing and subscribing to topic groups.
    * QWK now supports ZMODEM download and upload -- no external tools
    required.

    CLI TOOLS
    * New scripts/fix_date_received.php resets date_received to date_written
    for echomail rows in specified areas. Useful after a %RESCAN import.

    For a full list of changes please consult the UPGRADING guide located at:
    https://github.com/awehttam/binkterm-php/blob/main/docs/UPGRADING_1.8.9.md

    I hope you enjoy this release!

    Matthew
    https://lovelybits.org/binktermphp


    ~ awehttam @1:153/150 @gmail.com | www.lovelybits.org

    ... Even a stopped clock, keeps the right time twice a day

    --- BinktermPHP v1.8.9
    * Origin: Claude's BBS - https://claudes.lovelybits.org (21:3/236)
    * Origin: This origin line was automagically created for (21:3/236.0)