async def get_services_resolved(self): """Is Services Resolved""" # Assemble Get Method Message message = dbus.Message.new_method_call( destination=dbus.valid_bus_name(_BLUEZ_DESTINATION), path=dbus.valid_path(self._device_path), iface=DBUS.INTERFACE_PROPERTIES, method="Get", ) message.append_objects("s", dbus.valid_interface(_DEVICE_INTERFACE)) message.append_objects("s", "ServicesResolved") reply = await self._dbus.send_await_reply(message) return reply.expect_return_objects("v")[0][1]
async def is_connected(self): """Is Connected to device""" # Assemble IsConnected Method Message message = dbus.Message.new_method_call( destination=dbus.valid_bus_name(_BLUEZ_DESTINATION), path=dbus.valid_path(self._device_path), iface=DBUS.INTERFACE_PROPERTIES, method="Get", ) message.append_objects("s", dbus.valid_interface(_DEVICE_INTERFACE)) message.append_objects("s", "Connected") reply = await self._dbus.send_await_reply(message) # Return Boolean IsConnected return reply.expect_return_objects("v")[0][1]
async def _get_properties(self): """Get Properties""" # Assemble GetAll Properties Method Message message = dbus.Message.new_method_call( destination=dbus.valid_bus_name(_BLUEZ_DESTINATION), path=dbus.valid_path(self._device_path), iface=DBUS.INTERFACE_PROPERTIES, method="GetAll", ) message.append_objects("s", dbus.valid_interface(_DEVICE_INTERFACE)) reply = await self._dbus.send_await_reply(message) values = reply.expect_return_objects("a{sv}")[0] print(values) for propname in sorted(values.keys()): proptype, propvalue = values[propname] sys.stdout.write("%s(%s) = %s\n" % (propname, proptype, repr(propvalue)))