-
Notifications
You must be signed in to change notification settings - Fork 12
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #557 from mconf/update-readme
Update README.md
- Loading branch information
Showing
1 changed file
with
61 additions
and
35 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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). |