Examining output of "dbus-monitor --system" shows that URfkill is actually emitting signals that can be used by push-client to track the status of the radio devices, for instance:
signal sender=:1.3 -> dest=(null destination) serial=85 path=/org/freedesktop/URfkill/WLAN; interface=org.freedesktop.DBus.Properties; member=PropertiesChanged string "org.freedesktop.URfkill.Killswitch" array [ dict entry( string "state" variant int32 1 ) ] array [ ]
These signals are emitted per device category (aka "Killswitch"): WWAN, WLAN, and BLUETOOTH.
The possible values of "state" are:
KILLSWITCH_STATE_UNBLOCKED = 0 KILLSWITCH_STATE_SOFT_BLOCKED = 1 KILLSWITCH_STATE_HARD_BLOCKED = 2
Radio is ON if the state is unblocked, OFF otherwise.
Examining output of "dbus-monitor --system" shows that URfkill is actually emitting signals that can be used by push-client to track the status of the radio devices, for instance:
signal sender=:1.3 -> dest=(null destination) serial=85 path=/org/ freedesktop/ URfkill/ WLAN; interface= org.freedesktop .DBus.Propertie s; member= PropertiesChang ed p.URfkill. Killswitch"
string "org.freedeskto
array [
dict entry(
string "state"
variant int32 1
)
]
array [
]
These signals are emitted per device category (aka "Killswitch"): WWAN, WLAN, and BLUETOOTH.
The possible values of "state" are:
KILLSWITCH_ STATE_UNBLOCKED = 0 STATE_SOFT_ BLOCKED = 1 STATE_HARD_ BLOCKED = 2
KILLSWITCH_
KILLSWITCH_
Radio is ON if the state is unblocked, OFF otherwise.