Agora Education aPaaS Product Mobility Classroom has been upgraded to v1.1.0. Sound net Agora Smart Classroom can help educational institutions and developers to launch their own brand, full function online interactive teaching platform in 15 minutes, saving 90% of development time. Smart Classroom was launched on January 20, and as of March 31, the number of registered users has exceeded 1,000, the number of supported classes has exceeded 500,000 per month, and the total number of students worldwide has exceeded 4 million.

In the new version of Smart Classroom, we address the previous problem of “UI is not easy to modify” by isolating UI code from business logic and providing UI Kit, which makes it easier for developers to modify and add UI controls. It not only ensures low code development, but also provides higher flexibility for customization.

At the same time, in order to allow people to replace and add some functional modules of smart classroom, and even to increase functional modules according to their own business needs, we also added a custom plug-in function, namely ExtApp. You can like building blocks, some of their own classroom functions, such as countdown, answer, etc., add smart classroom.

Next, we will talk about the new functions and optimization of v1.1.0 version of Agora Smart Classroom.

Classroom UI customization is more flexible

In terms of the new UI, we’ve made two upgrades. First of all, we redesigned three sets of UI for one-to-one interactive teaching, online interactive small class and interactive live large class. Developers can use it directly and deploy it online. We also separated the UI code from the core business logic and provided a UI Kit that developers could use to modify the interface to better match their brand tone. When modifying UI based on UI Kit, developers do not need to understand the core business logic of Smart Classroom, but simply modify UI components based on the UI Kit provided by us, and then they can adjust the UI of various functional modules such as interface color, menu bar size, icon and button position. The uI-Components directory under Agora-Classroom-SDK contains rules for combining all THE UI components, where you can add other UI components or adjust the overall layout. As shown in the figure below, is the default UI of The Smart Classroom.

After custom modification, the classroom interface can present a completely different style. As shown in the figure below.

Use ExtApp to flexibly expand classroom functions

In this update, we have further opened the underlying code of Smart Classroom and provided a custom plug-in for ExtApp. You can think of ExtApp as a supplementary plug-in for Smart Classroom, which can help developers embed their own functional modules in smart Classroom in the form of plug-ins according to actual needs. Each ExtApp has its own independent life cycle and data management. For example, in a class, if the teacher wants students to solve problems within a given time, you might want to include a countdown feature in the class. This “countdown” is then embedded into the Agora Classroom SDK as a plug-in. There are three specific implementation steps: First, you need to inherit AgoraBaseExtApp class, in your App to implement a custom plug-in, in the AgoraExtAppBase class contains initialization plug-in, update attributes and other methods, please refer to the document. Second, once the plug-in is implemented, you can register the plug-in. Need to call AgoraEduSDK registerExtApps method, the plug-in registered to Agora Classroom SDK. Taking the countdown plugin we just talked about as an example, the following code shows how to register a countdown plugin, CountDownExtApp:

‘// appIdentifier: plug-in ID. This will be used to identify the plug-in. The same plug-in on different platforms must use the same ID. // extAppClass: container AppClass Type, instances of which are created by the SDK. // frame: The size of the plug-in container, representing the distance from the underlying view. The underlying view is generated by the Classroom SDK (no security zones). // language: The container language. The Classroom SDK passes this variable through to the specific plug-in container so that the container can set multiple languages on its own. let countDown = AgoraExtAppConfiguration(appIdentifier: “io.agora.countdown”, extAppClass: CountDownExtApp.self, frame: UIEdgeInsets(top: 10, left: 50, bottom: 10, right: 50), language: “zh”)

// The plugin icon, used for UIKit Settings, is displayed in the whiteboard toolbar’s toolbox popover by default. countDown.image = image countDown.selectedImage = selectedImage let apps = [countDown] AgoraEduSDK.registerExtApps(apps)`

After the second step, the countdown becomes a plug-in for the Agora Classroom SDK. The last step is to start the plug-in. By default, successfully registered plug-ins are displayed in the toolbox popover on the Smart Classroom Whiteboard toolbar. If you want to customize an entry for the plugin, you can modify the UI Kit module file we mentioned above, add an entry for the plugin in the three smart Class scenarios, and then call the following method when clicking or displaying the plugin.

// Pass in the plug-in ID in the willLaunchExtApp method. extAppContext? .willLaunchExtApp(appIdentifier)

At present, we provide the example of countdown function plug-in in the sample code. You can search “Smart classroom” in the document center of sound Net and refer to the detailed document to obtain it.

New page recording, what you see is what you record

In the online education scenario, course recording is an absolutely necessary feature. Soundnet launched the page recording service in February this year, which can record audio and video, whiteboard, courseware and chat messages at the same time without extra bandwidth and performance costs. The recording process does not affect the RTC interactive experience of any anchor/audience. And after recording, you can generate MP4 files in real time, compatible with mainstream players.

Dynamic classroom V1.1.0 added support for page recording, can be specified URL page content and audio mixed recording into an MP4 audio and video file, audio and video content, whiteboard content, courseware content synchronous recording. Developers can configure RESTful API of Intelligent Classroom cloud service and initiate page recording. For details, see Sonnet Documentation center and search “RESTful API of Intelligent Classroom Cloud Service”.

New courseware management

In order to improve the classroom learning effect, smart Classroom V1.1.0 added courseware module. Teachers can upload PPT, DOC, PDF and other files through smart Classroom client. Smart Classroom client will enable file conversion by default for files with suffixes of “PPT”, “PPTX”, “doc”, “DOCx” and “PDF” for whiteboard display in class. Developers can also configure and upload files to the cloud disk through the intelligent Class cloud service RESTful API, and obtain the cloud disk file change events in the classroom. For details, see the Sound network Document Center. Intelligent Class Cloud service RESTful API.

In V1.1.0 Smart Classroom, the files uploaded to the cloud disk are stored in the Ali Cloud OSS account of Agora by default. If developers want to store files in their OWN OSS accounts, they need to update the whiteboard JSON configuration object in aPaaS configuration on the Agora console. For details, see The Section “Configuring Smart Classes on the Agora Console” in The Prerequisites for Smart Classes.

V1.1.0 also supports courseware preloading. Add courseWareList and personalCourseWareList fields to the Launch method of the Agora Classroom SDK for pre-loading courseware assigned by educational institutions and uploaded by teachers. After the successful call, the client will cache the courseware in the cloud disk to the local. Please refer to Agora Classroom SDK API in Sound Net Documentation Center for details.

In addition, Agora Education aPaaS Dynamic Classroom V1.1.0 has added new functions such as user list, class reward, roll call and class status.

Smart Classroom relies on sD-RTN ™, a software-defined real-time network developed by Agora. Based on deep learning algorithm, it can identify network anomalies in real time and accurately, and realize the user’s “zero awareness” failover mechanism, which can escort the high availability of services. At the same time, we also for southeast Asia, the Middle East, North America and other foreign teachers’ countries and domestic small and medium-sized cities, exclusive network optimization, end-to-end high quality transmission rate is higher than 99%. In the following product iterations, we will also add more functions for the Smart Classroom and provide better development flexibility. If you have any questions about smart Classroom features, please visit rTCdeveloper.com and leave a comment.