Difference between revisions of "Gatekeeper"

From Whitespace (Hackerspace Gent)
Jump to: navigation, search
Line 10: Line 10:
 
=Configuring Gatekeeper=
 
=Configuring Gatekeeper=
  
 +
The gatekeeper script can be found at /home/ubuntu/gatekeeper/gatekeeper.py and is started at boot.
  
 +
<code>
 +
#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")
 +
</code>
  
Config params
+
The whitelist file can be found Whitelist syntax
  
Whitelist
+
<code>
 +
098098987 name
 +
080989790 other name
 +
</code>
  
  
Line 29: Line 40:
 
** 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.  
 
** 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.
 
* We can sound a alarm when people try to open the door but are not allowed.
 
[[File:http://0110.be/photo/cache/x96-13b63.setup.jpg]]
 
[[File:http://0110.be/photo/cache/x96-aaec6.remote.jpg]]
 
[[File:http://0110.be/photo/cache/x96-7cc65.remote_2.jpg]]
 

Revision as of 22:16, 17 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.

  1. 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. Externally you can connect using "ssh whitespace.endofinternet.net -p 2222"

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.