A simple web application to collect contact information from visitors during the SARS CoV 2 pandemic.
The basic intention is to provide an alternative way of collecting visitor data during the SARS CoV 2 pandemic. The regulations force us to collect this data. In order not to suffocate in thousands of paper forms and to collect data as "technology-neutral" as possible, no mobile phone app should be used. So we started this approach. Hope that helps you too.
Basically a visitor opens the web url, enters their data and retrives a qr code containing an unique id. On site this qr code is scanned by an employee on begin and end of the visitor visit. This way personal data is only tranfered once and you save a lot of paper. Also an checkin/ checkout is independent of a mobile device since the visitor can also print this qr code. Visitor data is stored asymetric (why? because i can) within database and only users with appropriate admin role can read this data. Visits and visitor data older than the given threshold will be deleted automatically.
All you need on the visitor's side is an internet connection and a browser. To run this application server side Python >= 3.7 is needed. All required modules are listet within requirements.txt. For SSL connection valid certificates are needed. Let's encrypt is your friend. If you have a guest wifi you could run all this e.g. on a Raspberry Pi accessible over your network.
- Open Url
- Enter Data
- Show qr code to a responsible employee
- open
[yourdomain]:[port]/signin
- scan visitor qr code via web interface at the beginning of the visit (checks in automatically)
- scan visitor qr code via web interface at the end of the visit (via "checkout" button)
Actually every device with a browser. For scanning every mobile device with a camera or pc with a webcam and an up-to-date browser.
Scanning is not available for some ios devices as the used library can not access camera on these devices. Leave a comment if it's working on your device. Unfortunately, there is a lack of test capacities here.
- clone repository to your server
- rename/ move
ilsc.cfg_default
toilsc.cfg
andflask.cfg_default
toflask.cfg
- edit both configuration files to your needs
- sqlite database is created automatically, same for gpg-keys
- rename & edit
default_gprd.html
anddefault_imprint.html
to your needs. Also address these files withinilsc.cfg
- (optionally if you want to use ssl) set
usessl
withinilsc.cfg
toTrue
and configure location of server certificates within this file - run
python main.py --config ./ilsc.cfg --flask-config ./flask.cfg
either via screen or as system service - login at
[yourdomain]:[port]/signin
- default user:
admin
- default password:
admin
- default user:
- open backend via "backend" top right
- change username and password and add (optional) users, locations or organisations.
Do a backup and check UPGRADE.md. Things can go wrong. If you have any trouble -> contact me!
https://github.com/schmich/instascan thx a lot, nice work done dude
I absolutely do not take over any responsibility for the correctness of imprint and gprd. If there is something wrong ... let me know