Beispiel #1
0
def sensor_sht1x():
	global verbose
	if verbose:
		print 'SHTX Sensor'
	GPIO = MVC.loadDriver( 'GPIO' )
	reading = GPIO.read_sht1x()
	return reading
 def __init__( self ):
   self.Renderer          = MVC.loadDriver('Renderer')
   self.Renderer.layout   = 'admin/layout.html'
   self.Renderer.layout_args = {
     'ga_tracker' : '',
     'cdn'        : MVC.server['cdn'],
     'production' : MVC.server['production']
   }    
  def prowl_alerts( self, message ):
    UserModel = MVC.loadModel( 'User' )
    users = UserModel.getUsersWithMeta( 'prowl-apikey' )
    Prowl = MVC.loadDriver('Prowl')
    for user in users:
      Prowl.send( user['meta']['prowl-apikey'], message[0], message[1], 1 )

# End File: models/ModelAlert.py
  def messaging( self, message ):
    if Settings.get_option('use-prowl'):
      Prowl = MVC.loadDriver('Prowl')
      prowl_api_key = Settings.get_option('prowl-apikey')

      Prowl.send( prowl_api_key, message[0], message[1], 1 )

# End File: models/ModelAlert.py
  def lighting( self, status ):
    Serial = MVC.loadDriver('Serial')
    if status == 'on':
      status = True
    elif status == 'off':
      status = False
    else:
      print 'ERROR must have on/off status'
      sys.exit()

    for light in self.get_lights():
      Serial.outlet( light[3], status )
      self.log_use( light[0], 0, status )
#!/usr/bin/python                                                                                                  
# Settings Helper
# @description
# This class aids managing settings in a meta-key / meta-value way
# @requirements ( drivers/DriverMySql )

import sys
import os

sys.path.append( os.path.join(os.path.dirname(__file__), '..', '') )
from MVC import MVC
MVC = MVC()
# End file header


Mysql = MVC.loadDriver('Mysql')

class HelperSettings( object ):

  def __init__( self ):
    self.table_name = 'options'

  def get_option( self, meta_key, bool = False ):
    options = Mysql.ex( "SELECT * FROM %s.%s WHERE meta_key = '%s';" % ( MVC.db['name'], self.table_name, meta_key ) )
    try:
      options[0]
    except Exception:
      return False

    if bool:
      if options[0] == '1':
 def __init__( self ):
     self.Renderer          = MVC.loadDriver('Renderer')
     self.Renderer.layout_h = 'admin/layout/header.html'
     self.Renderer.layout_f = 'admin/layout/footer.html'
 def error_page_404( status, message, traceback, version ):
   Renderer = MVC.loadDriver('Renderer')
   return Renderer.make( 'errors/404.html', header = False )
 def __init__( self ):
   self.Renderer          = MVC.loadDriver('Renderer')
import sys
import os
sys.path.append( '../../', )
from MVC import MVC
MVC = MVC()
# End file header

import re
import urllib
import urllib2
from urlparse import urlparse
from bs4 import BeautifulSoup
from datetime import datetime

Misc      = MVC.loadHelper('Misc')
TorScrape = MVC.loadDriver('TorScrape')

class DriverGoogleNews( object ):

	def get( self, search_query ):
		"""
			Fetches RSS query from google news, follows article links
			and returns the result out.
			@params: 
				search_query : str()
			@return:
				[ { 
					'headline' : str(),
					'source'   : str(),
					'url'      : str(), 
					'pubDate'  : str() } ]
Beispiel #11
0
# Here we figure out what we need to run, and we execute it, every 10 minutes
import sys
import os
from datetime import date, datetime, time, timedelta

sys.path.append( os.path.join(os.path.dirname(__file__), '..', '') )
from MVC import MVC
MVC = MVC()
# End file header

import subprocess
from time import strptime


# Read the SHT15 temperature/humidity sensor, log it
Mysql    = MVC.loadDriver( 'Mysql' )
I2c      = MVC.loadDriver( 'I2c' )
Settings = MVC.loadHelper( 'Settings' )
Logger   = MVC.loadHelper( 'Logger' )


weatherunder = Settings.get_option( 'use-network-weatherunderground' )
use_alerts   = Settings.get_option( 'use-alert' )

AlertModel   = MVC.loadModel( 'Alert' )
WeatherModel = MVC.loadModel( 'Weather' )
WaterModel   = MVC.loadModel( 'Water' )

Logger.write( 'Starting Regular Cron', '', 'cron' )

# Check all our sensors and run all our tasks