Files

3.4 KiB

Disco Service Tracker Plugin

Enhanced service/support tracking plugin for Disco ICT that augments the built-in job management system with priority management, device location tracking, a visual tile dashboard, and SLA monitoring.

Features

Priority Management

  • 5 default priority levels: Critical (4h SLA), High (8h), Medium (24h), Low (72h), Scheduled (no SLA)
  • Fully customisable — add/remove/rename priorities, set your own SLA timeframes
  • Colour-coded for at-a-glance identification

Device Location Tracking

  • Track where each device currently sits: IT Office, With User, At Repairer, In Transit, Storage, Disposed
  • Customisable locations with icons and colours
  • Filter dashboard by location

Tile Dashboard

  • Visual card-based view of all open jobs
  • Each tile shows: device name, user, location badge, priority, status, assigned tech, ETA, latest note
  • Sort by due date, priority, age, SLA status, or last updated
  • Filter by priority, location, status, or assigned technician
  • SLA breach alerts with pulsing red borders
  • Tech workload summary bar

SLA Monitoring

  • Automatic SLA deadline calculation based on priority level
  • Breach detection with prominent alert banners
  • Warning indicators when approaching SLA deadline (within 25%)

Activity Notes

  • Add timestamped notes to any ticket
  • Note types: General, Update, Escalation, Resolution
  • Visual timeline on ticket detail page

Export

  • CSV export of all open tickets with full metadata

Building

.\Build-Plugin.ps1 -DiscoBinPath "C:\Program Files\Disco\WebApp\bin"

This will:

  1. Resolve references against your Disco installation
  2. Build the plugin DLL
  3. Generate the manifest.json
  4. Package everything into a .discoPlugin file

Installation

  1. Build the plugin (see above)
  2. In Disco ICT, go to Configuration > Plugins > Install Plugin
  3. Upload the .discoPlugin file
  4. Restart the Disco web service
  5. Access the dashboard via Plugins > Service Tracker or navigate to /Plugin/Disco.Plugins.ServiceTracker/Dashboard

Configuration

Default configuration is created automatically on install. To customise:

  • Priorities: Edit config.json in the plugin data directory (App_Data\Plugins\Disco.Plugins.ServiceTracker\)
  • Locations: Same file — add/remove/rename device locations
  • Status Options: Customise the status dropdown values
  • Auto-create tickets: Toggle whether new Disco jobs automatically get a Service Tracker ticket

Default Priority Levels

Priority Colour SLA Description
Critical Red 4 hours System down, no workaround
High Orange 8 hours Major impact, workaround available
Medium Yellow 24 hours Moderate impact
Low Green 72 hours Minor issue, no urgency
Scheduled Grey None Planned work

Data Storage

The plugin stores its metadata (priorities, locations, notes, SLA deadlines) in JSON files alongside the Disco database. It reads Disco Job records directly via the DiscoDataContext and overlays additional tracking data.

  • config.json — Plugin configuration (priorities, locations, status options)
  • tickets.json — Extended ticket metadata for each tracked job

Requirements

  • Disco ICT (with plugin support)
  • .NET Framework 4.5+
  • MSBuild (Visual Studio or .NET Framework SDK)

Author

Jess Rogerson https://gitea.hideawaygaming.com.au/jessikitty