def on_battery() -> bool:
"""Check if we are running on Battery power."""
log.debug("Checking if running on Battery power.")
if has_battery():
bus, upower_path = dbus.SystemBus(), '/org/freedesktop/UPower'
upower = bus.get_object('org.freedesktop.UPower', upower_path)
result = __get_prop(upower, upower_path, 'OnBattery')
if result is None: # Cannot read property, something is wrong.
print(f"Failed to read D-Bus property: {upower_path}.")
result = False # Assume we are connected to a power supply.
return result
return False
#
# def on_wifi():
# """Check if we are running on wifi."""
# try:
# bus = dbus.SystemBus()
# manager = bus.get_object('org.freedesktop.NetworkManager',
# '/org/freedesktop/NetworkManager')
# # FIXME this returns int, I dunno what they mean ?, investigate.
# return __get_prop(manager, 'org.freedesktop.NetworkManager',
# 'WirelessEnabled')
# except Exception:
# return False
评论列表
文章目录