All work
Industrial AI SupportAI & AutomationCase study

Fontys — Hybrid AI Troubleshooting Platform

Lets an operator fix equipment themselves, and hands them to a live expert the moment the SOP runs out.

A production troubleshooting platform that turns Excel SOPs into an AI guidance chatbot, then escalates to live human technical support with real-time agent assignment — across web and a Flutter mobile app.

Source private
Fontys — Hybrid AI Troubleshooting Platform interface
Industry
Industrial Equipment / Support
Role
Architect & Full-Stack Engineer
Type
AI System
Year
2025
Status
Delivered
Web + Mobile
Channels
Real-time
Support
Excel SOP
Knowledge Base

Overview

Fontys is a hybrid AI + human-assisted troubleshooting system for industrial equipment support. It ingests Excel-based SOPs (error codes, diagnostic steps, diagrams) as its knowledge base and provides an AI chatbot that walks operators through step-by-step resolutions, rendering diagrams and images inline.

When the AI can't resolve an issue, the platform escalates to human technical support with real-time agent assignment, a managed support queue with timeout and reassignment logic, and concurrent multi-agent support with presence tracking.

The same feature set is delivered across a Next.js web app (user + agent dashboard) and a native Flutter mobile app, both talking to a FastAPI backend over REST and WebSockets.

The problem

Equipment troubleshooting knowledge lived in static Excel SOPs that operators couldn't use effectively, and there was no clean path to escalate from self-service to a human expert when the SOP ran out.

The solution

Built a hybrid platform: an AI chatbot executes SOP steps from an ingested knowledge base; when it can't resolve, the request enters a managed queue and is assigned in real time to an available human agent — identically on web and Flutter mobile.

Technical stack

Frontend

  • Next.js
  • Flutter

Backend

  • FastAPI
  • Python
  • WebSockets
  • JWT

Data

  • PostgreSQL

AI & Processing

  • Excel Ingestion

System architecture

  1. 1

    FastAPI backend exposes REST endpoints for chatbot sessions, SOP upload, error lookup and auth, plus WebSocket endpoints for live support

  2. 2

    WebSocket channels: an agent channel and a per-session user channel route real-time assignment and messaging

  3. 3

    A Support Manager owns queue lifecycle — agent presence, timeouts and auto-reassignment

  4. 4

    Excel SOPs are ingested into a structured knowledge base (error codes, steps, diagrams)

  5. 5

    Next.js web app serves both the user chat UI and the agent dashboard; a Flutter app delivers identical features on mobile; PostgreSQL persists errors, steps, requests and agents

Engineering challenges

Challenge

Support knowledge was trapped in unstructured Excel sheets.

How I solved it

Built an ingestion pipeline that parses SOPs into a structured KB the chatbot can execute step by step, with diagrams shown inline.

Challenge

Hand-off from AI to a human had to feel seamless and never drop a user.

How I solved it

Implemented a WebSocket-based queue with presence tracking, request timeouts and automatic reassignment so waiting users are always picked up.

Core features

  • Excel SOP ingestion as a structured knowledge base
  • AI chatbot with step-by-step SOP execution
  • Inline diagrams and images in web + mobile
  • Human support escalation with real-time agent assignment
  • Support queue with timeout and auto-reassignment
  • Concurrent multi-agent support with presence tracking
  • Web (user + agent dashboard) and native Flutter mobile
  • JWT auth and error-code lookup/logging

Results & impact

Operators get instant, guided self-service for known issues and a smooth real-time escalation to human experts for the rest — the same experience whether they're on the web or the mobile app.

Screenshots

Fontys — Hybrid AI Troubleshooting Platform screenshot 1
Fontys — Hybrid AI Troubleshooting Platform screenshot 2
Fontys — Hybrid AI Troubleshooting Platform screenshot 3

What I learned

  • Hybrid AI + human-in-the-loop needs the queue/presence logic designed as a first-class system, not an afterthought.
  • Sharing one backend contract lets web and Flutter reach feature parity quickly.

Related work

All projects
Next step

Have a system like this to build?

I take projects from the first conversation through to production, and stay on for the support that follows.