Nashville Plays Music

    bigbluebutton-js
    DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/bigbluebutton-js package

    0.2.0 • Public • Published

    BigBlueButtonJs Logo

    JavaScript layer to interact with BigBlueButton API. Supports WebHooks.

    Read the Official Documentation

    Follow the Changelog

    Features

    • Supports BBB API, and WebHooks
    • Provides methods to construct URLs, and calculate SHA checksum
    • Provides HTTP client that converts XML responses to JS objects
    • Works with Node 10 or newer
    • Works in browser dist/browser.js

    Installation

    npm i bigbluebutton-js

    Usage

    You will need to provide BigBlueButton URL and secret to the script. You can obtain them by logging into you BBB server, and running:

    bbb-conf --secret

    Use the obtained values in your script:

    const bbb = require('bigbluebutton-js')
    let api = bbb.api(
        process.env.BBB_URL, 
        process.env.BBB_SECRET
      )

    For comprehensive getting started section, see official docs.

    Examples

    The following example shows how to create a room, and links for moderator and attendee to join:

    const bbb = require('bigbluebutton-js')
     
    // BBB_URL and BBB_SECRET can be obtained
    // by running bbb-conf --secret on your BBB server
    // refer to Getting Started for more information
    let api = bbb.api(
        process.env.BBB_URL, 
        process.env.BBB_SECRET
      )
    let http = bbb.http
     
    // api module itslef is responsible for constructing URLs
    let meetingCreateUrl = api.administration.create('My Meeting', '1', {
      duration: 2,
      attendeePW: 'secret',
      moderatorPW: 'supersecret',
    })
     
    // http method should be used in order to make calls
    http(meetingCreateUrl).then((result) => {
      console.log(result)
     
      let moderatorUrl = api.administration.join('moderator', '1', 'supersecret')
      let attendeeUrl = api.administration.join('attendee', '1', 'secret')
      console.log(`Moderator link: ${moderatorUrl}\nAttendee link: ${attendeeUrl}`)
     
      let meetingEndUrl = api.administration.end('1', 'supersecret')
      console.log(`End meeting link: ${meetingEndUrl}`)
    })

    For comprehensive examples section, see official docs.

    Reference

    Our reference is divided into two sections: API and WebHooks.

    Tests

    To run the test suites some prior configuration is required. First, create a .env file in library root. The file should have the following content:

    BBB_URL=https://mysite.com/bigbluebutton
    BBB_SECRET=MySuperSecretSharedToken
    

    Make sure, you installed development dependencies (mocha, and dotenv). Now you can run npm run test:

    npm run test

    License

    This project is licensed under the ISC License - see the LICENSE file for details

    Acknowledgments

    Install

    npm i bigbluebutton-js

    DownloadsWeekly Downloads

    648

    Version

    0.2.0

    License

    ISC

    Unpacked Size

    65.2 kB

    Total Files

    15

    Last publish

    Collaborators

    • aakatev