-
Notifications
You must be signed in to change notification settings - Fork 10
Mconf Live API
Mconf-Live is a software based on BigBlueButton, which makes its API very similar to (and compatible with) BigBlueButton's API. The current version of the API is built on top of the API of BigBlueButton 0.9, therefore it supports everything from this version of BigBlueButton. You can find more about BigBlueButton's API in this page.
However, there are a few changes made on Mconf-Live's API over BigBlueButton's API. These changes are described below.
What changed: Parameters were added to the response.
Response:
Change | Param Name | When Returned | Type | Description |
---|---|---|---|---|
Added |
voiceBridge (within <meeting> ) |
Always | Number | The voice bridge configured when the meeting was created (param voiceBridge ). |
Added |
dialNumber (within <meeting> ) |
Always | String | The dial number configured when the meeting was created (param dialNumber ). |
Example Response:
<response>
<returncode>SUCCESS</returncode>
<meetingID>Demo Meeting</meetingID>
<attendeePW>ap</attendeePW>
<moderatorPW>mp</moderatorPW>
<createTime>1411067830029</createTime>
<voiceBridge>74518</voiceBridge> <!-- Added -->
<dialNumber>613-555-1234</dialNumber> <!-- Added -->
<createDate>Thu Sep 18 19:17:10 UTC 2014</createDate>
<hasUserJoined>true</hasUserJoined>
<duration>0</duration>
<hasBeenForciblyEnded>false</hasBeenForciblyEnded>
<messageKey/>
<message/>
</response>
What changed: Parameters were added to the response.
Response:
Change | Param Name | When Returned | Type | Description |
---|---|---|---|---|
Added |
voiceBridge (within <meeting> ) |
Always | Number | The voice bridge configured when the meeting was created (param voiceBridge ). |
Added |
dialNumber (within <meeting> ) |
Always | String | The dial number configured when the meeting was created (param dialNumber ). |
Added |
participantCount (within <meeting> ) |
Always | Number | Number of participants in a meeting. It's the same participantCount returned in getMeetingInfo . |
Added |
listenerCount (within <meeting> ) |
Always | Number | Number of participants listening to a meeting (using the listen only mode). It's the same listenerCount returned in getMeetingInfo . |
Added |
voiceParticipantCount (within <meeting> ) |
Always | Number | Number of participants in the audio conference of a meeting. It's the same voiceParticipantCount returned in getMeetingInfo . |
Added |
videoCount (within <meeting> ) |
Always | Number | Number of participants sharing video in a meeting. |
Example Response:
<response>
<returncode>SUCCESS</returncode>
<meetings>
<meeting>
<meetingID>Demo Meeting</meetingID>
<meetingName>Demo Meeting</meetingName>
<createTime>1411067830029</createTime>
<createDate>Thu Sep 18 19:17:10 UTC 2014</createDate>
<voiceBridge>74518</voiceBridge> <!-- Added -->
<dialNumber>613-555-1234</dialNumber> <!-- Added -->
<attendeePW>ap</attendeePW>
<moderatorPW>mp</moderatorPW>
<hasBeenForciblyEnded>false</hasBeenForciblyEnded>
<running>true</running>
<participantCount>2</participantCount> <!-- Added -->
<listenerCount>1</listenerCount> <!-- Added -->
<voiceParticipantCount>1</voiceParticipantCount> <!-- Added -->
<videoCount>1</videoCount> <!-- Added -->
<duration>0</duration>
<hasUserJoined>true</hasUserJoined>
</meeting>
</meetings>
</response>
What changed: Parameters were added to the response.
Response:
Change | Param Name | When Returned | Type | Description |
---|---|---|---|---|
Added | internalMeetingID |
Always | String | The internal identifier of this meeting. Can be used to access a video stream directly from Red5, for example. |
Added | listenerCount |
Always | Number | Number of participants listening to a meeting (using the listen only mode). It's the same listenerCount returned in getMeetings . |
Added | voiceParticipantCount |
Always | Number | Number of participants in the audio conference of a meeting. It's the same voiceParticipantCount returned in getMeetings . |
Added |
isPresenter (within <attendee> ) |
Always | Boolean | True if the attendee is the current presenter. There can only be one presenter at a time in a meeting. |
Added |
isListeningOnly (within <attendee> ) |
Always | Boolean | True if the attendee is listening to the voice conference using the listen only mode. |
Added |
hasJoinedVoice (within <attendee> ) |
Always | Boolean | True if the attendee has joined to the audio conference and shares audio with other attendees. |
Added |
videoStreams (within <attendee> ) |
Always | Group | Has child elements if the attendee is sharing a webcam. |
Added |
streamName (within <videoStreams> ) |
Always | String | Stream name being shared by an attendee. One attendee can share one or more video streams. |
Example Response:
<response>
<returncode>SUCCESS</returncode>
<meetingName>Demo Meeting</meetingName>
<meetingID>Demo Meeting</meetingID>
<internalMeetingID> <!-- Added -->
183f0bf3a0982a127bdb8161e0c44eb696b3e75c-1411067830029
</internalMeetingID>
<createTime>1411067830029</createTime>
<createDate>Thu Sep 18 19:17:10 UTC 2014</createDate>
<voiceBridge>74518</voiceBridge>
<dialNumber>613-555-1234</dialNumber>
<attendeePW>ap</attendeePW>
<moderatorPW>mp</moderatorPW>
<running>true</running>
<duration>0</duration>
<hasUserJoined>true</hasUserJoined>
<recording>false</recording>
<hasBeenForciblyEnded>false</hasBeenForciblyEnded>
<startTime>1411067830152</startTime>
<endTime>0</endTime>
<participantCount>2</participantCount>
<listenerCount>1</listenerCount> <!-- Added -->
<voiceParticipantCount>1</voiceParticipantCount> <!-- Added -->
<maxUsers>20</maxUsers>
<moderatorCount>1</moderatorCount>
<attendees>
<attendee>
<userID>r4osda8xzlsg</userID>
<fullName>stu</fullName>
<role>VIEWER</role>
<isPresenter>false</isPresenter> <!-- Added -->
<isListeningOnly>false</isListeningOnly> <!-- Added -->
<hasJoinedVoice>true</hasJoinedVoice> <!-- Added -->
<videoStreams> <!-- Added -->
<streamName>320x240-r4osda8xzlsg-1411067854724</streamName>
</videoStreams>
<customdata/>
</attendee>
<attendee>
<userID>jgkgwilgigcf</userID>
<fullName>mod</fullName>
<role>MODERATOR</role>
<isPresenter>true</isPresenter> <!-- Added -->
<isListeningOnly>true</isListeningOnly> <!-- Added -->
<hasJoinedVoice>false</hasJoinedVoice> <!-- Added -->
<videoStreams/> <!-- Added -->
<customdata/>
</attendee>
</attendees>
<metadata/>
<messageKey/>
<message/>
</response>
What changed: Parameters were added to the API call.
Parameters:
Change | Param Name | When Returned | Type | Description |
---|---|---|---|---|
Added | guest |
Optional | Boolean | If guest is "true" (case insensitive), the user will have to wait until the moderator (any moderator of the meeting) approves or rejects her participation. If omitted, the user won't be a guest (default behavior). The roles defined by password are not affected: a guest could be a moderator or a viewer - the role will take place after the meeting moderator approves her participation. |
Example Requests:
http://yourserver.com/bigbluebutton/api/join?meetingID=test01&password=mp&fullName=John&guest=true&checksum=1234
What changed: Parameters were added to the API call.
Parameters:
Change | Param Name | When Returned | Type | Description |
---|---|---|---|---|
Added | meta |
Optional | String | You can pass one or more metadata values to filter the recordings returned. If multiple metadata values are passed, will only return recordings that match all of them. The format of these parameters is the same as the metadata passed to the create call. For more information see this page
|
Example Requests:
http://yourserver.com/bigbluebutton/api/getRecordings?meta_presenter=joe&meta_category=education&checksum=1234
What changed: New API call that returns basic stats about the meetings held in the server.
Parameters:
Param Name | Required / Optional | Type | Description |
---|---|---|---|
meetingID |
Optional | String | A meeting ID for get the stats. It can be a set of meetingIDs separate by commas. If the meeting ID is not specified, it will get all the stored stats. The semantics for this parameters is the same as in the getRecordings call (see this page). |
Example Requests:
http://yourserver.com/bigbluebutton/api/getStats?checksum=1234
http://yourserver.com/bigbluebutton/api/getStats?meetingID=Meeting1&checksum=1234
http://yourserver.com/bigbluebutton/api/getStats?meetingID=Meeting1,Meeting2,Meeting3&checksum=1234
Example Response:
<response>
<returncode>SUCCESS</returncode>
<stats>
<meeting>
<meetingID>test01</meetingID>
<meetingName>Test</meetingName>
<recordID>183f0bf3a0982a127bdb8161e0c44eb696b3e75c-1337964901471</recordID>
<startTime>1401206434944</startTime>
<endTime>1401206455564</endTime>
<participants>
<participant>
<userID>josy6efffm6e</userID>
<userName>John Doe</userName>
<joinTime>1401206434944</joinTime>
<leftTime>1401206455459</leftTime>
</participant>
<participant>
<userID>9wvp7mz15zpa</userID>
<userName>Dexter Morgan</userName>
<joinTime>1401206434944</joinTime>
<leftTime>1401206455459</leftTime>
</participant>
</participants>
</meeting>
</stats>
</response>
This wiki contains the technical documentation of Mconf.
See more about the project and use for free at mconf.org.
- Home
- Mconf-Live
- Mconf-Mobile (go to subproject wiki)
- Mconf-Web (go to subproject wiki)
- APIs
- Scalable Infrastructure
- Mconf Global Network
- Technical FAQ