Doorboy proxy exports door access information from MongoDB to door Raspberry Pi controllers
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Lauri Võsandi 7b81330b39 Add test scenarios 2 years ago
.gitignore Rolled out in prod 2 years ago
.overnodebundle Rolled out in prod 2 years ago
Dockerfile rewrite with sanic, motor 2 years ago
README.md Add test scenarios 2 years ago
const.py change db to get_default_database 2 years ago
dev.yml add dev.yml 2 years ago
docker-compose.yml Rolled out in prod 2 years ago
main.py Attribute token.enabled is timestamp, not boolean 2 years ago
overnode.yml Rolled out in prod 2 years ago
requirements.txt clean up requirements, small tweak 2 years ago

README.md

Backgruond

This component serves allowed list of keyfob UID hashes from MongoDB and pushes open door commands to door controllers.

Testing endpoints

For manually testing something like this might help:

source .env
curl -f http://doorboy.infra.k-space.ee:5000/allowed -H "KEY: $DOORBOY_SECRET" | md5sum

Test scenarios

When updating doorboy proxy, members site or kdoorpi. Verify follwing:

  • Swiping unknown card shows up as unknown, it can be claimed on members site and it immediately can be used after claiming
  • Card enable/disable on members site works and has effect
  • Opening door via buttons at https://members.k-space.ee/m/doorboy works and has effect
  • Opening door via /open-ground-door, /open-front-door and /open-back-door commands in Slack channel #members works
  • TODO: Keep door open via members site works and has effect

When testing changes prefer using the back door and use a brick or something to keep it open to prevent interfering with other members entering and exiting.

Deploying

docker build -t 172.20.40.1:5000/doorboy:latest .
docker push 172.20.40.1:5000/doorboy:latest
overnode pull
overnode up