def _announce(self, state):
     try:
         CloudLog.track("CLOSET_DOOR", state)
         cmd = {"command": "CLOSET", "modifier": None}
         if state == "CLOSED":
             cmd["modifier"] = "Off"
         sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
         sock.sendto(json.dumps(cmd), (self._ip_address, self._port))
         sock.close()
     except Exception, e:
         CloudLog.error(self._component, "Announce", e)
 def _announce(self, state):
   try:
     CloudLog.track("CLOSET_DOOR", state)
     cmd = {"command": "CLOSET", "modifier": None}
     if state == "CLOSED":
       cmd["modifier"] = "Off"
     sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
     sock.sendto(json.dumps(cmd), (self._ip_address, self._port))
     sock.close()
   except Exception, e:
     CloudLog.error(self._component, "Announce", e)
Beispiel #3
0
def main():
    appName = "PiCloset"
    try:

        if os.getlogin() == "pi":
            log_file = "/home/pi/public_html/pi-automate.log"
        else:
            log_file = 'pi-automate.log'
        CloudLog.init(log_file)
        CloudLog.track(appName, "START")

        ip_address = "192.168.1.201"
        port = 9557
        closet_door = ClosetDoor.Monitor(ip_address, port)
        if closet_door.state == "READY":
            closet_door.run()

    except Exception, e:
        CloudLog.error("App", "System Error", e)
Beispiel #4
0
def main():
    appName = "PiKeyPad"
    try:

      if os.getlogin() == "pi":
        log_file = "/home/pi/public_html/pi-automate.log"
      else:
        log_file = 'pi-automate.log'
      CloudLog.init(log_file)
      CloudLog.track(appName, "START")

      ip_address = "192.168.1.201"
      port = 9557
      kp = Keypad.Monitor(ip_address, port)
      kp.run()


    except Exception, e:
      CloudLog.error("App", "System Error", e)
Beispiel #5
0
 def _runLoop(self, params):
   CloudLog.log(self._component, "Running.")
   while self.running:
     try:
       previous_doorOpen = self._doorOpen
       import RPIO
       RPIO.setup(23, RPIO.IN, pull_up_down=RPIO.PUD_UP)
       self._doorOpen = RPIO.input(23)
       if previous_doorOpen != self._doorOpen:
         if self._doorOpen is True:
           self.state = "OPEN"
           if self._controller.state == "AWAY":
             self._controller.executeCommandByName("HOME")
         else:
           self.state = "CLOSED"
         CloudLog.track("FRONT_DOOR", self.state)
         # self._component.status(key="door", value=self.state)
       interval = 0.5
     except Exception, e:
       CloudLog.error(self._component, "Error in run loop", e)
       if interval < 10:
         interval += interval
     time.sleep(interval)
Beispiel #6
0
 def _runLoop(self, params):
     CloudLog.log(self._component, "Running.")
     while self.running:
         try:
             previous_doorOpen = self._doorOpen
             import RPIO
             RPIO.setup(23, RPIO.IN, pull_up_down=RPIO.PUD_UP)
             self._doorOpen = RPIO.input(23)
             if previous_doorOpen != self._doorOpen:
                 if self._doorOpen is True:
                     self.state = "OPEN"
                     if self._controller.state == "AWAY":
                         self._controller.executeCommandByName("HOME")
                 else:
                     self.state = "CLOSED"
                 CloudLog.track("FRONT_DOOR", self.state)
                 # self._component.status(key="door", value=self.state)
             interval = 0.5
         except Exception, e:
             CloudLog.error(self._component, "Error in run loop", e)
             if interval < 10:
                 interval += interval
         time.sleep(interval)
Beispiel #7
0
def main():
    appName = "PiHomeControl"
    try:

      if os.getlogin() == "pi":
        log_file = "../public_html/pi-automate.log"
      else:
        log_file = 'pi-automate.log'
      CloudLog.init(log_file)
      CloudLog.track(appName, "START")

      config = Config.Config()
      
      controller = System.Controller(config)
      controller.addHandler(Cloud.Monitor)
      controller.addHandler(Door.Monitor)
      controller.addHandler(GVoice.Monitor)
      controller.addHandler(UDPHandler.Monitor)
      controller.addHandler(Away.Monitor)
      Keypad.listen(controller)

    except Exception, e:
      CloudLog.error("App", "System Error", e)
Beispiel #8
0
def main():
    appName = "PiHomeControl"
    try:

      if os.getlogin() == "pi":
        log_file = "../public_html/pi-automate.log"
      else:
        log_file = 'pi-automate.log'
      CloudLog.init(log_file)
      CloudLog.track(appName, "START")

      config = Config.Config()
      
      controller = System.Controller(config)
      controller.addHandler(Cloud.Monitor)
      controller.addHandler(Door.Monitor)
      controller.addHandler(GVoice.Monitor)
      controller.addHandler(UDPHandler.Monitor)
      controller.addHandler(Away.Monitor)
      Keypad.listen(controller)

    except Exception, e:
      CloudLog.error("App", "System Error", e)
Beispiel #9
0
 def turn_off(self, device):
     CloudLog.track("AC_" + str(device), "Off")
     self._send(device, "Off")
     self._status[device] = "Off"
Beispiel #10
0
import os
import CloudLog
import ClosetDoor


def main():
    appName = "PiCloset"
    try:

        if os.getlogin() == "pi":
            log_file = "/home/pi/public_html/pi-automate.log"
        else:
            log_file = 'pi-automate.log'
        CloudLog.init(log_file)
        CloudLog.track(appName, "START")

        ip_address = "192.168.1.201"
        port = 9557
        closet_door = ClosetDoor.Monitor(ip_address, port)
        if closet_door.state == "READY":
            closet_door.run()

    except Exception, e:
        CloudLog.error("App", "System Error", e)
    finally:
        CloudLog.track(appName, "EXITED")


if __name__ == "__main__":
    main()
Beispiel #11
0
def main():
    appName = "PiHomeControl"
    try:

      if os.getlogin() == "pi":
        log_file = "../public_html/pi-automate.log"
      else:
        log_file = 'pi-automate.log'
      CloudLog.init(log_file)
      CloudLog.track(appName, "START")

      config = Config.Config()
      
      controller = System.Controller(config)
      controller.addHandler(Cloud.Monitor)
      controller.addHandler(Door.Monitor)
      controller.addHandler(GVoice.Monitor)
      controller.addHandler(UDPHandler.Monitor)
      controller.addHandler(Away.Monitor)
      Keypad.listen(controller)

    except Exception, e:
      CloudLog.error("App", "System Error", e)
    finally:
      CloudLog.track(appName, "EXITED")


if __name__ == "__main__":
    main()
Beispiel #12
0
 def turn_off(self, device):
   CloudLog.track("AC_" + str(device), "Off")
   cmd = self._commands["Off"]
   self._sendCommand(device, cmd)
Beispiel #13
0
 def fan(self, device, speed):
     CloudLog.track("AC_" + str(device), speed)
     self._send(device, speed)
     self._status[device] = speed
Beispiel #14
0
 def fast_cool(self, device):
     CloudLog.track("AC_" + str(device), "FastCool")
     if self._status[device] == "Off":
         self._send(device, "On")
     self._send(device, "FC")
     self._status[device] = "65"
Beispiel #15
0
 def turn_on(self, device, temperature):
   CloudLog.track("AC_" + str(device), "On")
   cmd = self._commands["On"]
   self._sendCommand(device, cmd)
   self.set_temp(device, temperature)
Beispiel #16
0
 def turn_off(self, device):
   CloudLog.track("AC_" + str(device), "Off")
   self._send(device, "Off")
   self._status[device] = "Off"
Beispiel #17
0
 def turn_on(self, device, temperature):
   CloudLog.track("AC_" + str(device), "On")
   self._send(device, "On")
   self._send(device, temperature)
   self._status[device] = temperature
Beispiel #18
0
 def fast_cool(self, device):
   CloudLog.track("AC_" + str(device), "FastCool")
   if self._status[device] == "Off":
     self._send(device, "On")
   self._send(device, "FC")
   self._status[device] = "65"
Beispiel #19
0
 def fan(self, device, speed):
   CloudLog.track("AC_" + str(device), speed)
   self._send(device, speed)
   self._status[device] = speed
Beispiel #20
0
 def turn_on(self, device, temperature):
     CloudLog.track("AC_" + str(device), "On")
     self._send(device, "On")
     self._send(device, temperature)
     self._status[device] = temperature