Skip to content

Commit 3eba852

Browse files
GuiLemeantobinary
andauthored
ref: Update template to use the new plugin manifest structure (#10)
* [manifest-structure] - added manifest structure to template * Update README.md Co-authored-by: Anton Georgiev <antobinary@users.noreply.github.com> --------- Co-authored-by: Anton Georgiev <antobinary@users.noreply.github.com>
1 parent 1a8d354 commit 3eba852

7 files changed

Lines changed: 10380 additions & 27 deletions

File tree

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
node_modules
22
dist
3+
dist-tsc
34
debian/.debhelper/
45
debian/debhelper-build-stamp
56
debian/files

README.md

Lines changed: 22 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,31 @@
22

33
## Description
44

5-
A brief description of the plugin including a screenshot or a short video.
6-
7-
## Running the Plugin From Source Code
5+
A brief description of the plugin including a screenshot and/or a short video.
86

97
## Building the Plugin
108

9+
To build the plugin for production use, follow these steps:
10+
11+
```bash
12+
cd $HOME/src/plugin-template
13+
npm ci
14+
npm run build-bundle
15+
```
16+
17+
The above command will generate the `dist` folder, containing the bundled JavaScript file named `<plugin-name>.js`. This file can be hosted on any HTTPS server along with its `manifest.json`.
18+
19+
If you install the Plugin separated to the manifest, remember to change the `javascriptEntrypointUrl` in the `manifest.json` to the correct endpoint.
20+
21+
To use the plugin in BigBlueButton, send this parameter along in create call:
22+
23+
```
24+
pluginManifests=[{"url":"<your-domain>/path/to/manifest.json"}]
25+
```
26+
27+
Or additionally, you can add this same configuration in the `.properties` file from `bbb-web` in `/usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties`
1128

12-
## Background
1329

14-
BigBlueButton added supports for plugins in 2024 with BBB 3.0.
15-
Check the official [documentation website](https://docs.bigbluebutton.org) for more information.
30+
## Development mode
1631

17-
This plugin repository was created using the plugin [template repository for BigBlueButton](https://github.com/bigbluebutton/plugin-template) hosted on GitHub.
32+
As for development mode (running this plugin from source), please, refer back to https://github.com/bigbluebutton/bigbluebutton-html-plugin-sdk section `Running the Plugin from Source`

manifest.json

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
{
2+
"requiredSdkVersion": "~0.0.59",
3+
"name": "<plugin-name>",
4+
"javascriptEntrypointUrl": "<plugin-name>.js",
5+
"localesBaseUrl": "https://cdn.dominio.com/pluginabc/",
6+
"eventPersistence": {
7+
"isEnabled": true,
8+
"maximumPayloadSizeInBytes": 1024,
9+
"rateLimiting": {
10+
"messagesAllowedPerSecond": 10,
11+
"messagesAllowedPerMinute": 20
12+
}
13+
},
14+
"dataChannels": [
15+
{
16+
"name": "<data-channel-name>",
17+
"pushPermission": ["moderator"],
18+
"replaceOrDeletePermission": ["creator", "moderator"]
19+
}
20+
],
21+
"remoteDataSources": [
22+
{
23+
"name": "<remote-data-source-name>",
24+
"url": "${meta_remote-data-uri}",
25+
"fetchMode": "onMeetingCreate",
26+
"permissions": ["moderator"]
27+
}
28+
]
29+
}

0 commit comments

Comments
 (0)