The motivation originated from the present circumstance where everyone is looking for minimal touch to the common things. Most organizations see visitors every day to their office regardless of whether it is an interview candidate, vendor, or salesman. And all the visitors will be accessing the same gadget either tablet, visitor register or any medium to collect visitor entry and common ID cards which may not be reasonable in this circumstance.
What it does
eVisitor Card digitizes the visitor check-in to the workplace premises. This solution sends the approval code (QR Code) to the visitor. This QR Code will be validated upon visit without contacting any gadget. If the QRcode gets authorized, the bot will snap the picture of the visitor and will send the entry card over email.
How I built it
Below are the features and brief idea of how it was built:
1. Generate the QR Code - Read the details from Google sheet and based on the email address generate the QR Code using Google Chart API.
2. Send the QR Code to the visitor - Using the built-in email functionality of A2019 sends the email to the visitor with the QR Code generated at the above step.
3. Scan the QR Code - Call python script to show the window to scan QR Code and once it finds the QR Code the code will return the content.
4. Validate the QR Code based on the details provided by visitors - Based on the content returned from the above step, validate the content in visitor details Google sheet to check if any entry exists.
5. Show the camera window and take the photograph of the visitor - If visitor details exist in Google sheet, Call Python script to show the camera window and Security can take the photo by clicking on Enter button.
6. Send digital entry card to the visitor over email - Call DLL file and pass parameters i.e. username, password, visitor email address, and so forth which will send entry card to the visitor.
7. Delete the visitor details from google sheet - Delete the visitor details from Google sheet once the entry card has been issued.
8. Add the visitor details in another google sheet to keep the details for future - Store the visitor details from the above step in variable and pass these values in Google sheet
Challenges I ran into
Problem: The challenge was to send the entry card over Gmail with the inline image (only for an image stored in the local machine) using the built-in email functionality where the image was getting displayed as blank however the same functionality was working fine while sending the email in outlook.
Solution: Used DLL file to send the email with an inline image which is sending the email with an entry card to the visitor.
Problem: Providing the dynamic cell in set cell option of Google sheet was throwing error and was not allowing to give the variable like A$countRow.Number:toString$ even though the count variable was typecasted to string.
Solution: Assigned the cell address in a variable and used that variable in the Google sheet set cell option.
Accomplishments that I'm proud of
I am pleased with the idea of helping society in not spreading the deadly COVID-19 virus.
What I learned
I learned many new features of A2019 i.e. Forms, Google Sheet, etc while developing this solution. Apart from that I also learned how to create DLL files and use the same in A2019.
What's next for eVisitor Card
- Scanning Government ID
- Auto Face-detection