Scheduling and Scripting

A project log for Home Automation Console.

Over the last 10 years or so my personal home automation controller has grown and grown.

Todd AndersonTodd Anderson 08/19/2016 at 18:560 Comments

The engine has the ability to add PHP scripts that can be scheduled or triggered on events

Here is what i have in place so far

  1. Turn the outside lights on when my IPhone GPS shows I am within 2 blocks of my house.
  2. Turn of my wall screen with the traffic cam page when I walk down the stairs in the morning.
  3. Lock the front door every 30 seconds. (If its unlocked)
  4. Turn off any TV when XBMC is not playing as long as the TV is on the XBMC input
  5. Turn off bedroom lights if there is no motion for 10 minutes
  6. Turn the hallway light on at night when a kid walks to the bathroom then turn off the bathroom light when there is motion back in their bedroom again.
  7. Turn on the TV and select the proper input, then send the proper JSON statement to XBMC to play a movie after the movie is selected on the wall screen.
  8. Announce across the house (speakers)
    1. Laundry Status
    2. Parking (Snow day means I cannot park on the street by law)
    3. When Todd's Iphone leaves the work zone around 5PM
    4. Battery low on any of the sensors
    5. Pings, if any cannot be completed ("Internet Down", "Phone Server Down", etc)
  9. Take a picture of people at the front door when they ring the doorbell. This is done with the front door PTZ camera.
  10. Take a picture of whoever is at the front door if the door access code is entered wrong, take this picture and txt message it to my cell phone.
  11. Control the blinds in the house depending on outside weather and light. IE, if it's windy and the window is open then raise the blinds so they don't get wrecked
  12. ARM/Disarm the alarm depending on upstairs/downstairs motion (night mode)
  13. Open the garage door when the right HID card is read at the outside SMART Card reader.
    1. Have one time user cards
    2. Have timeframe cards (Drywall guy will be here from 12-2PM)
    3. Have permanent use cards.
  14. Pantry light, automate based on door open/closed.
  15. Alert if my ATV leaves the radius of the house.
  16. Send Alerts to XBMC (Display on TV)
    1. Outside Door Open
    2. Backyard Motion (Night Time)
    3. Doorbell
    4. Caller ID
    5. Voicemail
  17. If lights in the living room are off and the living room XBMC is paused, slowly bring the lights up 60%. (also for Bedroom and Basement)
  18. When the sliding door is opened and it's dark outside turn on the outside light. Then turn the light off if no outside motion for 5 minutes
  19. Voice control for Door Locks, Lights, Alarm arm, list events, etc.
  20. At night send the off commands to lights/stereo/TV's if no motion in anything other than bedrooms
  21. When humidity gets to high in the bathrooms the fan will automatically turn on until the humidity matches the surrounding rooms.
  22. Enable whole house fan when temp outside is closer to the target temp then inside.
  23. on Saturday morning, if movement in the kids rooms is followed by movement in the living room it puts on the most watched kids movie from the last 1.5 weeks. (keeps them from waking me up)
  24. I have added a large arcade style button below each TV, pushing the button plays a random Kids TV show. This keeps me from having to pay for cable TV.
  25. Transcoding all unwatched video to smaller file sizes that can be streamed to my iphones via a podcast.