Skip to content

Commit e1a7f46

Browse files
committed
Merge remote-tracking branch 'pl/decrease-volume'
2 parents f8a6877 + 17b34b2 commit e1a7f46

12 files changed

Lines changed: 16863 additions & 8 deletions

File tree

.eslintignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
node_modules
2+
dist

.eslintrc

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
2+
{
3+
"root": true,
4+
"parser": "@typescript-eslint/parser",
5+
"extends": [
6+
"airbnb",
7+
"eslint:recommended",
8+
"plugin:@typescript-eslint/eslint-recommended",
9+
"plugin:@typescript-eslint/recommended"
10+
],
11+
"parserOptions": {
12+
"ecmaVersion": 2020
13+
},
14+
"plugins": [
15+
"@typescript-eslint",
16+
"react",
17+
"jsx-a11y",
18+
"import"
19+
],
20+
"env": {
21+
"es6": true,
22+
"node": true,
23+
"browser": true
24+
},
25+
"rules": {
26+
"react/jsx-filename-extension": [1, { "extensions": [".tsx", ".jsx"] }],
27+
"no-shadow": "off",
28+
"@typescript-eslint/no-shadow": "warn",
29+
"import/prefer-default-export": "off",
30+
"no-underscore-dangle": 0,
31+
"import/extensions": [2, "never"],
32+
"import/no-absolute-path": 0,
33+
"import/no-unresolved": 0,
34+
"import/no-extraneous-dependencies": 1,
35+
"react/prop-types": 1,
36+
"jsx-a11y/no-access-key": 0,
37+
"react/jsx-props-no-spreading": "off",
38+
"max-classes-per-file": "off",
39+
"class-methods-use-this": "off"
40+
},
41+
"globals": {
42+
"browser": "writable"
43+
}
44+
}

README.md

Lines changed: 40 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,49 @@
1-
# Repository of a plugin for BigBlueButton
1+
# Decrease external video's volume on speak
22

3-
## Description
3+
## What is it?
44

5-
A brief description of the plugin including a screenshot or a short video.
5+
This plugin is one of the official bbb plugins. It basically decreases the external video's volume when a user is speaking in the meeting.
66

7-
## Running the Plugin From Source Code
7+
## Running the Plugin from Source
8+
9+
1. Start the development server:
10+
11+
```bash
12+
cd $HOME/src/plugins/decrease-volume-on-speak
13+
npm install
14+
npm start
15+
```
16+
17+
2. Add reference to it on BigBlueButton's `settings.yml`:
18+
19+
```yaml
20+
plugins:
21+
- name: DecreaseVolumeOnSpeak
22+
url: http://127.0.0.1:4701/static/DecreaseVolumeOnSpeak.js
23+
```
824
925
## Building the Plugin
1026
27+
To build the plugin for production use, follow these steps:
28+
29+
```bash
30+
cd $HOME/src/plugins/decrease-volume-on-speak
31+
npm install
32+
npm run build-bundle
33+
```
34+
35+
The above command will generate the `dist` folder, containing the bundled JavaScript file named `DecreaseVolumeOnSpeak.js`. This file can be hosted on any HTTPS server.
1136

12-
## Background
37+
To use the plugin with BigBlueButton, add the plugin's URL to `settings.yml` as shown below:
1338

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.
39+
```yaml
40+
public:
41+
app:
42+
... // All app configurations
43+
plugins:
44+
- name: DecreaseVolumeOnSpeak
45+
url: <<PLUGIN_URL>>
46+
... // All other configurations
47+
```
1648

17-
This plugin repository was created using the plugin [template repository for BigBlueButton](https://github.com/bigbluebutton/plugin-template) hosted on GitHub.
49+
Alternatively, you can host the bundled file on the BigBlueButton server by copying `dist/DecreaseVolumeOnSpeak.js` to the folder `/var/www/bigbluebutton-default/assets/plugins`. In this case, the `<<PLUGIN_URL>>` will be `https://<your-host>/plugins/DecreaseVolumeOnSpeak.js`.

0 commit comments

Comments
 (0)