Skip to main content

Functions to enable plugins

Enable Plugins​

Each plugin in meeting.plugins object is of type RtkPlugin and exposes the following functions to enable plugins.

Activate Plugins​

The activate() method activates a plugin for all users in the meeting. The snippet below retrieves the first plugin from the list and activates it.

final plugins = meeting.plugins.all;
plugins.first.activate();

// You can check if the plugin is active
final activePlugins = meeting.plugins.active;
print(activePlugins)

This directly activates the plugin without any user interaction.

For e.g. you can also show a list of all plugins and activate a plugin on click programmatically.

class ExamplePluginWidget extends StatelessWidget {
final List<RtkPlugin> plugins;

const ExamplePluginWidget(
this.plugins, {
super.key,
});


Widget build(BuildContext context) {
return ListView(
children: plugins
.map((plugin) => ElevatedButton(
child: Text('Activate ${plugin.name}'),
onPressed: () => plugin.activate(),
))
.toList(),
);
}
}

Get Plugin View​

When a plugin is enabled, the core SDK adds a communication layer between the plugin inside the WebView and itself (meeting object). You can show the plugin using PluginView which is a widget that takes RtkPlugin as an argument.

class ExamplePluginWidget extends StatelessWidget {
final RtkPlugin plugin;

const ExamplePluginWidget(
this.plugin, {
super.key,
});


Widget build(BuildContext context) => PluginView(plugin);
}

Disable Plugins​

Each plugin in meeting.plugins object is of type RtkPlugin and exposes the following functions to disable plugins.

Deactivate Plugin​

The deactivate() method deactivates the plugin for all users in the meeting.

final plugins = meeting.plugins.all;
plugins.first.deactivate();