Develop Jitsi in PHP using Javascript

I want to integrate jitsi in my PHP site.
My requirement is exactly like a classroom. The trainer takes the class and the students participate in the class. The trainer should be logged in and he created a video conferencing class 2 days before. For eg: at 3 pm he is scheduling a class. After 2 days the students who paid for this class joining in this video conferencing. Only the paid students can able to join in this video conferencing and also I don’t need any ability for student to invite other people for this class. Only the selected student and the trainer is able to connect in video conferencing.
This is possible?
Can you please suggest and refer to any code?
I think i can use only the below code for this purpose. But how can i achieve my requirements by using this code can you please suggest.

    <script>
        var domain = "meet.jit.si";
        var options = {
            roomName: "videoconference1008",
            width: '100%',
            height: 500,
            parentNode: undefined,
            configOverwrite: {},
            interfaceConfigOverwrite: {
                filmStripOnly: true
            }
        }
        var api = new JitsiMeetExternalAPI(domain, options);
    </script>

Welcome tot he forum, @Darsa_Das! :smiley:

To answer your questions:

  • Yes, you can use iFrame to embed Jitsi in your PHP site
  • The trainer will be the moderator of the meeting
  • The moderator can set a password which can be made available to the students (participants)
  • The moderator can otherwise enable the lobby feature (instead) to make sure only those that should be in the class (meeting) get in
  • The moderator can specify parameters in the meeting link that will disable the invite function (if you’re hosting your own Jitsi, this can be done on the backend)
  • BUT, you cannot ‘schedule’ a meeting days before. Meetings (rooms) don’t exist until they’re created and they auto-destroy when no one’s in the room. If you however choose a very unique ‘meeting name’ (think UUID), you can sedn that link out in advance with some degree of assurance that no one else is likely to use that meeting name

Hope these answer your questions. Welcome on board!

Hey @Darsa_Das - I wanted to do something similar, I was able to create a calendar invitation system in PHP that worked well. First I set Jitsi up on a separate server with a subdomain of my domain name. Then I added the page, behind a password, to my main domain website.

The PHP application I was able to produce uses the following projects:
PHP ICS generator by Jakebellareca
Jitsi Meet Install Guide
PHPMailer on GitHub

With the calendar set up, you can create a simple bit of code to generate the Jitsi URL, something like this:
$meetURLvar = strtolower("$mname"); $meetURLvar2 = str_replace(' ', '-', $meetURLvar); $meetURL = "https://meet.yourdomain.com/" . $meetURLvar2;
You can then pass the meetURL into the PHP calendar application above to create the calendar invite.

You can then tie it all together using PHPMailer to attach the calendar file to the email and send it out to attendees.

Hope this helps!

Sam.

@Freddie @samisaacscreative
Thank You, Freddie & samisaacscreative for your support.
How can I host Jitsi by own? Currently, we didn’t develop our website, so I am using my localhost( Wamp Server) for development purposes. After completing the site they will migrate their site into AWS hosting or Cpanel (Linux) hosting.
How can I host my own Jitsi in the localhost or Cpanel?
Do you have any suggestions?

@samisaacscreative
So you create a Jitsi in a subdomain. When a person clicks on this subdomain there is a password right? after entering the password they can able to join the meet right?
I have a doubt regarding this You are creating the meet URL and send this URL to the attendees if the attendees give this password and URL to another person they can also able to view the conference??

Yep, you can configure Jitsi with a username and password when you have set it up on a server.

In regards to the second question, that is unfortunately something that you will have to deal with when using Jitsi, you can however turn on the lobby mode to allow the host to accept who join’s the meeting.

To install Jitsi you need to use a web server that allows you to have complete control via ssh. I use digital ocean for my Jitsi server.

@samisaacscreative Thank you very much for your support