the java project is a php website (php part is all done) togheter a java + ajax streaming (that's your homework), so you should make only java part.
It's no a desktop application but a web application.
There are three type of user: teacher and student and admin
more students can see and listner a teacher in real time at time.
1) In home page there is a php script that shows all [url removed, login to view] or more classroom (each classroom is rappresentative in home page from an image that is upgrading yourself each 5 minutes (refresh)). This image is a screenshot that java take from the conversation. So java have to insert each 5 minutes in a folder all the screenshot. Php views that image in home page.
2) Each teacher at the first time entry in a public classroom (comunication by unidirectional audio flow N -> 1) + chat (bidirectional).
A teacher can choice a student in pubblic classroom for deepen a topic with only a student for time in a private classroom. This session can last X minute or hours, where X is a value that choice only the teacher.
After that the teacher can decide to return in a public classroom and choice another student or make a public lesson, until the teacher finish the lesson.
Java have to say to php how many users are present in a pubblic o private classroom
The teacher and admin rules are:
Both (teacher and administrator) can ban a student for X min, hours, days, week, month, forever.
The administrators can see the lesson in hidden mode (no visible at teachers that students).
The teacher could decide by java choice if the student have to pay a private lesson and the import.
Only registred user can see the video in a fullscreen mode, the other user can see the video only in 4:3 o 16:9 format.
This script have to works always also when there are [url removed, login to view] or more users at the same time, it's no permits crash or slowing. ALL VIDEO AND CONVERSATIONS have to FLUID (it's very important)!!! We have a very good server.