Ejemplo n.º 1
0
def setData( deviceObj, dataTypeObj, data ):
    logger.debug("Setting Data")
    obj = Data(
        identifier = Authentication.generateIdentifier(
            [ deviceObj.identifier , dataTypeObj.identifier, data, time.time() ]
        ),
        device = deviceObj,
        datatype = dataTypeObj,
        value = data
    )

    obj.save()
    return obj
Ejemplo n.º 2
0
def setResponse( deviceObj , dataTypeObj , data ):

    logger.info("Creating Response Object")
    obj = Response(
        identifier = Authentication.generateIdentifier(
            [ deviceObj.identifier , dataTypeObj.identifier , time.time() ]
        ),
        device = deviceObj,
        datatype = dataTypeObj,
        value = data
    )

    obj.save()

    return obj
Ejemplo n.º 3
0
def processorRequest( request ):

    logger.info( "Processing " + request.method + " Processor Request" )
    responseObj = HttpResponse()

    try:
        logger.debug( "Body:\n" + request.body + "\n" )
        reqBody = json.loads( request.body )

    except Exception as ex:
        logger.error( "Failed To Parse Body" )
        logger.error(ex)
        responseObj.status_code = 400
        return responseObj

    if 'auth' not in reqBody:
        responseObj.status_code = 400
        return responseObj

    try:
        userObj = Authentication.authUser( reqBody['auth'] )
    except Exception as ex:
        logger.error(ex)
        responseObj.status_code = 400
        return responseObj

    if userObj == None:
        responseObj.status_code = 401
        return responseObj

#------------------------------------------------------------------------------#


    if request.method == 'POST':

        if 'response' not in reqBody:
            responseObj.status_code = 400
            return responseObj

        try:
            if ProcessorRequest.postResponse( reqBody['response'] ):
                responseObj.status_code = 202
                return responseObj
            else:
                responseObj.status_code = 400
                return responseObj

        except Exception as ex:
            logger.error(ex)
            responseObj.status_code = 500
            return responseObj


#------------------------------------------------------------------------------#
    if request.method == 'GET':
        if 'request' not in reqBody:
            responseObj.status_code = 400
            return responseObj

        try:
            result = ProcessorRequest.getData( reqBody['request'] )
        except Exception as ex:
            logger.error(ex)
            responseObj.status_code = 500
            return responseObj

        if result == None:
            responseObj.status_code = 400
            return responseObj


        return HttpResponse(result, content_type='application/json' )