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() } ]
# 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