* Add graphql API endpoint to BBB API
This parameter will be required for the HTML5 client to discover the API
endpoint of the GraphQL API so it can fetch its settings.
* Fix: ensure API calls are headed towards the BBB Server
In a cluster setup the URL that is visible in the browser is different
from the URL of the BBB Server.
The clients needs to contact the BBB server to retrieve information
about the graphQL websocket and the graphql API.
This patch adds the GraphQL API endpoint to the BBB API and changes the
Client to use it.
* Make GraphQL API endpoint configurable
The default value should work for single node and cluster setups
* Update docs to reflect changes required by cluster setup
* fix eslint and typescript errors
* Fix cluster setup docs
- add missing parts for hasura
- use consistent domain example.com
* rename variable
Co-authored-by: Gustavo Trott <gustavo@trott.com.br>
* rename variable
Co-authored-by: Gustavo Trott <gustavo@trott.com.br>
* rename variable
Co-authored-by: Gustavo Trott <gustavo@trott.com.br>
* Update bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/ApiController.groovy
Co-authored-by: Gustavo Trott <gustavo@trott.com.br>
* Update bigbluebutton-web/grails-app/conf/bigbluebutton.properties
Co-authored-by: Gustavo Trott <gustavo@trott.com.br>
---------
Co-authored-by: Daniel Schreiber <daniel.schreiber@hrz.tu-chemnitz.de>
Co-authored-by: Gustavo Trott <gustavo@trott.com.br>
Only record media (microphone, webcams and screens) while meeting is
being actively recorded (ie an user has enabled recording in the
conference). If the conference's recording is paused, media capture will
stop as well (with appropriate recording events).
A bigbluebutton.properties/API#create parameter called
`recordFullDurationMedia` is added to control this behavior. The default
is false (only capture while recording is active). Setting it to `true`
enables the current (legacy) behavior: always capture media if the
meeting's `recorded` prop is true.
Java/Grails' HTTP session inactivity timeout is hardcoded to 4 hours.
This gives less flexibility for long-lived sessions - ie in rare
scenarios where users stay connected for >= that amount of time without
any re-connections or intermediate calls to checkAuthorization.
This commit makes the HTTP session timeout configurable, system-wide, via
bigbluebutton.properties. Default timeout is preserved.
Ideally, we should look into a more permanent solution to avoid
invalidating perfectly healthy user sessions. This commit fixes
nothing in that regard.
Adds support for multiple cameras pins.
The pinned cameras are stored in a FIFO-type queue
When a camera is pinned the oldest one is removed.
The queue size can be set via create parameter 'maxPinnedCameras',
if not defaults to 3.