Skip to content

Commit

Permalink
Merge pull request #557 from mconf/update-readme
Browse files Browse the repository at this point in the history
Update README.md
  • Loading branch information
frankemax authored Nov 24, 2023
2 parents f34ad57 + 904a21b commit 02c271f
Showing 1 changed file with 61 additions and 35 deletions.
96 changes: 61 additions & 35 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,53 +1,79 @@

# bbb-mobile-sdk
The bbb-mobile-sdk is a software development kit (SDK) designed for mobile applications that integrate with BigBlueButton. This SDK provides developers with a set of tools and libraries to easily build mobile apps that can interact with the features and functionalities of BBB.

## **Table of Contents**

- Features
- Code dependencies
- How to integrate with my own BBB server
- Contributing
- License

## Features
- Real-time video and audio conferencing capabilities
- View presentation and screen sharing functionality
- Recording of meetings
- Breakout rooms
- Chat and messaging functionality

Check the full list of features present in HTML5 and bbb-mobile-sdk here

## Code dependencies
Android: here

iOS: here


## How to integrate with my own BBB server
Currently, the bbb-mobile-sdk can only integrate if the server is version 2.5 / 2.6 and 2.7 (experimental). We are very excited about version 3.0, and we believe that things will get easier, but for now, we don't support this version yet.

`bbb-mobile-sdk` does not yet have all the features that BBB's HTML5 client provides, so see the equivalence table to check if it makes sense for you to integrate this project.

If you are not a mobile developer, it may take a little time to install simulators and Android SDKs, however, after the initial installation the **ONLY** thing you need to join a session is the Join link.

### Versions
`bbb-mobile-sdk` can be compared as a native HTML5 version.

$ node -v
v18.15.0
### Easy implementation
To make things easier, we provide a template that provides all the dependencies for you to develop your own version of greenlight. We plan to make this template available with BigBlueButton's Greenlight integrated in the future, but for now we leave it as a simple template.
https://github.com/mconf/bbb-mobile-template

### Manual implementation

$ npm -v
v9.5.0
If you already have a react-native application that uses the BBB version through a WebView, you can install the component using:

## For Android only:
$ java -version
openjdk version "11.0.16.1" 2022-08-12
OpenJDK Runtime Environment (build 11.0.16.1+1)
OpenJDK 64-Bit Server VM (build 11.0.16.1+1, mixed mode)
```bash
$ npm install git+https://github.com/mconf/bbb-mobile-sdk.git#v0.9.4
# Yes, we plan to make this package available via npm.
```

###
Run on android:
Install Android Studio and setup a device with google play store
Device info in android studio:
Pixel 4, API 30, android 11
Run on iOS:
Install XCode (ios only)
You probably have to build your own native modules (/ios/ and /android/ folder) of your application, and this will require you to install WebRTC modules and other native libraries that require the main application to implement. The native modules you will have to install are listed here.
___

Install eas-cli globally (with npm) to build
You can install with `npx expo`
After the initial installation you can start using like

### To install the dependencies, run:
```jsx
import BbbMobileSdk from "bbb-mobile-sdk";
```

$ npm install
Pass the joinUrl of your meeting in the jUrl prop, and what to do when the user leave the meeting to the onLeaveSession callback:

## How to run
```jsx
<BbbMobileSdk
jUrl={joinUrl}
onLeaveSession={() => navigation.replace("Home")}
/>
```

First go to settings.json and flip the flag dev to 'true'
## Contributing
We welcome contributions from the community. To contribute to the BigBlueButton Mobile SDK, follow these steps:

Android:
$ npx expo run:android

if it crashes with an error message with something like: ANDROID_SDK_ENVIRONMENT missing...
$ export ANDROID_HOME=$HOME/Android/Sdk
$ export PATH=$PATH:$ANDROID_HOME/tools
1. Fork the repository.
2. Create a new branch for your feature or bug fix.
3. Make your changes and submit a pull request.

if it results in a error with gradle:
$ cd android && ./gradlew clean
iOS:
$ npx expo run:ios
Please read our [contribution guidelines](https://github.com/mconf/bbb-mobile-sdk/blob/main/CONTRIBUTING.md) for more details.

## License

bbb-mobile-sdk is released under the [MIT License](https://github.com/mconf/bbb-mobile-sdk/blob/dev/LICENSE.md).
The `bbb-mobile-sdk` is released under the [MIT License](https://github.com/mconf/bbb-mobile-sdk/blob/dev/LICENSE.md).

0 comments on commit 02c271f

Please sign in to comment.