示例#1
0
def startConnector():
    singleton = Singleton()
    Functions.log("DBG", "Start connector now", "CORE")
    # Ok let's start with connector checking
    importlib.import_module('communication')
    Functions.log(
        "DBG", "Trying instanciation of " +
        str(singleton.parameters["communicationClass"]), "CORE")
    if not singleton.parameters["communicationClass"] == "":
        try:
            Functions.log(
                "DBG", "Importing module communicationClass " +
                str(singleton.parameters["communicationClass"]), "CORE")
            modCom = importlib.import_module(
                '.' + singleton.parameters["communicationClass"],
                package="communication")
            Functions.log(
                "DBG", "Retrieving class object " +
                str(singleton.parameters["communicationClass"]), "CORE")
            aConnectorClass = getattr(
                modCom, singleton.parameters["communicationClass"])
            singleton.connector = aConnectorClass()
            Functions.log("DBG", "Launching QPI command", "CORE")
            singleton.QPI = Functions.command("QPI", "")
            Functions.log("DBG", "Launching QID command", "CORE")
            singleton.QID = Functions.command("QID", "")
            Functions.log("DBG", "Launching QVFW command", "CORE")
            singleton.QVFW = Functions.command("QVFW", "")
            Functions.log("DBG", "Launching QVFW2 command", "CORE")
            singleton.QVFW2 = Functions.command("QVFW2", "")
        except Exception as err:
            Functions.log("ERR", "Connector exception " + str(err), "CORE")
    else:
        Functions.log("DBG", "No serial connector defined.", "CORE")
示例#2
0
def poolingRequest():
    Functions.log("DBG", "Start pooling request", "CORE")
    singleton = Singleton()
    singleton.QPIGS = Functions.command("QPIGS", "")
    json_body = [{
        "measurement": "pimpMySuperWatt",
        "tags": {
            "hostname":
            singleton.hostName,
            "version":
            singleton.version,
            "qpi":
            singleton.QPI,
            "qid":
            singleton.QID,
            "qfw":
            singleton.QVFW,
            "qfw2":
            singleton.QVFW2,
            "url":
            "http://" + singleton.ip + ":" +
            str(singleton.parameters["httpPort"]),
            "instance":
            singleton.parameters["instance"]
        },
        "fields": singleton.QPIGS
    }]
    json_body_parameters = [{
        "measurement": "pimpMySuperWatt_Parameters",
        "tags": {
            "hostname": singleton.hostName,
            "version": singleton.version,
        },
        "fields": {
            "qpi":
            singleton.QPI,
            "qid":
            singleton.QID,
            "qfw":
            singleton.QVFW,
            "qfw2":
            singleton.QVFW2,
            "url":
            "http://" + singleton.ip + ":" +
            str(singleton.parameters["httpPort"]),
            "instance":
            singleton.parameters["instance"],
            "debug":
            singleton.parameters["debug"],
            "communicationClass":
            singleton.parameters["communicationClass"],
            "portPath":
            singleton.parameters["portPath"],
            "webserver":
            singleton.parameters["webserver"],
            "webserverDebug":
            singleton.parameters["webserverDebug"],
            "webClass":
            singleton.parameters["webClass"],
            "httpBind":
            singleton.parameters["httpBind"],
            "queryPoolingInterval":
            singleton.parameters["queryPoolingInterval"]
        }
    }]
    sendToInflux(json_body)
    sendToInflux(json_body_parameters)

    sendToMqtt(json_body)
    sendToMqtt(json_body_parameters)