This section describes how to implement a web client for the teacher.
This flowchart shows the major logic of the following functions:
Refer to the following table to download the SDKs, and integrate the SDKs into your project.
|Product||SDK download||Integration guide|
|RTC (Real-time Communication) SDK||Agora SDK for Web||Start Interactive Live Streaming|
|RTM (Real-time Messaging) SDK||Real-time Messaging SDK||Peer-to-peer or Channel Messaging|
|Cloud Recording||/||Record by RESTful API|
|Agora Edu Cloud Service||/||Agora Edu Cloud Service quickstart|
|Whiteboard||White SDK||Whiteboard quickstart|
|entry||Enters the classroom.|
|get room info||Gets the classroom information.|
|change room info||Changes the classroom information.|
|change user info||Changes the user information.|
|createInstance||Creates an RTM Client object.|
|login||Logs into the Agora RTM system.|
|createChannel||Creates an Agora RTM channel. You can create multiple channels with an RtmClient object.|
|join||Joins an Agora RTM channel.|
|sendMessage||Sends a channel message, which can be received by all the users in the channel.|
|leave||Leaves the RTM channel.|
|createClient||Creates an RTC Client object.|
|Client.init||Initializes the RTC Client object.|
|Client.setClientRole||Sets the user role in a live broadcast. Set the role of the teacher as "host" in the Lecture Hall use case.|
|createStream||Creates a Stream object for sending and receiving audio and video.|
|Stream.init||Initializes the Stream object.|
|Client.join||Joins an Agora RTC channel.|
|Client.publish||Publishes the local audio and video stream to SD-RTN.|
|Client.on("stream-added")||Occurs when a remote audio or video stream is added to the channel.|
|Client.subscribe||Subscribes to the remote audio or video stream.|
|Stream.play||Plays the audio or video stream.|
|Client.leave||Leaves the RTC channel.|
For more features and functions available for an online class, you can refer to the following:
on("network-quality")callback of the Agora RTC SDK to monitor the last-mile uplink and downlink network quality of every user in the channel. For more methods for reporting the real-time network quality, see the following guides:
unmuteAudio, to stop or resume sending the local video stream.
unmuteVideo, to stop or resume sending the local video stream.
sendMessageToPeeron the teacher's client to send a peer-to-peer message to the student, asking them to mute their audio or video.
mutemethods on the student's client to mute their local audio or video.
Agora provides an open-source demo for Lecture Hall on GitHub to download as a source code reference.