Plugin
Plugins allow Caster to be extended or may even bring initial functionality to Caster where Caster on its own does not provide any functionality.
- class castervoice.core.plugin.Plugin(manager)
Plugins are pluggable content which can be plugged into Caster.
So far, only Grammer plugins exist.
Plugins are active when the specified context is active.
- property config
Plugin config.
- disable()
Disable plugin.
- enable()
Enable plugin.
- get_context(desired_state=None)
Get plugin context.
The plugin’s default context is returned when desired_state is None. None can be returned to indicate that no default context exists for this plugin.
If desired_state is set returns a context object which matches the desired state. It is up to the plugin to document which context configurations are available.
- Parameters:
desired_state – Desired context state configuration
- Returns:
Context
- get_grammars()
Gather plugins’ grammars.
- Returns:
List of Grammar
- property grammars
Plugin grammars.
- property id
Plugin id (plugin_id).
- load()
Load plugin’s grammars.
- property log
Get class logger.
- property name
Plugin name.
- property state
Plugin state.
- unload()
Unload plugin’s grammars.
- class castervoice.core.plugin.PluginManager(controller, config, state_directory)
Plugins are managed from the central Plugin Manager.
Each plugin is referenced by a plugin_id which is resembled by the plugin’s module path (e.g. casterplugin.dictation).
- apply_context(plugin_id, context)
Apply context to plugin with plugin_id
Overrides existing context.
- Parameters:
plugin_id – Plugin Id
context – Context object to be applied
- get_config(plugin_id)
Get config of plugin with plugin_id.
- Parameters:
plugin_id – Plugin Id
- Returns:
Plugin config
- get_context(plugin_id, desired_state)
Get context of plugin with plugin_id.
- Parameters:
plugin_id – Plugin Id
desired_state – Desired context state configuration
- Returns:
Context
- init_plugin(plugin_id)
Initialize plugin.
- Parameters:
plugin_id – Plugin Id
- load_plugins()
Load all initialized plugins.
- property log
Get class logger.
- property plugins
Retrieve list of initialized plugins.
- property state_directory
Get plugin state directory.
- unload_plugins()
Unload all initialized plugins.