getJoinUrl – Deelname-URL genereren
Het endpoint getJoinUrl genereert een nieuwe join-URL voor een gebruiker die al aan een vergadering heeft deelgenomen. Hierdoor kan dezelfde gebruiker extra sessies openen — bijvoorbeeld op een tweede scherm of na het wisselen van apparaat — zonder zich opnieuw te authenticeren via de standaardflow van join. BBB 3.0+
Endpoint
GET/POST https://api-guide.bbbserver.com/bigbluebutton/api/getJoinUrl?<parameters> Dit endpoint gebruikt session-token-authenticatie in plaats van het standaardmechanisme met shared-secret checksum. De gebruiker moet al via het endpoint join hebben deelgenomen en beschikken over een geldige sessionToken.
Dit is het enige BigBlueButton-API-endpoint dat JSON retourneert in plaats van XML.
Vereiste parameters
| Parameter | Type | Vereist | Standaard | Beschrijving |
|---|---|---|---|---|
sessionToken | String | Ja | — | De sessionToken van de gebruiker voor wie een nieuwe join-URL moet worden gegenereerd. |
Optionele parameters
| Parameter | Type | Vereist | Standaard | Beschrijving |
|---|---|---|---|---|
replaceSession | Boolean | Nee | false | Wanneer ingesteld op true, wordt de oorspronkelijke sessie ongeldig gemaakt en vervangen door de nieuwe (sessieoverdracht). |
sessionName | String | Nee | — | Een beschrijvende naam voor de nieuwe sessie. |
enforceLayout | String | Nee | — | Overschrijf de lay-out voor de nieuwe sessie. |
userdata-* ↗ undocumented | String | Nee | — | Aangepaste gebruikersgegevens voor de nieuwe sessie. Sleutels moeten worden voorafgegaan door userdata-. |
Toepassingen
- Hybride scenario's — een moderator gebruikt één scherm voor de presentatie en een tweede scherm voor de deelnemersweergave.
- Wisselen van apparaat — een gebruiker schakelt tijdens een vergadering over van desktop naar tablet.
- Opstellingen met meerdere schermen — een conferentieruimte met meerdere displays die verschillende lay-outs tonen.
Gedrag
De nieuwe sessie deelt de gebruikersidentiteit met de oorspronkelijke sessie. De gebruiker verschijnt maar één keer in de deelnemerslijst.
Zonder replaceSession bestaan beide sessies parallel.
Met replaceSession=true wordt de oorspronkelijke sessie ongeldig gemaakt en wordt de gebruiker naadloos overgezet naar de nieuwe sessie.
Voorbeeldverzoek
GET https://api-guide.bbbserver.com/bigbluebutton/api/getJoinUrl?sessionToken=replace-with-session-token&sessionName=SecondScreen&enforceLayout=PRESENTATION_FOCUS Voorbeeldantwoord (succes)
{
"response": {
"returncode": "SUCCESS",
"message": "Join URL provided successfully.",
"url": "https://api-guide.bbbserver.com/bigbluebutton/api/join?...&checksum=replace-with-checksum"
}
} Foutresponses
Wanneer een verzoek mislukt, retourneert het endpoint een object JSON met een beschrijvende foutmelding:
{
"response": {
"returncode": "FAILED",
"message": "<error message>",
"sessionToken": "replace-with-session-token"
}
} | Bericht | Betekenis |
|---|---|
Invalid Session | De sessionToken is ongeldig of verlopen. |
Access denied | De gebruiker is niet gevonden of heeft geen toestemming. |
Meeting not found | De vergadering bestaat niet of wordt niet meer uitgevoerd. |
Userdata Blocklist
Bij gebruik van userdata-*-parameters met getJoinUrl beperkt een configureerbare blocklist (getJoinUrlUserdataBlocklist) bepaalde userdata-sleutels voor gebruikers die geen moderator zijn:
- Als de blocklist de waarde
"all"bevat, worden alle userdata-parameters geblokkeerd voor viewers. - Moderators omzeilen de blocklist, behalve in breakout rooms.
- De parameter
enforceLayoutis altijd toegestaan, ongeacht de blokkeerlijst.
Het endpoint is alleen beschikbaar wanneer de gebruiker al beschikt over een geldige sessionToken — dat wil zeggen: de gebruiker moet eerst via het standaardendpoint join aan de vergadering hebben deelgenomen. Verlopen tokens worden afgewezen.
Opmerkingen voor bbbserver.de-gebruikers
getJoinUrl is beschikbaar op alle bbbserver.de-instances die BigBlueButton 3.0 of later draaien. Als je integratie scenario's met meerdere schermen of apparaatswisselingen moet ondersteunen, biedt dit endpoint een nette manier om extra join-URL's te genereren zonder een tweede aanroep van join met moderatorinloggegevens te vereisen.Stel voor scenario's met apparaatwisseling replaceSession=true in om de sessie naadloos over te dragen naar het nieuwe apparaat. Dit voorkomt een verouderde sessie op het oude apparaat die voor verwarring in de deelnemerslijst kan zorgen.