Search code examples
javascriptnetwork-programmingwebserverqr-codezxing

Steps for class attendance by using QRCODE


I have to create a project which is for class attendance by using QRCODE for my final year project.

My project was like:

Students in the class will scan the QR CODE(using their own smartphone) that will be displayed by lecturers on the projector screen.

What I understand is, the Web server would get the secret ID from the smartphone IMEI and saves in the server database.

Actually, I don't know how to start because I don't understand the framework of the project.

Things that I know is:

1) Develop a system using PHP and XAMPP that acts as a server.

2) Develop an app using Ionic Framework

3) Beginner in Java network programming.

Can you guys please help me to make me clear what should I do? or help me understand the concept step by step. I really need your help.

Thank you in advance.


Solution

  • So, if I understand you correctly you want to achieve this:

    1. User will open Ionic app and scan qr code.
    2. After this Ionic will send lecture id and mobile device IMEI to your API.

    This is possible and quite easy. You can this plugins:

    Ionic Native Barcode Scanner (supports qr codes):

    ionic cordova plugin add phonegap-plugin-barcodescanner
    npm install --save @ionic-native/barcode-scanner
    

    Ionic Native Uid (supports IMEI numbers)

    ionic cordova plugin add https://github.com/hygieiasoft/cordova-plugin-uid
    npm install --save @ionic-native/uid
    

    Then create function for scanning qr (and getting data from qr code) and sending data to your api (with data from qr code and device IMEI data). Something like this:

    scanQrCode() {
        this.barcodeScanner.scan().then((data) => {
            console.log('scanned data from qr ' + data.text);
            let imei = this.getImei();
            this.sendDataToApi(data.text, imei);
        }, (err) => {
            console.log('scanning error');
        })
    }
    
    getImei() {
        // handle permissions
        return this.uid.imei;
    }
    

    You can find more information about plugins here:

    https://ionicframework.com/docs/native/barcode-scanner/ https://ionicframework.com/docs/native/uid/