{"id":16648500,"url":"https://github.com/mconf/bigbluebot","last_synced_at":"2025-09-18T23:02:38.523Z","repository":{"id":33586604,"uuid":"159746228","full_name":"mconf/bigbluebot","owner":"mconf","description":"BigBlueButton bots","archived":false,"fork":false,"pushed_at":"2024-06-26T02:25:16.000Z","size":11222,"stargazers_count":58,"open_issues_count":10,"forks_count":29,"subscribers_count":12,"default_branch":"develop","last_synced_at":"2024-12-22T14:08:15.428Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mconf.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-11-30T00:37:37.000Z","updated_at":"2024-09-18T03:21:43.000Z","dependencies_parsed_at":"2024-10-26T20:45:40.055Z","dependency_job_id":"0fc11cc7-5206-441e-8fa5-89931bfda7cb","html_url":"https://github.com/mconf/bigbluebot","commit_stats":{"total_commits":152,"total_committers":6,"mean_commits":"25.333333333333332","dds":0.09868421052631582,"last_synced_commit":"46e2e7d70c693497f8724efd4be45f5d420fb9a2"},"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mconf%2Fbigbluebot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mconf%2Fbigbluebot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mconf%2Fbigbluebot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mconf%2Fbigbluebot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mconf","download_url":"https://codeload.github.com/mconf/bigbluebot/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":231749527,"owners_count":18420826,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-12T09:04:32.309Z","updated_at":"2025-09-18T23:02:33.439Z","avatar_url":"https://github.com/mconf.png","language":"JavaScript","funding_links":[],"categories":["Tools"],"sub_categories":["Video Management"],"readme":"# BigBlueBot\n\nBigBlueButton bots\n\n## Requirements\n\nA BigBlueButton's server and API's secret\n\n## Instructions\n\n**IMPORTANT**: do not run this lib with `root` privileges\n\n`npm i @mconf/bigbluebot`\n\n`cp node_modules/bigbluebot/.env.template .env`\n\n### Set your environment variables\n\nAt the `.env` file you just copied, set:\n\n - your BigBlueButton server URL\n```\nBIGBLUEBOT_HOST=https://your.bigbluebutton.server\n```\n - your BigBlueButton server API secret\n```\nBIGBLUEBOT_SECRET=yourbigbluebuttonsecret\n```\n- your BigBlueButton server running version (currently 2.5)\n```\nBIGBLUEBOT_VERSION=2.5\n```\n - [optional] room name or meetingID\n```\nBIGBLUEBOT_ROOM=yourbigbluebuttonroomidentifier\n```\nIf you would like the bots to join an existing room, you may fill\nout the password variables and use the `meetingID` value as `BIGBLUEBOT_ROOM`\nTo find out these data, you may call the `getMeetings` route of your BBB\ninstance as described [here](https://docs.bigbluebutton.org/dev/api.html#getmeetings).\n - [optional] the `attendeePW` and `moderatorPW` as shown in getMeetings\n```\nBIGBLUEBOT_ATTENDEE_PW=yourattendeepassword\nBIGBLUEBOT_MODERATOR_PW=yourmoderatorpassword\n```\n - [optional] number of bots to join the room\n```\nBIGBLUEBOT_BOTS=1\n```\n - [optional] time (milliseconds) between bots to join\n```\nBIGBLUEBOT_WAIT=2000\n```\n - [optional] time (milliseconds) of a bot life span\n```\nBIGBLUEBOT_LIFE=60000\n```\n - [optional] external browser to be used\n```\nBIGBLUEBOT_BROWSER=/path/to/your/browser\n```\n - [optional] endpoint browser websocket to be used\n```\nBIGBLUEBOT_ENDPOINT=wss://your.browser.websocket\n```\n - [optional] endpoint authentication token\n```\nBIGBLUEBOT_TOKEN=yourauthenticationtoken\n```\n - [optional] log level\n```\nBIGBLUEBOT_LOG=info\n```\n - [optional] Ignore HTTPS errors during navigation\n```\nBIGBLUEBOT_IGNORE_HTTPS_ERRORS=false\n```\n\n### Make a run script\n\nCreate your script, e.g. `run.js`:\n\nJoin audio with microphone\n\n```js\nconst bigbluebot = require('@mconf/bigbluebot');\n\nconst actions = async page =\u003e {\n  await bigbluebot.audio.modal.microphone(page);\n};\n\nbigbluebot.run(actions);\n```\n\nJoin audio as a listener\n\n```js\nconst bigbluebot = require('@mconf/bigbluebot');\n\nconst actions = async page =\u003e {\n  await bigbluebot.audio.modal.listen(page);\n};\n\nbigbluebot.run(actions);\n```\n\nJoin video\n\n```js\nconst bigbluebot = require('@mconf/bigbluebot');\n\nconst actions = async page =\u003e {\n  await bigbluebot.video.join(page);\n};\n\nbigbluebot.run(actions);\n```\n\nWrite in chat\n\n```js\nconst bigbluebot = require('@mconf/bigbluebot');\n\nconst actions = async page =\u003e {\n  await bigbluebot.chat.send(page);\n};\n\nbigbluebot.run(actions);\n```\n\n#### Runtime options\n\nYou can pass options as a run parameter\n\n```js\nconst bigbluebot = require('@mconf/bigbluebot');\n\nconst actions = async page =\u003e {\n  await bigbluebot.audio.modal.microphone(page);\n  await bigbluebot.video.join(page);\n  await bigbluebot.chat.send(page);\n};\n\nconst options = {\n  host: 'https://your.bigbluebutton.server',\n  secret: 'yourbigbluebuttonsecret',\n  version: '2.2' OR '2.3',\n  room: 'yourbigbluebuttonroomidentifier',\n  password: {\n    moderator: 'yourmoderatorpassword',\n    attendee: 'yourattendeepassword',\n  },\n  moderator: true OR false,\n  userdata: {\n    \"userdata-bbb_first_userdata\": value,\n    \"userdata-bbb_second_userdata\": value,\n    \"userdata-bbb_third_userdata\": value,\n  },\n};\n\nbigbluebot.run(actions, options);\n```\n\n### Run your script\n\n`node run.js`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmconf%2Fbigbluebot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmconf%2Fbigbluebot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmconf%2Fbigbluebot/lists"}