SDK reference

We distinguish and expose 3 kinds of APIs : engagement, visual and technical. You are very much encouraged to combine these APIs together in order to take advantage of the full potential of the SDK.

👍

Looking for some real code examples ? Feel free to browse this repository containing a collection of complete homemade plugins 🧩

Engagement

You can use these APIs to add custom actions within the Room. They are good starting points for many workflow or Call to actions.

Modal - Display Modals with custom HTML content

Chat - Interact with the chat by sending and intercepting messages

Stage.Buttons.registerStageButton - Add a button alongside Room actions

Stage.Buttons.registerShareButton - Add an entry in the Share menu

Visual

These APIs are meant to have a direct visual effect in the room and are designed to help you provide feedback and visual content to the users.

Sidebar - Create applications that leverage the entire Sidebar

Streams - Create camera effects and custom HTML streams

Chat - Interact with chat by sending and intercepting messages

Theme - Customize the Room appearance

Modal - Display Modals with custom HTML content

NotificationCenter - Display custom HTML as notifications

👍

The Visual APIs often leverage our template system. We recommend you to use our UI Kit to build your HTML templates.

Technical

These APIs are meant to help you leverage Livestorm data or technical blocks such as Websockets.
They are essential building blocks of plugins APIs interactions.

Settings - Register settings panel in Livestorm dashboard

PubSub - Dispatch events to other participants

Storage - Make data persistent

Users - Get information about the participants

When - Be notified when things happen

Tracking - Add statistics to the dashboard

Need more APIs ?

We are willing to provide you with the most flexible SDK, we would be happy to expose more APIs if your use case can benefit other developers.
Feel free to drop an issue to our Github repo, or to contact us directly at [email protected]

Plugins being executed within a sandboxed iframe, they cannot access and modify the parent document. It means that many actions, such as editing custom part of the DOM, adding custom script within Livestorm DOM, is not authorized.

👍

If you need to access the entire Livestorm DOM to achieve something, or need to bypass the same-origin policy you can simply use the livestorm review command which will remove the security policy for your plugin.
Learn more about this here.

Need a hand ?

We are here to help, feel free to drop an issue to our Github repo, or to contact us directly at [email protected]