Skip to content
This repository has been archived by the owner on May 22, 2021. It is now read-only.
/ visitora Public archive

Visitora : An Entry Management System, made for Summer Geeks(Innovaccer) 2020 Assignment

License

Notifications You must be signed in to change notification settings

merrcury/visitora

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bootstrap logo

Visitora

Introduction

Visitora is an entry management system which captures several details about the Visitor and had an intelligent intimation protocol. This project is entirely written in Python3, stores its data on Firebase in real-time which use Twilio SendGrid for Email Intimation.

Set Up

I recommend, you to work in a virtual environment because This project uses some older version of the libraries and preventing this project to interfere with other projects. In your project directory, let's start off by creating a virtualenv:

$ python -m venv venv/

And let's activate it with the source command:

$ source venv/bin/activate

Then, let's use pip to install the requirements:

$ pip install -r requirements.txt

Create a file details.py with API Key, API Secrets and API URL from Firebase and Twilio SendGrid and place it in the project folder. Download Firebase Service Account Key from Firebase and name it visitor-a-firebase-adminsdk.json and place it in project Folder.

Security Rules for the firebase is defined later in this markdown.

Approach

The approach behind this is to manage entries, exits and current status of the Visitor in realtime using the same software for different geographical gates of an office. The entire project's approach and workflow are defined with the help of screenshots given below:

  • A Visitor has to tell the name of the person to the operator whom he/she wants to meet. Considering the possibility of multiple people with the same name in one office, Visitor should tell one another details about the host to an operator(like Email, Phone No., Location). A Unique 9-Digit Alpha Numeric reference number is also issued to the Visitor. NewVisitor

  • As soon as Visitor enter the premises, Host gets the email with details of Visitor. Email2Host

  • When Visitor approaches any final exit, He/She need to reproduce the Reference Number(Printed on Visitor ID Card) to mark him successfully exited. exitVisitor

  • Visitor receives a summary of his visit as he/She exits the premises. Email2Visitor

  • Once a person exited the premises and you enter his/her reference number again at exit portal, You will see a warning saying "Visitor already LEFT at (time)" with time when they left. alreadyLeft

  • You can always check the details of the visitors who are currently inside the premises.

    • When someone is inside inside0
    • When someone is not inside inside1
  • Another program crudEmployee.py is used to perform special operations on Databases related to Employees.

    • Adding a new employee, newEmployee
    • Removing an employee from db, removeEmployee
    • Updating Details about Employee. So, Visitor don't get trouble due to Outdated Information. updateEmployee

Firebase

  • Structure of the database is diven below:

    • Closed Overview of Visitora. firebase1
    • Expanded View of Feedback DB. Feedback to this product can be given using feedback.py. firebase2
    • Data Organisation in Host Corner can be seen below: firebase3
    • Management of Visitors Portion is shown below: firebase4
  • Security Rules of Firebase is to be defined as follows: firebase5

Extended Approach

  • At the time of Entry, Face of Visitor can be registered for Facial Recognition which will keep track of the visitor's movement in and around the premises and will increase security.
  • Self-service kiosks can be programmed at entry and exit to register details, dispersing Visitor's ID and to get details of Visitor by using an ADMIN Key.

About

Visitora : An Entry Management System, made for Summer Geeks(Innovaccer) 2020 Assignment

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages