## 2 Our Proposed Context-Aware Smart Classroom Architecture
### The Smart Classroom Technology Integration Model
Therefore, a central web server with database linkage is needed. Any web server, web application, and database technology can be used to build this layer. The basic operations in layer 2 need to be registered in the database. Combo operations should be implemented as web service calls on the central server. When a combo operation, such as pull down projector screen and turn off lights near the projector screen, is called, the layer 2 operation to pull down the projector screen and the layer 2 operation to turn off lights near the projector screen are invoked by the corresponding layer 3 web service call. By sending HTTP requests to the central server, users and application can perform combo smart classroom operations defined in this layer. The top layer of this model is named Smart Classroom Application Layer. A smart classroom application contains logics or means to determine ways of controlling smart classrooms. As shown in Figure 8, applications related to user context, authentication, authorization, user interface, voice command, attendance control, door access control, actions triggered by AI algorithms, actions trigger by management rules, actions triggered by sensor data, and scheduled actions should be implemented in this layer. Figure 8: The smart classroom technology integration model. All layers in this model, components in each layer, and the interactions between components in different layers are illustrated in Figure 8. Communication details between different devices and Raspberry Pi in a smart classroom are handled in layer 1. Sensors or devices with the same function may have different control protocols or communication standards in layer 1. With layer 2, a function, such as turn on air conditioner number 1, can be defined as a basic operation for every smart classroom and implemented as a unified web application interface. Therefore, even if air conditioners in smart classrooms have different control protocols. Central control applications still can turn on the air conditioners in all smart classrooms by sending a unified web application interface call with parameters such as classroom id. Basic operations are registered in the database in layer 3. Therefore, combo operations in layer 3 can be made based on basic operations in layer 2. Thus, a combo operation to turn off air conditioners in all smart classroom can be easily defined and implemented in layer 3. Consequently, teachers, administrators, and software developers only need to focus on developing high level or complex smart classroom applications, such as AI applications, in layer 4. For example, if a teacher is developing context-aware applications for smart classrooms under the proposed architecture, the teacher can get sensor data through the standard web application interface calls defined in layer 3 and feed the retrieved data to the self-developed application in real-time. When the context-aware application decides to control certain devices in smart classrooms, related combo operations can be launched through the corresponding web application interface calls defined in layer 3. The teacher does not need to know any control details in layer 1.