Build the expertus meeting's new UX, which specifically has two challenges to deal with -
1) Meeting actions should be available within the player (meeting player should be launched within the meeting HTML UI)
2) Meeting app's UI should be scaled to fit the whole screen.
Join a meeting: https://invis.io/FZ5PCTF3X
Sign in: https://invis.io/W95PCVRKF
Meet now: https://invis.io/KC5PCX3EY
Schedule: https://invis.io/5X5PCXWKE
Two possible ways are there to achieve this -
a) IFRAME based approach.
b) Embedded object based approach.
Launch the meeting player in an iframe within the meeting app.
Just create an iframe and when the user clicks on start/join meeting launch the player inside the iframe. The key aspect here is, cookie handling and some functionality does not work if the launcher and BBB apps are in different domains. But in our case this is the same domain. So, it is not an issue.
POC is made and is tested in all browsers and all the functionality of meeting client works fine.
1) Loose coupling between BBB and the API are maintained.
2) No code involved in BBB's layout. So, more maintainable.
3) Same UI can be reused for Live events, meeting and Eone.
1) Need to test it using https.
2) Fix the issue with FF's z-index.
3) Track the meeting's launch status through cookie for a better UX.
Instead of launching the app from BBB, it can be launched from a view of rails app.
Edit bigbluebutton.properties and point the defaultClientUrl to any rails view we need.
Copy BBB's 'client' directory to rails app's assets directory and embed the ExpertusMeeting.swf file in the rails view.
1) More control over the UI and we can launch the app and tweak the flow as we want.
1) Need to change the code and JS libraries of both apps so that they are sync.
2) Very tightly coupled. Maintenance efforts are more.
3) Development takes time as code changes involved are more.
1) Need to test it using https.
work in progress.