Skip to main content

Getting started

PSA BusyBar Agent polls a PSA (Halo first, others pluggable) on a timer, works out the current helpdesk priority, and renders the result to a physical BUSY Bar over the network.

IPsaDataProvider -> PsaSnapshot -> PriorityEngine -> DashboardState -> BusyBarRenderer

Read Architecture for what each of those pieces does.

Quick start

git clone https://github.com/homotechsual/psatool-busybar-agent.git
cd psatool-busybar-agent
cp .env.example .env

Fill in HALO_CLIENT_ID, HALO_CLIENT_SECRET, and HALO_BASE_URL in .env, then:

docker compose up -d --build

See Deployment for least privilege guidance and Docker networking on Windows.

Next

  • Screenshots: what each display mode actually looks like on the device.
  • Configuration: every setting, what it defaults to, and what it does.
  • Architecture: the poll, evaluate, render pipeline and its five level priority order.
  • Adding a PSA provider: implement IPsaDataProvider for a PSA other than Halo.
  • Deployment: least privilege setup and Docker networking.