Skip to content

State keys

Each key is published only when the matching hardware is adopted by your controller.

KeyValuesMeaning
wanprimary, backupwhich uplink the gateway is currently using
wan.qualitygood, degradedhow well that uplink has been performing, against the configured thresholds
ispa slug, e.g. telenet, or unknownthe carrier behind the live uplink
internetok, degraded, downwhether the outside world is reachable at all
upsonline, on-batterywhether a UniFi UPS is on mains or running on battery
ups.batterynormal, low, criticalremaining charge against the configured thresholds
ups.runtimeample, short, criticalhow long the UPS says it can carry its current load
ups.loadnormal, highdraw as a fraction of the UPS’s power budget
devicesall-online, degradedwhether every adopted device is reachable, or at least one is not
device.<name>online, offlineone adopted device, by slugified name. Opt-in — see below
firmwarecurrent, updates-availablewhether the console has an update waiting for anything adopted
temperaturenormal, highthe hottest adopted device against the configured threshold
wifiok, warning, errorthe WiFi subsystem as a whole, from the console’s AP counts
poeok, insufficientPoE headroom on the worst switch, against the configured threshold
outlet.<n>on, offone switchable UPS outlet, by index or by name. Read-only — see below

isp is the one key whose values are not a closed set: it is the carrier name your console geolocated your public address to, lowercased with everything non-alphanumeric turned into a hyphen. Look it up before matching on it —

Terminal window
kubectl -n reactor-system logs deploy/reactor | grep 'key=isp'
# INFO state transition provider=unifi key=isp from= to=telenet

— and use it when who is carrying your traffic is what matters rather than which port it leaves by, which is usually the case for anything metered:

when:
provider: unifi
state:
isp: unknown # or your backup carrier's slug

It exists for a second reason. wan and isp are independent answers to “did the uplink change”, so Reactor compares them: if one moves and the other does not, it says so rather than quietly trusting either. Those lines are worth reading — see wan and isp disagree.