 Here, I would take the pleasure to introduce you to the team, myself Megha Chak from DICT Gandhinagar. I am Dhwani Shah from Bithpalani Goa Kanthu. I am Shivani Shrasta from NIT Jamshedpur. I am Praveen Kumar Mannepalli from KLC Vijayawada. Good morning to everyone. This is Sethu Saxena from SDS ITS Indore. My name is Veeraj and I am from ITDSA Indore. Hi, I am Dasaran from NITK Choratpur. I am Harid from SINIT Choratpur. Thank you all. We'll begin with what basically is CLICA and what is the overview of the entire project. CLICA is an affordable interactive device to be communication between students and instructors in a classroom and remote environment. Basically, it has been developed in order to prevent the time that is getting wasted in taking up the student doubts or attendance etc. in classes. Like, there are 300 to 400 students in mostly classes and colleges all across India. So, basically to prevent that human error also in case of taking quizzes etc. where the instructor has to go through a long process of doing the marking and keeping a record of all the things. This particular device is helping in order to make that process faster. It is developed with the aim to collect all the attendance, take quizzes and solve student doubts without spending much time and preventing human errors. Collecting student doubts is through the functionality of raise hand. The project has the scope of being developed as a web-based system to reduce the installation and configuration success. As in, the CLICA intern team also worked on the web-based design of CLICA software whereby the software will run only through a web browser and you don't need any kind of installation. The objective of our internship work constituted four major tasks which I explained here. First is Python Serial Utility which is for the communication between the actual CLICA hardware and the receiver which is connected to the instructor machine. The receiver works perfectly now for 200 CLICA's maximum which has been configured. If there are more than that students, you need to put multiple receivers so the task has been successfully completed. Second was creating a GUI installer to install the CLICA software in remote centers so that you don't have to go through the long process of downloading different packages from the internet. There will be one software that will install and uninstall the various packages needed for CLICA software automatically used by a next-next press which has also been completed successfully. The integration of open office into CLICA desktop application and implementing those features into open offices. Well, that means it was a two-way process integrating open office into CLICA and integrating CLICA into open office. That was so that the instructor doesn't have to change slides again and again and skip between the software and open office. So that task has also been done. The web-based CLICA application which gives the web-based user interface and you can access the entire software from the browser rather than going to the installation process and then accessing it. And the team has been working on making a web-based application. After these four tasks, we will explain each of the tasks that we did separately. The first one being Python Serial Utility on which myself, Megatars and Dhanisha have worked on. The modules that we have used are CLICA configurations with the attendance, quizzes and raise hands which have been integrated and it has been put in an object-oriented form now. So that other file, you only have one executable file rather than in the previous case, you had a lot many executable files. The commands that are used to configure the USB when you connect it to the laptop, like you have to put some commands like pseudo-ln, etc. All these commands, they have been integrated into Python only so you don't have to run those commands separately. The external files which were earlier manually written like you have to write 1, 2, 3, 4, all the number of clickers. If there are 200 students, you will have to manually print those 200 clickers into the external and now get them generated automatically. And basically the aim to make this Python Serial Utility was not for the instructor or somebody to use but for the testing point of view so that the receiver and CLICA hardware are working properly in synchronization to each other. And this now becomes a standalone utility which you can test from even the keyboard like you can press different options that you want, whether you want to take attendance or quiz or raise hand. And then you can check whether the receiver is working properly for all of them or not. The architecture of the entire project as in goes like this that you have a GUI which is the presentation layer which connects to the HTTP protocol when it will be web-based. Which has JST and address that is needed to show you the interface on the web browser. Which goes to the Java classes that are different for raise hand attendance and all these others. Where in the backend Python basically runs to transfer the packets across the hardware and the receiver which is there. So Python everywhere is working in the backend basically to unpack the packets which have been received which basically contains the actual data or the information. We have the database which is in form of my SQL you are storing all that data. That will be on the server of IITD once it has been designed the web-based model. For the remote location also in the remote center you will have an instructor machine where the receiver will be connected and Python will be responsible for communication within the classroom environment from the hardware to the receiver. And the receiver will then send the information to the server at IITD through the web browser and the web-based application. For the particular Python serial utility the code flow diagram is like this that you only have one executable file that's pythonintegration.py. Which in turn imports all these various modules like clicker config, clicker attendance, clicker sensing, clicker raise hand and clicker quiz. They are all been imported which has all the message definitions of how are you supposed to send an EC packet. The main desk is one file which is calling the clicker config attendance according to a user manual. There is a menu which comes and you'll be asked to enter the choice that you want to take. S desk is secondary definitions. There are some particular functions like one complement, two complement and getting the checksum etc which have been defined here. And GTV is the main module which imports all the other packages like serial, time, arrays in the system. The data flow for attendance is like you have attendance as an entity and clicker configuration is one thing that is required before each and every process that we do. In clicker config the attendance will send the NOC and RC to clicker config and clicker config in turn will send you the acknowledgement that it has received it. The course ID and the clicker ID will also be given by the user and the acknowledgement for that will also be sent. Then when you go to the attendance part it will just ask you that do you want to take attendance and if you press yes it will collect the attendance and it will send you an acknowledgement on your hardware as well. And the XML file for all the clickers will also be generated in the back end. For the quiz you see we need clicker config, sensing and quiz. These are three things that we need. In config again the same thing is there like you'll give the course ID, clicker ID, question type, time number. All this will be given by the user in this particular utility that we have given so that you can test for different things whatever you want. And then an acknowledgement will be sent. In sense it is basically initializing the clickers for starting with the quiz process. And then in the quiz it will ask you to collect the quizzes and send the responses like if you have the correct answer as B to a question. And different students have different answers. All those answers and the time taken by each student to answer those questions will be stored in an XML file that will be generated by the clicker quiz fund. The last one is raise hand which is again an entity which requires clicker config. And then if you press that you want a raise hand process to follow. Actually this is a long process which will always be running in the background because a student can have doubt at any time. So as soon as there is some student who has pressed hand an acknowledgement will be sent back to the receiver on the instructor machine. And that particular student ID who has pressed the raise hand will again be stored in XML. The XML files are basically going to the web or going to the desktop application for processing further. The actual implementation is shown here. It doesn't have a GUI and IGUI interface because it's something to be used by the testing team. So if you do a configuration it initially asks you to configure the hardware and that is particularly for the pseudo command the shell script basically that is integrated into pattern now. You are asked to enter the course ID which is very weird here and NOC RC and the number of clickers. The number of clickers is basically the number of students in a classroom like if they are 200 you can write 200. And then it will go through the process of configuration and will show you that finally the ad for NSE and RC has been issued. And you'll have the menu again like the four options of the menu will come again. Then if you want to do an attendance you will press the choice will be one and then this kind of a file will be generated. Which has in this you can see clicker ID 2 is having Z rather than X because clicker ID 2 was present on that day. For quiz again the user will be asked to enter the question time, question number, the question type, the correct answer and all these things. And then a timer will run accordingly. You have given 10 seconds. A timer of 10, 9, 8, 7, 6 will run till 10 seconds. And by that time if somebody has given a response like clicker number 2 has given a response E and he has taken 5 seconds for doing that. That is generated in the XML file. With this we end with the part 3. When you send acknowledgement when the student raises hand you did not show acknowledgement going to the student clicker as well. So that raise hand button, there is a hand like button which also comes on the clicker. That means your data has been created. So both these acknowledgement has always been created. Otherwise the students will keep pressing. Good morning all of you. My task is given as creating a GUI installer to install the packages like Jerry, Python along with the clicker remote software. Before explaining this GUI installer, I will tell you what made us to go for this G installer. Earlier before developing this clicker GN installer, there are two modes of installation. One is online mode and second one is offline mode. In the online mode we will install clicker remote software through pseudo commands. Like pseudo update install like Python and Jerry. By all those commands we installed clicker remote software in remote centers. But it is a time taking process and it is creating some dependency problems in user machines. If you take offline mode, you have to download the entire packages.dv packages or .bin packages. And you have to write a command and you should execute the shell script in terminal. It is also a time taking process. That way you have gone for shell script. Shell script which installs the clicker remote software in remote centers. But shell script is working properly but it is not that much user friendly. That way I have gone for GUI installer. GUI installer is like any installer but it is completely desert based interface. It installs the clicker remote software along with the packages Jerry, Python, Python serial in remote centers. And it is completely user friendly when compared with shell script or online offline mode of installation. And throughout the installation user feel completely very comfortable while dealing with this installer. And a non-technical person can understand very easily while installing this clicker remote software in remote centers. You can see the design of GUI installer. The GUI installer in such a way that after listing this setup file, it should check whether Jerry is already installed in our machine or not. Whether Jerry is installed or not, if it is already installed, you need not to install it again in our machine. If it is already installed, it just discords the installation of Jerry in user machine. Then it goes to installation of Python. If it is already installed, it will not install again. Then after installation of Jerry and Python, it will select the location of installation. And it will finish the installation. You can see this is how the installation result looks like. The GUI is not already installed. That's why it is showing Java 0. It shows the installation of Python series. After installing all Jerry and Python, the installation is complete. It looks like this installation result looks like. And apart from that, it provides a very uninstallation tool which completely removes the desktop environment of clicker remote software in remote machines. Good morning all. We worked on open-office installation feature. What is the utility of this? We have a separate desktop application. We thought of implementing the open-office into it so that it is not required for an instructor to shift between the applications involved. That is one of the reasons why we implemented it. We created a clicker desktop application feature into the open-office. Once you open open-office, you will be displayed with an add-on where you can install, I mean, where you can take components in all those modules. So these three are the main things that we implemented. Creating new slides is like once you require a new question, you just have to go to this menu and create it. In the new slide, we have different templates and each one will produce a different template. The next is clicker slideshow, also called a smart slideshow. So what happens here is something different from the normal slideshow. On each slide, it directs whether it is a quick slide or not. If it is a quick slide, it starts collecting response after the time it starts. So this is automatically done. It is not required for the instructor to start collecting response in all those. This monitoring tool is the main feature over here where all the clicker features have been implemented. So in creating a new slide or creating a new question, what happens is on selecting the question type, we have like FNOS, workforce and all those. So each layout is created based on us. So after creating a layout, we will be prompted with properties, like what is the correct answer, which order is the correct answer. And all the properties are attached to this slide. So while slideshow, it just crosses from slide. And in clicker slideshow, it is like the same thing what it does. It directs whether it is a quick slide or not. So it is not a ghost just forward. And this is a monitoring tool. Here clicker configuration, these are the modules that we implemented in it. So clicker configuration is the clicker, the configures the add-on with the clicker. And add-on system is like state, view, attendant and all those modules. These features are implemented on presentation. So you start a presentation or instead of start a presentation, you will be prompted with these features and selecting them. And in the raise-and what happens exactly is a Python process is executed continuously through this slide. So if someone has a raise-and that gets added into a text file or an XML file, and they are just detecting if there is a change in a text file, it means a raise-and is intercepted. So we will intimate the instructor by some alert sound and image. And these are a few screenshots. This is the, say if you want to create an SNO question, you will be prompted something like this and you can enter the details. And these details are attached to the slides on the quiz slides. So the left is the monitoring tool which will be displayed on slideshow. So click on the any button and corresponding tools will be created. And you can, this is the thing, the right side is almost there in the desktop application. We just have implemented the code there. So polling and raise-and the same features. While raise-and, once you get a raise-and or something, the monitoring tool will change into red and it will start blinking until you see who has raised the hand. And this is how the layout looks. So there is no question. And the right side what you see is the monitoring tool. That will be opacity decrease. Once you on most of it, it gets automatically. So on the start timer, what happens is, you can either do a manual entry of the time or set the time from the slide. On start timer alone, the options will be usable. It's like an instructor wants to explain the question first. Then start the timer. So only the question will be displayed on slideshow. So once you start the timer, the options will be displayed. So it's required for the correct responses. Exactly. So these are the response start. That's all. Thank you. How long it takes for your team to figure out the open office code and to figure out the points where you need to make modifications? Initially, we took some three weeks of short-off to see whether it's feasible or not. The feasibility report that just took a lot. After that, we got used to it within a couple of days because it's pure Java code. So later on, it's like pure labor work. Once again, good morning, everyone. Good morning, Prof. My mentor and my dear friends. We have been working on Flickr v3. That is the web-based development of Flickr version 2, which was previously made. The first day I entered this institute, I asked my mentor, why version 3? Why do we require a web-based development of the software? Then slowly and slowly when we were developing, I saw the version 2 people struggling with the installer, struggling with the operating system, struggling with the machine architecture. There are 62-bit, there are 64-bit. Sorry, there are 32-bit, there are 64-bit. So we realized that this thing is OS-independent, it's platform-independent. It is architecture-independent. So only thing is required is a web browser, which is almost present in every operating system. So here I'll just recapitulate some of the features which we have done right now. First is data availability and accessibility. That is the instructor from anywhere in the world without installing any software utility that will help to increase data availability and accessibility for the instructor arrangement. We just need a browser and every functionality which was there in the version 2, every functionality, I think we implemented four modules. So we implemented four out of six modules and then this data is exchanged with the server and the part of the web pages is updated without replacing the... Sorry, without reloading the whole page. We use IJAX that is asynchronous JavaScript so that we can load the page without redirecting the user. We use the industry standard which is a depth of three. We are only using three web pages to redirect in a tree. Then we provide an easy to use interface. We have implemented question bank, profile, viewing report, attendance, and quiz bank modules. Viewing report, we use Jasper technology. When I was here, I didn't even heard what is a Jasper technology. My instructor told me and we have got a beautiful user interface with a tabulated form of data which will be very easy to interpret and the reports are... I mean for the developer it's very easy to generate. We just have to write a query in the box and whole of the report will be generated on a standard template which belongs to our clicker team. There is the data flow diagram. It's a common login form which is always there. Then we have a profile module which is having crewed operations for institutions, department, courts, and instructors. Admin can do all the four operations that he's creating. He can update it, he can delete it, and he can add more. Then we have question bank modules. Question bank modules can add more and more questions to a question bank which already exists. We have...last time we didn't have that picture since now we have also a picture associated to a question. So we can have photographs or something attached to that. We can add two to five options to a one question. Then we have this admin page which I have already shown in the data flow diagram. We can perform those four operations. So this is the admin page where the admin will login and you can see the four operations there. New, add, delete, update, and reset is to make that in plan. We have this as the question bank thing. We can set the level of difficulty. What is the course category? What is the question type? And we can type the question and add options with that option. So we can have everything. It was there in version two and version three. All the options will be displayed here. And when I click add the options, another did will come. It is not there right now. So another did will come which will show you those parameters which are required and we will submit it when the user summits the question. Then we have the Jasper reports as I told you. You can generate reports and we can view it on the web browser. There we can do all the functionalities which are there in a PDF file. So this is the Jasper report. I will ask Megha to give the conclusion. Thank you all. Finally, to conclude with, I would like to again summarize all the four tasks that have been successfully completed by our team. That is the interaction or sending and receiving of packets that is the actual data using the Python, using Python. The GUI installer which has been successfully implemented which installs and uninstalls all the packages automatically. The clicker applications which have been integrated into open office and the development of three has been changed to five now. So five modules. These are the following references, a little help from the internet that we also can work. And this was always very less. So the internet is always very less actually to work with as per se. So thank you and our greatest regard and gratitude to our mentors who have helped us so much. Mr. Prashar Kamli is not here. Mr. Manjur, Mr. Rajave and Mr. Gobi, they have been very helpful and we all had a great time. We learned a lot and we thank you so that you gave us this opportunity to be here. Thank you.