Skip to content
This repository was archived by the owner on Mar 22, 2023. It is now read-only.
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions _data/getMeetingSummary.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
- name: "recordID"
required: true
type: "String"
description: "A single recording ID to retrieve the events for. (Unlike other recording APIs, you cannot provide a comma-separated list of recordings.)"
12 changes: 11 additions & 1 deletion _data/getRecordingTextTracks.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,14 @@
- name: "recordID"
required: true
type: "String"
description: "A single recording ID to retrieve the available captions for. (Unlike other recording APIs, you cannot provide a comma-separated list of recordings.)"
description: "A single recording ID to retrieve the available captions for. (Unlike other recording APIs, you cannot provide a comma-separated list of recordings.)"

- name: "page"
required: false
type: "Integer"
description: "The page number that you wish to retrieve. By default the first page (page 0) is returned."

- name: "size"
required: false
type: "Integer"
description: "The maximum number of recording text tracks that should be returned per page. By default at most 25 recording text tracks are included in each page."
12 changes: 11 additions & 1 deletion _data/getRecordings.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,14 @@
- name: "meta"
required: false
type: "String"
description: "You can pass one or more metadata values to filter the recordings returned. The format of these parameters is the same as the metadata passed to the <code class=\"language-plaintext highlighter-rouge\">create</code> call. For more information see <a href=\"http://docs.bigbluebutton.org/dev/api.html#create\">the docs for the create call</a>."
description: "You can pass one or more metadata values to filter the recordings returned. The format of these parameters is the same as the metadata passed to the <code class=\"language-plaintext highlighter-rouge\">create</code> call. For more information see <a href=\"http://docs.bigbluebutton.org/dev/api.html#create\">the docs for the create call</a>."

- name: "page"
required: false
type: "Integer"
description: "The page number that you wish to retrieve. By default the first page (page 0) is returned."

- name: "size"
required: false
type: "Integer"
description: "The maximum number of recordings that should be returned per page. By default at most 25 recordings are included in each page."
143 changes: 108 additions & 35 deletions _posts/dev/2015-04-05-api.md
Original file line number Diff line number Diff line change
Expand Up @@ -666,21 +666,22 @@ Retrieves the recordings that are available for playback for a given meetingID (

**Resource URL:**

http&#58;//yourserver.com/bigbluebutton/api/getRecordings?[parameters]&checksum=[checksum]
http&#58;//yourserver.com/bigbluebutton/api/v1/getRecordings?[parameters]&checksum=[checksum]

**Parameters:**

{% include api_table.html endpoint="getRecordings" %}

**Example Requests:**

- http&#58;//yourserver.com/bigbluebutton/api/getRecordings?checksum=1234
- http&#58;//yourserver.com/bigbluebutton/api/getRecordings?meetingID=CS101&checksum=abcd
- http&#58;//yourserver.com/bigbluebutton/api/getRecordings?meetingID=CS101,CS102&checksum=wxyz
- http&#58;//yourserver.com/bigbluebutton/api/getRecordings?recordID=652c9eb4c07ad49283554c76301d68770326bd93-1462283509434&checksum=wxyz
- http&#58;//yourserver.com/bigbluebutton/api/getRecordings?recordID=652c9eb4c07ad49283554c76301d68770326bd93-1462283509434,9e359d17635e163c4388281567601d7fecf29df8-1461882579628&checksum=wxyz
- http&#58;//yourserver.com/bigbluebutton/api/getRecordings?recordID=652c9eb4c07ad49283554c76301d68770326bd93&checksum=wxyz
- http&#58;//yourserver.com/bigbluebutton/api/getRecordings?recordID=652c9eb4c07ad49283554c76301d68770326bd93,9e359d17635e163c4388281567601d7fecf29df8&checksum=wxyz
- http&#58;//yourserver.com/bigbluebutton/api/v1/getRecordings?checksum=1234
- http&#58;//yourserver.com/bigbluebutton/api/v1/getRecordings?meetingID=CS101&checksum=abcd
- http&#58;//yourserver.com/bigbluebutton/api/v1/getRecordings?meetingID=CS101,CS102&checksum=wxyz
- http&#58;//yourserver.com/bigbluebutton/api/v1/getRecordings?recordID=652c9eb4c07ad49283554c76301d68770326bd93-1462283509434&checksum=wxyz
- http&#58;//yourserver.com/bigbluebutton/api/v1/getRecordings?recordID=652c9eb4c07ad49283554c76301d68770326bd93-1462283509434,9e359d17635e163c4388281567601d7fecf29df8-1461882579628&checksum=wxyz
- http&#58;//yourserver.com/bigbluebutton/api/v1/getRecordings?recordID=652c9eb4c07ad49283554c76301d68770326bd93&checksum=wxyz
- http&#58;//yourserver.com/bigbluebutton/api/v1/getRecordings?recordID=652c9eb4c07ad49283554c76301d68770326bd93,9e359d17635e163c4388281567601d7fecf29df8&checksum=wxyz
- http&#58;//yourserver.com/bigbluebutton/api/v1/getRecordings?recordID=652c9eb4c07ad49283554c76301d68770326bd93,9e359d17635e163c4388281567601d7fecf29df8&page=0&size=5&checksum=wxyz

**Example Response:**

Expand Down Expand Up @@ -769,6 +770,25 @@ Here the `getRecordings` API call returned back two recordings for the meetingID
</playback>
</recording>
</recordings>
<pagination>
<pageable>
<sort>
<unsorted>true</unsorted>
<sorted>false</sorted>
<empty>true</empty>
</sort>
<offset>0</offset>
<pageSize>25</pageSize>
<pageNumber>0</pageNumber>
<paged>true</paged>
<unpaged>false</unpaged>
<pageable>
<totalElements>2</totalElements>
<last>true</last>
<totalPages>1</totalPages>
<first>true</first>
<empty>false</empty>
</pagination>
</response>
```

Expand All @@ -778,16 +798,16 @@ Publish and unpublish recordings for a given recordID (or set of record IDs).

**Resource URL:**

- http&#58;//yourserver.com/bigbluebutton/api/publishRecordings?[parameters]&checksum=[checksum]
- http&#58;//yourserver.com/bigbluebutton/api/v1/publishRecordings?[parameters]&checksum=[checksum]

**Parameters:**

{% include api_table.html endpoint="publishRecordings" %}

**Example Requests:**

- http&#58;//yourserver.com/bigbluebutton/api/publishRecordings?recordID=record123&publish=true&checksum=1234
- http&#58;//yourserver.com/bigbluebutton/api/publishRecordings?recordID=record123,recordABC&publish=true&checksum=wxyz
- http&#58;//yourserver.com/bigbluebutton/api/v1/publishRecordings?recordID=record123&publish=true&checksum=1234
- http&#58;//yourserver.com/bigbluebutton/api/v1/publishRecordings?recordID=record123,recordABC&publish=true&checksum=wxyz

**Example Response:**

Expand All @@ -804,16 +824,16 @@ Delete one or more recordings for a given recordID (or set of record IDs).

**Resource URL:**

http&#58;//yourserver.com/bigbluebutton/api/deleteRecordings?[parameters]&checksum=[checksum]
http&#58;//yourserver.com/bigbluebutton/api/v1/deleteRecordings?[parameters]&checksum=[checksum]

**Parameters:**

{% include api_table.html endpoint="deleteRecordings" %}

**Example Requests:**

- http&#58;//yourserver.com/bigbluebutton/api/deleteRecordings?recordID=record123&checksum=1234
- http&#58;//yourserver.com/bigbluebutton/api/deleteRecordings?recordID=record123,recordABC&checksum=wxyz
- http&#58;//yourserver.com/bigbluebutton/api/v1/deleteRecordings?recordID=record123&checksum=1234
- http&#58;//yourserver.com/bigbluebutton/api/v1/deleteRecordings?recordID=record123,recordABC&checksum=wxyz

**Example Response:**

Expand All @@ -830,15 +850,15 @@ Update metadata for a given recordID (or set of record IDs). Available since ver

**Resource URL:**

- http&#58;//yourserver.com/bigbluebutton/api/updateRecordings?[parameters]&checksum=[checksum]
- http&#58;//yourserver.com/bigbluebutton/api/v1/updateRecordings?[parameters]&checksum=[checksum]

**Parameters:**

{% include api_table.html endpoint="updateRecordings" %}

**Example Requests:**

- http&#58;//yourserver.com/bigbluebutton/api/updateRecordings?recordID=record123&meta_Presenter=Jane%20Doe,meta_category=FINANCE,meta_TERM=Fall2016&checksum=1234
- http&#58;//yourserver.com/bigbluebutton/api/v1/updateRecordings?recordID=record123&meta_Presenter=Jane%20Doe,meta_category=FINANCE,meta_TERM=Fall2016&checksum=1234

**Example Response:**

Expand All @@ -855,7 +875,7 @@ Get a list of the caption/subtitle files currently available for a recording. It

**Resource URL:**

`GET http://yourserver.com/bigbluebutton/api/getRecordingTextTracks?[parameters]&checksum=[checksum]`
`GET http://yourserver.com/bigbluebutton/api/v1/getRecordingTextTracks?[parameters]&checksum=[checksum]`

**Parameters:**

Expand All @@ -867,24 +887,49 @@ An example response looks like the following:

```json
{
"response": {
"returncode": "SUCCESS",
"tracks": [
{
"href": "https://captions.example.com/textTrack/0ab39e419c9bcb63233168daefe390f232c71343/183f0bf3a0982a127bdb8161e0c44eb696b3e75c-1554230749920/subtitles_en-US.vtt",
"kind": "subtitles",
"label": "English",
"lang": "en-US",
"source": "upload"
},
{
"href": "https://captions.example.com/textTrack/95b62d1b762700b9d5366a9e71d5fcc5086f2723/183f0bf3a0982a127bdb8161e0c44eb696b3e75c-1554230749920/subtitles_pt-BR.vtt",
"kind": "subtitles",
"label": "Brazil",
"lang": "pt-BR",
"source": "upload"
}
"returncode": "SUCCESS",
"tracks": {
"content": [
{
"href": "https://captions.example.com/textTrack/0ab39e419c9bcb63233168daefe390f232c71343/183f0bf3a0982a127bdb8161e0c44eb696b3e75c-1554230749920/subtitles_en-US.vtt",
"kind": "subtitles",
"label": "English",
"lang": "en-US",
"source": "upload"
},
{
"href": "https://captions.example.com/textTrack/95b62d1b762700b9d5366a9e71d5fcc5086f2723/183f0bf3a0982a127bdb8161e0c44eb696b3e75c-1554230749920/subtitles_pt-BR.vtt",
"kind": "subtitles",
"label": "Brazil",
"lang": "pt-BR",
"source": "upload"
}
]
"pageable": {
"sort": {
"empty": true,
"unsorted": true,
"sorted": false
},
"offset": 0,
"pageSize": 25,
"pageNumber": 0,
"paged": true,
"unpaged": false
},
"totalElements": 2,
"totalPages": 1,
"last": true,
"number": 0,
"sort": {
"empty": true,
"unsorted": true,
"sorted": false
},
"size": 25,
"first": true,
"numberOfElements": 2,
"empty": false
}
}
```
Expand Down Expand Up @@ -941,7 +986,7 @@ This API is asynchronous. It can take several minutes for the uploaded file to b

**Resource URL:**

`POST http://yourserver.com/bigbluebutton/api/putRecordingTextTrack`
`POST http://yourserver.com/bigbluebutton/api/v1/putRecordingTextTrack`

**Parameters:**

Expand Down Expand Up @@ -1035,6 +1080,34 @@ Missing parameter error
}
```

## getMeetingSummary

Get a summary of events that occurred during a meeting.

**Resource URL:**

- http&#58;//yourserver.com/bigbluebutton/api/v1/getMeetingSummary?[parameters]&checksum=[checksum]

**Parameters:**

{% include api_table.html endpoint="getMeetingSummary" %}

**Example Requests:**

- http&#58;//yourserver.com/bigbluebutton/api/v1/getMeetingSummary?recordID=record123&checksum=1234

**Example Response:**

```xml
<response>
<returncode>SUCCESS</returncode>
<meetingSummary>
contents of events.xml
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't this be the JSON output (in CDATA) from the bbb_events Gem?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It could be done like that. I simple took the json that is returned from the bbb_events Gem and converted it into xml so that there isn't a mix of both.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the conversion automatic (via a built-in function so there is no maintenance needed as the JSON content expands) and is a one-to-one mapping?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, the conversion happens automatically. The events data is stored as raw json in the DB and when it is retrieved it gets converted into xml.

<meetingSummary>
</response>
```


# API Sample Code

BigBlueButton provides API Sample Codes so you can integrated easily with your application. Feel free to contribute and post your implementation of the API in other language code in the bigbluebutton-dev mailing list.
Expand Down