qubesadmin.events package¶
Submodules¶
qubesadmin.events.utils module¶
Utilities for common events-based actions
Module contents¶
Event handling implementation, require Python >=3.5.2 for asyncio.
-
class
qubesadmin.events.
EventsDispatcher
(app, api_method='admin.Events', enable_cache=True)[source]¶ Bases:
object
Events dispatcher, responsible for receiving events and calling appropriate handlers
-
add_handler
(event, handler)[source]¶ Register handler for event
Use ‘*’ as event to register a handler for all events.
- Handler function is called with:
- subject (VM object or None)
- event name (str)
- keyword arguments related to the event, if any - all values as str
:param event Event name, or ‘*’ for all events :param handler Handler function
-
app
= None¶ Qubes() object
-
handlers
= None¶ event handlers - dict of event -> handlers
-
listen_for_events
(vm=None, reconnect=True)[source]¶ Listen for events and call appropriate handlers. This function do not exit until manually terminated.
This is coroutine.
Parameters: - vm – Listen for events only for this VM, use None to listen for events about all VMs and not related to any particular VM.
- reconnect – should reconnect to qubesd if connection is interrupted?
Return type:
-