Gatekeeper
From Whitespace (Hackerspace Gent)
(Difference between revisions)
(→Connecting to the BeagleBoard) |
(→Configuring Gatekeeper) |
||
| Line 12: | Line 12: | ||
The gatekeeper script can be found at /home/ubuntu/gatekeeper/gatekeeper.py and is started at boot. | The gatekeeper script can be found at /home/ubuntu/gatekeeper/gatekeeper.py and is started at boot. | ||
| − | < | + | <pre> |
#setup logging | #setup logging | ||
LOG_FILENAME = 'gatekeeper.log' | LOG_FILENAME = 'gatekeeper.log' | ||
| Line 18: | Line 18: | ||
logging.basicConfig(filename=LOG_FILENAME,level=logging.DEBUG,format=FORMAT) | logging.basicConfig(filename=LOG_FILENAME,level=logging.DEBUG,format=FORMAT) | ||
log = logging.getLogger("GateKeeper") | log = logging.getLogger("GateKeeper") | ||
| − | </ | + | </pre> |
The whitelist file can be found Whitelist syntax | The whitelist file can be found Whitelist syntax | ||
| − | < | + | <pre> |
098098987 name | 098098987 name | ||
080989790 other name | 080989790 other name | ||
| − | </ | + | </pre> |
| − | + | ||
| − | + | ||
=Connecting to the BeagleBoard= | =Connecting to the BeagleBoard= | ||
Revision as of 17:28, 19 June 2010
Gatekeeper is a Python script that opens a gate when calling to +32493604143. It only opens the gate for whitelisted numbers. The hardware used:
- A beagle board with a Debian based distro on, kindly donated by Bert.
- A remote controller for the gate connected to the beagle board. The pinout on the beagleboard towards the remote:
- Pin 28: black
- Pin 24: white
- Pin 1 (bottom): red
- A Huawei e220 GSM modem with a SIM card to perform caller ID. It is connected with the board using USB-serial.
Configuring Gatekeeper
The gatekeeper script can be found at /home/ubuntu/gatekeeper/gatekeeper.py and is started at boot.
#setup logging
LOG_FILENAME = 'gatekeeper.log'
FORMAT = "%(asctime)-12s: %(levelname)-8s - %(message)s"
logging.basicConfig(filename=LOG_FILENAME,level=logging.DEBUG,format=FORMAT)
log = logging.getLogger("GateKeeper")
The whitelist file can be found Whitelist syntax
098098987 name 080989790 other name
Connecting to the BeagleBoard
The beagle board runs a debian based distro so it can be used as a general purpose server. If you want to do something with it ask for a login and sudo rights. Connecting with the board is possible using ssh. Internally it has 192.168.0.250 as IP address.
Ideas, Feedback & Comments
Add your own!
- We can make the door opening for all people on Thursday, and only for members on the others...? @Joren: Is this pythonable?
- Something like that has been implemented: adding an empty line with * to the whitelist puts the script in public mode. In public mode everyone is allowed to open the gate when calling +32493604143. Removing the line with the wildcard puts the script in private mode, then only whitelisted members can open the gate.
- We can sound a alarm when people try to open the door but are not allowed.