docs: add comprehensive README

This commit is contained in:
2026-05-05 15:10:02 +10:00
parent 42cf2951cd
commit fee7f0acaf
+92 -2
View File
@@ -1,3 +1,93 @@
# disco-service-tracker-plugin # Disco Service Tracker Plugin
Disco ICT Plugin - Enhanced service/support tracking with priority management, location tracking, tile dashboard, and SLA monitoring Enhanced service/support tracking plugin for [Disco ICT](https://discoict.com.au/) 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
```powershell
.\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