docs: add comprehensive README
This commit is contained in:
@@ -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
|
||||||
|
|||||||
Reference in New Issue
Block a user