dotfiles/de/home/.config/eww/scripts/bar/bluetooth
2026-01-04 17:45:02 -08:00

38 lines
1.2 KiB
Bash
Executable file

#!/bin/bash
function btstatus(){
# device_mac_list=
device_json_array=()
for m in $(bluetoothctl devices Paired | awk '{print $2}');do
read -d "\n" dev_name dev_icon dev_connected <<<"$(bluetoothctl info ${m} | grep -e 'Connected\: \|Name\: \|Icon\: ' | awk '{print $2}')"
case "${dev_icon}" in
"input-mouse")
dev_icon="󰍽";;
"phone")
dev_icon="";;
"input-keyboard")
dev_icon="";;
"input-gaming")
dev_icon="";;
"audio-headphones")
dev_icon="";;
"audio-headset")
dev_icon="";;
"computer")
dev_icon="";;
esac
# device_json=$( jq -n --arg name "${dev_name}" --arg connected "${dev_connected}" --arg icon "${dev_icon}" --arg address "${m}" '{name: $name, connected: $connected, icon: $icon, address: $address}')
# device_json_array+=("${device_json}")
printf '%s;%s;%s;%s\n' "${m}" "${dev_name}" "${dev_icon}" "${dev_connected}"
done | column -t -N mac,name,icon,connected -s ';'
# devices_json=$(printf '%s\n' "${device_json_array[@]}" | jq -s .)
# echo ${devices_json}
}
btstatus
dbus-monitor --profile "interface='org.blueman.Applet',member='MenuChanged'" | while read -r event; do
btstatus
done