getJoinUrl – Katılım URL'si Oluştur
getJoinUrl uç noktası, bir toplantıya zaten katılmış bir kullanıcı için yeni bir katılma URL'si oluşturur. Bu, aynı kullanıcının ek oturumlar açmasına olanak tanır — örneğin ikinci bir ekranda veya cihaz değiştirdikten sonra — standart join akışı üzerinden yeniden kimlik doğrulaması yapmadan. BBB 3.0+
Uç Nokta
GET/POST https://api-guide.bbbserver.com/bigbluebutton/api/getJoinUrl?<parameters> Bu uç nokta, standart checksum mekanizması yerine session-token authenticationshared-secret kullanır. Kullanıcı daha önce join uç noktası üzerinden katılmış olmalı ve geçerli bir sessionToken sahibi olmalıdır.
Bu, BigBlueButton yerine JSON döndüren tek XML API uç noktasıdır.
Gerekli Parametreler
| Parametre | Tür | Gerekli | Varsayılan | Açıklama |
|---|---|---|---|---|
sessionToken | String | Evet | — | Yeni bir katılma URL'si oluşturulması gereken kullanıcının sessionToken değeri. |
İsteğe Bağlı Parametreler
| Parametre | Tür | Gerekli | Varsayılan | Açıklama |
|---|---|---|---|---|
replaceSession | Boolean | Hayır | false | true olarak ayarlandığında, orijinal oturum geçersiz kılınır ve yenisiyle değiştirilir (oturum aktarımı). |
sessionName | String | Hayır | — | Yeni oturum için açıklayıcı bir ad. |
enforceLayout | String | Hayır | — | Yeni oturum için yerleşimi geçersiz kılın. |
userdata-* ↗ undocumented | String | Hayır | — | Yeni oturum için özel kullanıcı verileri. Anahtarlar userdata- ile başlamalıdır. |
Kullanım Senaryoları
- Hibrit senaryolar — bir moderatör sunum için bir ekranı, katılımcı görünümü için ise ikinci bir ekranı kullanır.
- Cihaz değiştirme — bir kullanıcı toplantı sırasında masaüstünden tablete geçer.
- Çok ekranlı kurulumlar — farklı yerleşimleri gösteren birden fazla ekrana sahip bir konferans odası.
Davranış
Yeni oturum, orijinal oturumla aynı kullanıcı kimliğini paylaşır. Kullanıcı katılımcı listesinde yalnızca bir kez görünür.
replaceSession olmadan, her iki oturum da paralel olarak var olur.
replaceSession=true ile, orijinal oturum geçersiz kılınır ve kullanıcı yeni oturuma sorunsuz şekilde aktarılır.
Örnek İstek
GET https://api-guide.bbbserver.com/bigbluebutton/api/getJoinUrl?sessionToken=replace-with-session-token&sessionName=SecondScreen&enforceLayout=PRESENTATION_FOCUS Örnek Yanıt (Başarılı)
{
"response": {
"returncode": "SUCCESS",
"message": "Join URL provided successfully.",
"url": "https://api-guide.bbbserver.com/bigbluebutton/api/join?...&checksum=replace-with-checksum"
}
} Hata Yanıtları
Bir istek başarısız olduğunda, uç nokta açıklayıcı bir hata mesajı içeren bir JSON nesnesi döndürür:
{
"response": {
"returncode": "FAILED",
"message": "<error message>",
"sessionToken": "replace-with-session-token"
}
} | Mesaj | Anlamı |
|---|---|
Invalid Session | sessionToken geçersiz veya süresi dolmuş. |
Access denied | Kullanıcı bulunamadı veya yetkisi yok. |
Meeting not found | Toplantı mevcut değil veya artık çalışmıyor. |
Userdata Engelleme Listesi
userdata-* ile getJoinUrl parametreleri kullanılırken, yapılandırılabilir bir engelleme listesi (getJoinUrlUserdataBlocklist) moderatör olmayan kullanıcılar için belirli userdata anahtarlarını kısıtlar:
- Engelleme listesi
"all"değerini içeriyorsa, görüntüleyiciler için tüm userdata parametreleri engellenir. - Moderatörler, içinde exceptbreakout rooms olmak üzere engelleme listesini aşar.
enforceLayoutparametresi, engelleme listesinden bağımsız olarak her zaman izinlidir.
Bu uç nokta yalnızca kullanıcı zaten geçerli bir sessionToken sahibi olduğunda kullanılabilir — yani önce standart join uç noktası üzerinden toplantıya katılmış olması gerekir. Süresi dolmuş belirteçler reddedilir.
bbbserver.de Kullanıcıları İçin Notlar
getJoinUrl uç noktası, bbbserver.de 3.0 veya sonraki sürümü çalıştıran tüm BigBlueButton örneklerinde kullanılabilir. Entegrasyonunuzun çoklu ekran veya cihaz değiştirme senaryolarını desteklemesi gerekiyorsa, bu uç nokta moderatör kimlik bilgileriyle ikinci bir join çağrısı gerektirmeden ek katılma URL'leri üretmek için temiz bir yol sunar.Cihaz değiştirme kullanım senaryolarında, oturumu yeni cihaza sorunsuz şekilde aktarmak için replaceSession=true ayarlayın. Bu, eski cihazda katılımcı listesinde karışıklığa yol açabilecek bayat bir oturum kalmasını önler.