Configuration
Set configuration through appsettings.json, environment variables (double underscore nesting,
for example Psa__Halo__ClientId), or dotnet user-secrets for local development. Never commit
real ClientId or ClientSecret values.
| Key | Default | Description |
|---|---|---|
Psa:Provider | Halo | Which IPsaDataProvider implementation to use. |
Psa:PollIntervalSeconds | 60 | How often to poll the PSA and refresh the display. |
Psa:SlaRiskThresholdMinutes | 60 | A ticket is "SLA risk" at or below this many minutes to breach. |
Psa:Halo:BaseUrl | (none) | Your Halo tenant's API base URL. |
Psa:Halo:ClientId / ClientSecret | (none) | OAuth2 client credentials, set through environment variables or user secrets. |
Psa:Halo:Scope | read:tickets | OAuth2 scope requested. Set this to the minimum your Halo API client is actually granted; see Least privilege on the Deployment page. |
Psa:Halo:OrganisationId | 1 | Halo organisation whose portal_title is used as the dashboard header, fetched once at startup and cached for the process lifetime. Falls back to Dashboard:HeaderText if the fetch fails or the organisation has no portal title set. |
BusyBar:Address | 10.0.4.20 | Network address of the BUSY Bar device. |
Dashboard:HeaderText | WRC SERVICE DESK | First line of the normal mode display, and the third line of each critical mode priority tier page. Used only when the Halo organisation lookup does not produce a header. |
Dashboard:DisplayCycleSeconds | 5 | How often the critical display cycles between its critical mode pages. Has no effect on normal or SLA warning mode, which each have only one page. |