{"id":22191791,"url":"https://github.com/bigbluebutton/bbb-events","last_synced_at":"2025-07-26T22:31:33.302Z","repository":{"id":35010257,"uuid":"111852126","full_name":"bigbluebutton/bbb-events","owner":"bigbluebutton","description":"A ruby gem for extracting data from a BigBlueButton recording's events.xml file.","archived":false,"fork":false,"pushed_at":"2024-03-05T15:31:13.000Z","size":317,"stargazers_count":24,"open_issues_count":2,"forks_count":22,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-10-29T13:44:01.920Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bigbluebutton.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}},"created_at":"2017-11-23T21:38:47.000Z","updated_at":"2024-10-10T19:35:12.000Z","dependencies_parsed_at":"2024-02-28T20:24:25.801Z","dependency_job_id":"f93313d1-2ac5-4e89-8ac1-d4014f5ebc1a","html_url":"https://github.com/bigbluebutton/bbb-events","commit_stats":{"total_commits":93,"total_committers":10,"mean_commits":9.3,"dds":0.5913978494623655,"last_synced_commit":"2a6d1b9ca54b401b6b241de1d4075bc01a43473b"},"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bigbluebutton%2Fbbb-events","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bigbluebutton%2Fbbb-events/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bigbluebutton%2Fbbb-events/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bigbluebutton%2Fbbb-events/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bigbluebutton","download_url":"https://codeload.github.com/bigbluebutton/bbb-events/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":227584439,"owners_count":17789696,"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-12-02T12:17:48.276Z","updated_at":"2024-12-02T12:17:48.758Z","avatar_url":"https://github.com/bigbluebutton.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# bbbevents\n\n![Travis CI](https://api.travis-ci.org/blindsidenetworks/bbb-events.svg?branch=master)\n\nbbbevents is a simple ruby gem that makes it easier to parse data from a recordings events.xml file.\n\nThis gem is currently being used on the recording server to parse events and build meeting dashboards.\n\n## Testing\n\n```\nbundle install --path vendor/bundle\n```\n\nCopy an `events.xml` file into `testdata/` dir.\n\n```\nbundle exec ruby example.rb testdata/events.xml\n```\n\n## Installation\n\nAdd this line to your application's Gemfile:\n\n```ruby\ngem 'bbbevents'\n```\n\nAnd then execute:\n\n    $ bundle\n\n## Usage\n\n### Recordings\n```ruby\nrequire 'bbbevents'\n\n# Parse the recording's events.xml.\nrecording = BBBEvents.parse(\"events.xml\")\n\n# Access recording data.\nrecording.metadata\nrecording.meeting_id\n\n# Retrieve start, finish time objects or total duration in seconds.\nrecording.start\nrecording.finish\nrecording.duration\n\n# Returns a list of Attendee objects.\nrecording.attendees\nrecording.moderators\nrecording.viewers\n\n# Returns a list of Poll objects.\nrecording.polls\nrecording.published_polls\nrecording.unpublished_polls\n\n# Returns a list of upload files (names only).\nrecording.files\n\n# Generate a CSV file with the data.\nrecording.create_csv(\"data.csv\")\n\n```\n\n### Attendees\n```ruby\n# Grab attendee info.\nattendee.name\nattendee.moderator?\n\n# Fetch initial join, last leave, or total duration.\nattendee.duration\nattendee.joined\nattendee.left\n\n# Fetch all recorded join/leave times.\nattendee.joins\nattendee.leaves\n\n# View attendee engagement.\nattendee.engagement\n\n# =\u003e {\n# :chats =\u003e 11,\n# :talks =\u003e 7,\n# :raisehand =\u003e 2,\n# :emojis =\u003e 5,\n# :poll_votes =\u003e 2,\n# :talk_time =\u003e 42\n# }\n```\n\n### Polls\n```ruby\n# Determine if poll is published.\npoll.published?\n\n# Determine when the poll started.\npoll.start\n\n# Returns an Array containing possible options.\npoll.options\n\n# Returns a Hash mapping user_id's to their poll votes.\npoll.votes\n```\n\n## License\n\nThe gem is available as open source under the terms of the [LGPL 3.0 License](https://www.gnu.org/licenses/lgpl-3.0.txt).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbigbluebutton%2Fbbb-events","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbigbluebutton%2Fbbb-events","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbigbluebutton%2Fbbb-events/lists"}