示例#1
0
    ledState = not bool(GPIO.input(LED))
    GPIO.output(LED, ledState)
    return str({'success': True, 'status': ledState})


@app.route("{0}/toggle/7".format(API_BASEDIR))
def led2():
    LED = 10
    GPIO.setup(LED, GPIO.OUT)
    ledState = not bool(GPIO.input(LED))
    GPIO.output(LED, ledState)
    return str({'success': True, 'status': ledState})


@app.route("{0}/temperature/2".format(API_BASEDIR))
def sensor():
    TEMP = 5
    SENSOR = 2302

    result = SensorController.get_temperature_and_humidity(SENSOR, TEMP)

    return str(result)

if __name__ == "__main__":

    system = System()

    app.run(host=system.get_grid_ip(),
            port=system.get_api_port(),
            debug=system.get_debug_mode())
示例#2
0
class LogHandler:
    """
    Creates log files for API
    """

    def __init__(self, logfile):
        """
        constructor

        :param logfile: log file absolute location
        :type logfile: str
        """

        self.module = __name__
        self.sys = System()
        self.LOG = logfile
        self.debug = self.sys.get_debug_mode()

        # create if log_dir does not exists
        if not os.path.dirname(self.LOG):
            os.makedirs(self.LOG)

    def logger(self, message, level, module):
        """
        Logs all messages to the desired log files

        :param message: log message
        :param level: log level
            * failed = 0
            * succeeded = 1
            * warning = 2
            * info = 3
            * debug = 4
            * exception = 5
        :param module: module name

        :type message: str
        :type level: int
        :type module: str
        """

        target = open(self.LOG, 'a')
        now = datetime.datetime.now()

        if level == 0:
            target.write("{0} - [FAILURE] - [{1}] - {2}\n".format(now, module, message))

        elif level == 1:
            target.write("{0} - [SUCCEEDED] - [{1}] - {2}\n".format(now, module, message))

        elif level == 2:
            target.write("{0} - [WARNING] - [{1}] - {2}\n".format(now, module, message))

        elif level == 3:
            target.write("{0} - [INFO] - [{1}] - {2}\n".format(now, module, message))

        elif level == 4:
            if self.debug:
                target.write("{0} - [DEBUG] - [{1}] - {2}\n".format(now, module, message))

        elif level == 5:
            target.write("{0} - [EXCEPTION] - [{1}] - {2}\n".format(now, module, message))

        target.close()