Пример #1
0
 def sendSignal(self):           
     #send date, time and id
     #need to send to queue instead 
     dateTime = datetime.datetime.utcnow()
     print dateTime
     self.__signal = Signal.initializeSignal(self.__ID, self.__Location, dateTime)
     self.setEmptyFlag(False)
Пример #2
0
    def sendSignal(self, pinNumber):
    #note that a timedelta is needed due to the use of two sensors
    a = self.__timestamp + datetime.timedelta(milliseconds=500)
    if datetime.datetime.now() > a:
        print "signal callback from signal: " + str(pinNumber)

        #record the current time and create the string that will be stored into the database
        self.__timestamp = datetime.datetime.now()
        self.__signal = Signal.initializeSignal(self.__ID, self.__Location, self.__timestamp)
        #indicate that a signal was detected
        self.setEmptyFlag(False)

    #sets the sensor to the appropriate GPIO pin. The pins are set according to the colour of bin that the sensor is placed in. Each bin has two sensors and the pins have been optimized to make cable management easier.
    def setGPIOPin(self, ID):
        if ID is "black":
            self.__gpiopin1 = 16 
            self.__gpiopin2 = 18
            return
        elif ID is "green":
            self.__gpiopin1 = 7
            self.__gpiopin2 = 11
            return
        elif ID is "blue":
            self.__gpiopin1 = 12 
            self.__gpiopin2 = 22
            return
        elif ID is "grey":
            self.__gpiopin1 = 35
            self.__gpiopin2 = 37
            return
        else:
            return 

    #sets the empty flag to the given empty variable, also used by Queue class
    def setEmptyFlag(self, empty):
        self.__isEmpty = empty
        
    #returns the empty flag, used by Queue class    
    def isEmpty(self):
        return self.__isEmpty

    def getSignal(self):
        self.setEmptyFlag(True)
        return self.__signal
Пример #3
0
def test_parseSignal():
    dateTime = datetime.datetime.utcnow()
    testSignal = Signal.initializeSignal("green","Nest",dateTime)
    expectedSignal = ("green,Nest," + str(dateTime)).split(Signal.delim)
    assert Signal.parseSignal(testSignal) == expectedSignal
Пример #4
0
def test_initializeSignal():
    dateTime = datetime.datetime.utcnow()
    testSignal = Signal.initializeSignal("green","Nest",dateTime)
    assert testSignal == ("green,Nest," + str(dateTime))