Skip to content

Octavia

Automated identity verification and AI-powered campus event syndication for the Universiti Teknologi Malaysia (UTM) Johor Bahru Community.


Live System Overview

  • Verified Users


    /

    Today / All Time

  • Emails Processed


    /

    Today / All Time

Explore Detailed Analytics → View Commands


Core Capabilities

Octavia is a resilient architecture designed specifically for university Discord communities. It combines three robust subsystems under a single sharded process protected by a centralized AIGateway Circuit Breaker:

Secures server access by confirming student and faculty institutional domain ownership (@graduate.utm.my, @utm.my).

  • One-Time Password (OTP): Generates a secure 6-digit verification code delivered via high-priority HTML email.
  • Domain-Specific Roles: Maps different email suffixes to distinct Discord roles (e.g., undergraduates vs. postgraduates).
  • Zero Plaintext Storage: Protects student privacy by storing cryptographic MD5 hashes rather than raw email addresses.
  • Granular Security: Features custom wildcard allowlists (/domain add) and instant blacklist filtering (/blacklist add).

Monitors public campus Telegram broadcasts and syndicates rich, structured event cards directly into Discord forum threads.

  • Multi-Layer Deduplication: Filters broadcast noise using a 4-tier pipeline (Message ID → MD5 Content Hash → 64-bit SimHash near-duplicate detection → Title Hash).
  • Gemini AI via @google/genai: Automatically classifies posts, extracts key metadata (date, location, cost, merit points, registration links), and translates Malay announcements into English.
  • Interactive Spam Moderation: Community members can click "🚨 Report as Spam" on event cards to send interactive moderation alerts (with thread deletion and dismissal buttons) directly to admin report channels.
  • Dynamic Model Routing: Admins can customize the underlying Gemini AI model per-server (e.g., switching between Flash and Pro tiers) using the /config type:models command.
  • Circuit Breaker Resilience: Automated timeout recovery and rate-limit circuit breaking via AIGateway.
  • Automated Lifecycle: Automatically locks and archives forum threads once event end-dates have passed.

Provides instant, verified answers to campus questions right inside Discord.

  • Command: /askai <question>
  • Authoritative Grounding: Restricts search strictly to official sources (utm.my and utm.gitbook.io).
  • Dynamic Model Configuration: Admins can tailor the AI chatbot's model per-server via /config type:models.
  • Public Access: Available to any server member without administrative privileges.

Quick Navigation

  • Source Repository


    Explore the open-source codebase, report issues, or contribute new features to the bot.

    View GitHub Repository

  • Community Discord


    Join the Universiti Teknologi Malaysia (UTM) Johor Bahru Community Discord server.

    Join Discord Server

  • Student Guidebook


    Access comprehensive student guides, academic notes, and campus resources.

    Read utm.gitbook.io


Legal Disclaimer

UTM Johor Bahru Community (UTMJBC) and Octavia are independent student-led initiatives. They are not affiliated with, sponsored by, or officially endorsed by Universiti Teknologi Malaysia (UTM).