Gå til innhold

Overview

What is GKIT ClubsiteCMS AI Chatbot?

GKIT ClubsiteCMS AI Chatbot is a multitenant AI assistant built into the ClubsiteCMS platform. It lets golf clubs offer an intelligent chatbot on their website — powered by Google Gemini — without guests or members needing to leave the club's site.

Key Features

  • Multitenant: One shared backend serves all enrolled clubs. Each club has its own context cache and settings.
  • Contextual AI: The chatbot answers based on the club's own data (news, activities, course info, etc.) synced nightly from SQL Server.
  • Per-club configurable: Bot name, welcome text, theme colour and logo are controlled from the CMS admin.
  • Privacy-friendly: No conversation history is stored in the database. Interactions are logged only locally to a JSONL file.
  • Low infrastructure cost: Runs as a simple uvicorn process behind an IIS reverse proxy.

Technology Stack

Layer Technology
AI model Google Gemini (gemini-2.5-flash)
API backend FastAPI + uvicorn (Python 3.10+)
Data sync Python script (sync_worker.py)
Database Microsoft SQL Server (pyodbc)
Web server IIS (Windows) with URL Rewrite
Frontend Classic ASP + Vanilla JS
CMS platform ClubsiteCMS (Golfklubb-IT)

Active Tenants

Club Folder Status
SKI Golfklubb SKI ✅ Active (live)

Additional clubs are enabled by setting boolChatbot = 1 in the Clubs table in the master database and syncing the cache.

Known Limitations (v2.0.0)

Hardcoded tenant ID

ALLOWED_TENANT_ID = "SKI" is hardcoded in API/python/app/app.py. This blocks full multitenant functionality. Removed in the v2.1 plan.

Hardcoded paths

FALLBACK_CACHE_DIR and LOG_DIR point to an absolute server path. To be replaced with environment-variable-based configuration.

See Roadmap v2 for planned improvements.