getRecordings – Récupérer les enregistrements
Le point de terminaison getRecordings renvoie une liste des enregistrements de votre serveur BigBlueButton, filtrés par ID de réunion, ID d’enregistrement ou état. Il prend en charge la pagination à partir de BBB 2.7, ce qui facilite la récupération de grands ensembles d’enregistrements en segments gérables.
Point de terminaison
GET/POST https://api-guide.bbbserver.com/bigbluebutton/api/getRecordings?<parameters>&checksum=replace-with-checksum Paramètres
| Paramètre | Type | Obligatoire | Par défaut | Description |
|---|---|---|---|---|
meetingID | String | — | — | Liste d’ID de réunion séparés par des virgules. Ignorée lorsque recordID est fourni. Si omis, tous les enregistrements sont renvoyés. |
recordID | String | — | — | Liste d’ID d’enregistrement séparés par des virgules. A priorité sur meetingID. Prend en charge la correspondance par préfixe — par exemple, 652c9eb4 correspond à tous les enregistrements dont l’ID commence par ce préfixe. |
state | String | — | published,unpublished | Filtre d’état séparé par des virgules. Valeurs valides : processing, processed, published, unpublished, deleted. Utilisez any pour renvoyer tous les états. |
meta | String | — | — | Filtre de métadonnées utilisant le même format que dans l’appel create (par ex. meta_presenter=John). |
offset | Integer | — | 0 | Index de départ pour la pagination. Ne prend effet que lorsque limit est également fourni. BBB 2.7+ |
limit | Integer | — | — | Nombre maximal d’enregistrements par réponse (de 1 à 100). Les valeurs en dehors de cette plage sont automatiquement ramenées dans les limites. BBB 2.7+ |
Aucun des paramètres n’est requis. L’appel de getRecordings sans filtre renvoie tous les enregistrements published et unpublished du serveur.
États des enregistrements
| État | Description |
|---|---|
processing | L’enregistrement est actuellement en cours de traitement. |
processed | Le traitement est terminé, mais l’enregistrement n’a pas encore été publié. |
published | L’enregistrement est publié et accessible aux utilisateurs. |
unpublished | L’enregistrement existe, mais n’est pas accessible aux utilisateurs. |
deleted | L’enregistrement a été marqué pour suppression. |
Le filtre d’état par défaut inclut uniquement les enregistrements published et unpublished. Pour voir les enregistrements encore en cours de traitement ou ayant été supprimés, vous devez définir explicitement le paramètre state.
Champs de réponse
| Champ | Type | Description |
|---|---|---|
recordID | String | Identifiant unique de l’enregistrement. |
meetingID | String | L’ID de réunion externe associé à cet enregistrement. |
internalMeetingID | String | L’ID interne de réunion utilisé par BigBlueButton. |
name | String | Le nom de la réunion au moment où elle a été enregistrée. |
isBreakout | Boolean | Indique si cet enregistrement provient d’une salle de répartition. |
published | Boolean | Indique si l’enregistrement est actuellement publié. |
state | String | État actuel de l’enregistrement (processing, processed, published, unpublished, deleted). |
startTime | Long | Horodatage Unix en millisecondes indiquant le début de la réunion. |
endTime | Long | Horodatage Unix en millisecondes indiquant la fin de la réunion. |
participants | Integer | Nombre de participants à la réunion. |
rawSize | Long | Taille des données brutes de l’enregistrement en octets. |
size | Long | Taille de l’enregistrement traité en octets. |
metadata | Object | Paires clé-valeur de métadonnées personnalisées associées à l’enregistrement. |
playback | Object | Détails du format de lecture, y compris l’URL, le temps de traitement, la durée, la taille et les miniatures d’aperçu. |
totalElements | Integer | Nombre total d’enregistrements correspondants. Présent uniquement lorsque des paramètres de pagination sont utilisés. BBB 2.7+ |
Exemple de requête
Tous les enregistrements publiés
getRecordings?checksum=replace-with-checksum Enregistrements pour une réunion spécifique
getRecordings?meetingID=replace-with-meeting-id&checksum=replace-with-checksum Plusieurs réunions
getRecordings?meetingID=replace-with-meeting-id-1,replace-with-meeting-id-2&checksum=replace-with-checksum Par ID d’enregistrement
getRecordings?recordID=replace-with-recording-id&checksum=replace-with-checksum Tous les états
getRecordings?state=any&checksum=replace-with-checksum Requête paginée (enregistrements 21 à 30)
getRecordings?state=published&offset=20&limit=10&checksum=replace-with-checksum Exemple de réponse
<response>
<returncode>SUCCESS</returncode>
<recordings>
<recording>
<recordID>replace-with-recording-id</recordID>
<meetingID>replace-with-meeting-id</meetingID>
<internalMeetingID>replace-with-internal-meeting-id</internalMeetingID>
<name>Project Meeting</name>
<isBreakout>false</isBreakout>
<published>true</published>
<state>published</state>
<startTime>1462283509434</startTime>
<endTime>1462284509434</endTime>
<participants>5</participants>
<metadata>
<bbb-origin>greenlight</bbb-origin>
</metadata>
<rawSize>123456789</rawSize>
<size>98765432</size>
<playback>
<format>
<type>presentation</type>
<url>https://api-guide.bbbserver.com/playback/presentation/2.3/replace-with-recording-id</url>
<processingTime>62890</processingTime>
<length>45</length>
<size>98765432</size>
<preview>
<images>
<image width="176" height="136" alt="Welcome">
https://api-guide.bbbserver.com/presentation/replace-with-recording-id/thumbnail_0.png
</image>
</images>
</preview>
</format>
</playback>
</recording>
</recordings>
</response> Pagination BBB 2.7+
Lorsque vous incluez les paramètres offset et/ou limit, la réponse contient un champ supplémentaire totalElements indiquant le nombre total d’enregistrements correspondants. Cela vous permet de calculer le nombre total de pages et de créer des contrôles de pagination dans votre application.
<response>
<returncode>SUCCESS</returncode>
<totalElements>42</totalElements>
<recordings>
<!-- recording elements -->
</recordings>
</response> getRecordings est entièrement disponible via l’API. La pagination est prise en charge sur toutes les offres serveur actuelles exécutant BBB 2.7 ou une version ultérieure.Conseils
- Utilisez
recordIDavec un préfixe pour rechercher des enregistrements lorsque vous ne disposez que d’un ID partiel —BigBlueButtonfait correspondre tous les enregistrements dont l’ID commence par la chaîne fournie. - Spécifiez toujours explicitement le paramètre
statesi vous devez voir des enregistrements encore en cours de traitement ou qui ont été supprimés, car ceux-ci sont exclus par défaut. - Combinez
meetingIDavecstatepour affiner efficacement les résultats — par exemple, pour trouver uniquement les enregistrements publiés d’une réunion spécifique. - Pour les déploiements importants avec de nombreux enregistrements, utilisez la pagination afin d’éviter les délais d’attente et de réduire la taille des réponses.
- Utilisez des filtres de métadonnées (paramètres
meta_) pour trouver des enregistrements en fonction d’attributs personnalisés définis lors de la création de la réunion.
Foire aux questions
published ou unpublished. Les enregistrements encore en cours de traitement ou marqués pour suppression ne sont pas inclus, sauf si vous définissez explicitement le paramètre state.BigBlueButton fait correspondre tous les enregistrements dont l’ID complet commence par la chaîne fournie. Par exemple, passer 652c9eb4 renverra chaque enregistrement dont l’ID commence par ce préfixe. Cela est parfois appelé correspondance générique dans la documentation officielle, mais il s’agit strictement d’une correspondance par préfixe (startsWith), et non d’une correspondance par sous-chaîne.meta avec les mêmes noms de clé que ceux définis lors de la création de la réunion. Par exemple, si vous avez passé meta_presenter=John lors de la création de la réunion, vous pouvez filtrer avec la même paire clé-valeur dans getRecordings. Notez que le comportement exact de correspondance des filtres de métadonnées n’est pas entièrement spécifié dans la documentation officielle.meetingID est l’identifiant externe que vous avez attribué lors de la création de la réunion. Une seule réunion peut produire plusieurs enregistrements. Le recordID est un identifiant unique pour chaque enregistrement individuel. Lorsque les deux sont fournis, recordID a priorité et meetingID est ignoré.BBB 2.7 ou une version ultérieure. Définissez le paramètre limit pour contrôler combien d’enregistrements sont renvoyés par requête (de 1 à 100), et utilisez offset pour ignorer un certain nombre de résultats. La réponse inclura un champ totalElements afin que vous puissiez calculer le nombre total de pages. Le paramètre offset n’a aucun effet sauf si limit est également spécifié.BigBlueButton borne automatiquement la valeur à la plage autorisée. Si vous transmettez une valeur supérieure à 100, elle est traitée comme 100. Si vous transmettez une valeur inférieure à 1, elle est traitée comme 1. Aucune erreur n’est renvoyée.isBreakout défini à true. Ils peuvent également contenir des champs supplémentaires tels que l’ID de la réunion parente et le numéro de séquence de la salle de répartition.