Bölüm 15 GET POST

getRecordingTextTracks – Metin İzleri

getRecordingTextTracks uç noktası, belirli bir kayda bağlı tüm altyazı ve caption izlerinin bir listesini döndürür. Çoğu BigBlueButton API uç noktasından farklı olarak, yanıt XML yerine JSON biçiminde döndürülür.

Uç Nokta

GET/POST https://api-guide.bbbserver.com/bigbluebutton/api/getRecordingTextTracks?<parameter>&checksum=replace-with-checksum

Hem GET hem de POST yöntemleri desteklenir. POST kullanırken, parametreleri istek gövdesinde application/x-www-form-urlencoded olarak gönderin.

Parametreler

Parametre Tür Açıklama
recordID String Gerekli. Metin izlerini almak istediğiniz kaydın recording ID'si. Yalnızca tek bir recording ID kabul edilir — virgülle ayrılmış listeler desteklenmez.

Diğer kayıt endpoint'lerinden farklı olarak, getRecordingTextTracks yalnızca tek bir recordID değeri kabul eder. Virgülle ayrılmış birden fazla ID göndermek hataya veya beklenmeyen davranışa yol açar.

Yanıt Alanları

Yanıttaki her track nesnesi aşağıdaki öznitelikleri içerir:

Alan Tür Açıklama
href String WebVTT biçimindeki metin iz dosyası için indirme URL'si.
kind String HTML5 video öğesi spesifikasyonunu izleyen metin izinin türü. Olası değerler: subtitles veya captions.
label String Kayıt oynatma arayüzündeki altyazı seçim menüsünde gösterilen görünen ad.
lang String RFC 5646 tarafından tanımlanan dil etiketi (ör. en-US, de-DE, pt-BR).
source String Metin izinin kaynağı. Bilinen değerler: live (toplantı sırasında canlı transkripsiyon), automatic (toplantıdan sonra makine tarafından oluşturulan), upload (elle yüklenen).

Örnek İstek

curl --request GET \
    "https://api-guide.bbbserver.com/bigbluebutton/api/getRecordingTextTracks?recordID=replace-with-recording-id&checksum=replace-with-checksum"

Örnek Yanıt

Başarılı

{
  "response": {
    "returncode": "SUCCESS",
    "tracks": [
      {
                "href": "https://api-guide.bbbserver.com/captions/replace-with-recording-id/de-DE.vtt",
        "kind": "subtitles",
        "label": "Deutsch",
        "lang": "de-DE",
        "source": "upload"
      },
      {
                "href": "https://api-guide.bbbserver.com/captions/replace-with-recording-id/en-US.vtt",
        "kind": "subtitles",
        "label": "English",
        "lang": "en-US",
        "source": "live"
      }
    ]
  }
}

Hata — Kayıt Kimliği Eksik

{
  "response": {
    "returncode": "FAILED",
    "messageKey": "missingParamRecordID",
    "message": "You must specify a recordID."
  }
}

Hata Yanıtları

Mesaj Anahtarı Açıklama
checksumError checksum geçersiz veya istek parametreleriyle eşleşmiyor.
missingParamRecordID Gerekli recordID parametresi istekte sağlanmadı.
noRecordings Belirtilen recording ID ile eşleşen bir kayıt bulunamadı.

bbbserver.de Notlar

bbbserver.de: Bu uç nokta bbbserver.de platformunda mevcut değildir. Kayıtlar için metin izleri API üzerinden alınamaz.

İpuçları

Bu, XML yerine JSON döndüren tek standart BigBlueButton API uç noktasıdır. Yanıtı ayrıştırırken API istemcinizin bu farkı işlediğinden emin olun.

  • Kullanıcılarınız için bir altyazı seçim arayüzü oluştururken izleri dile göre filtrelemek için lang alanını kullanın.
  • href alanı, herhangi bir standart HTML5 video oynatıcı ile kullanılabilecek WebVTT dosyasına doğrudan bir indirme bağlantısı sağlar.
  • Kalitesi değişebilecek şekilde, elle yüklenmiş caption'lar ile otomatik olarak oluşturulmuş olanları ayırt etmek için source alanını kontrol edin.
  • Metin izleri eklemek veya güncellemek için eşlik eden putRecordingTextTrack endpoint'ini kullanın.

Sıkça Sorulan Sorular

getRecordingTextTracks uç noktası, BigBlueButton API evriminin daha sonraki bir aşamasında eklenmiştir ve en baştan JSON döndürecek şekilde tasarlanmıştır. Bu, BigBlueButton API yanıtlarının XML kullandığı genel kuralın bir istisnasıdır. İstemci kodunuzun bu biçim farkını buna göre ele alması gerekir.

Hayır. Virgülle ayrılmış listeleri kabul eden diğer kayıt uç noktalarının aksine, getRecordingTextTracks istek başına yalnızca tek bir recordID kabul eder. Birden fazla kaydın izlerini almak için her kayıt için ayrı API çağrıları göndermelisiniz.

Metin izleri, HTML5 video oynatımı için standart altyazı biçimi olan WebVTT (Web Video Text Tracks) formatında sağlanır. Dosya, yanıttaki href alanında verilen URL'den doğrudan indirilebilir.

Subtitles, sesi duyabilen ancak metin çevirisine ihtiyaç duyan izleyiciler içindir; captions ise sağır veya işitme güçlüğü çeken izleyiciler için tasarlanmıştır ve ses efektleri gibi konuşma dışı seslerin açıklamalarını içerebilir. Yanıttaki kind alanı, belirli bir izin hangi türde olduğunu gösterir.

Bilinen değerler şunlardır: live (toplantı sırasında canlı transkripsiyonla oluşturulur), automatic (toplantıdan sonra makine tarafından oluşturulur) ve upload (bir kullanıcı tarafından manuel olarak yüklenir). Bu değerlerin, resmî spesifikasyonda tam olarak belgelenmemiş olmaları nedeniyle, kaynak kodu analizi ve topluluk gözlemlerine dayandığını unutmayın.