Fresh start - excluded large ROM JSON files
This commit is contained in:
28
skills/unifi/scripts/devices.sh
Normal file
28
skills/unifi/scripts/devices.sh
Normal file
@@ -0,0 +1,28 @@
|
||||
#!/usr/bin/env bash
|
||||
# List UniFi devices (APs, switches, gateway)
|
||||
set -euo pipefail
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
source "$SCRIPT_DIR/unifi-api.sh"
|
||||
|
||||
FORMAT="${1:-table}"
|
||||
|
||||
data=$(unifi_get "/api/s/$UNIFI_SITE/stat/device")
|
||||
|
||||
if [ "$FORMAT" = "json" ]; then
|
||||
echo "$data"
|
||||
else
|
||||
# Table format
|
||||
echo "$data" | jq -r '
|
||||
["NAME", "MODEL", "IP", "STATE", "UPTIME", "CLIENTS"],
|
||||
["----", "-----", "--", "-----", "------", "-------"],
|
||||
(.data[] | [
|
||||
.name // .mac,
|
||||
.model,
|
||||
.ip,
|
||||
.state_name // .state,
|
||||
(.uptime | if . then (. / 3600 | floor | tostring) + "h" else "N/A" end),
|
||||
(.num_sta // 0 | tostring)
|
||||
]) | @tsv
|
||||
' | column -t -s $'\t'
|
||||
fi
|
||||
Reference in New Issue
Block a user