Example #1
0
 def __init__(self):
     self.__obs = Observable()
     conf = Configuration()
     self.__rfid = RfidReader(conf.rfid.serialPort)
     self.__acceptor = CoinAcceptor(conf.coinAcceptor.serialPort, conf.coinAcceptor.inhibitPin, conf.coinMap)
     self.__memberService = MemberService(conf.db.username, conf.db.password, conf.db.hostname, conf.db.port, conf.db.database)
     self.__popMachine = PopMachine(conf.popMachine.relayPin)
     self.__webService = WebService(conf.web.bindAddress, conf.web.port)
     self.__acceptor.inhibit(True)
     self.__popCost = self.__popMachine.getPopCost()
     self.__obs.on("CardSwiped", self.__onCardRead)
     self.__obs.on("CoinAccepted", self.__onCoinAccepted)
     self.__obs.on("MemberNotFound", self.__onMemberNotFound)
     self.__obs.on("PopPaid", self.__onPopPaid)
     self.__obs.on("CreditCompleted", self.__onCreditCompleted)
     self.__creditOnlyPin = conf.general.creditOnlyPin
     GPIO.setup(self.__creditOnlyPin, GPIO.IN)