42 lines
1.2 KiB
Python
42 lines
1.2 KiB
Python
import logging
|
|
|
|
#from core.execution.executioncontract import executeContract
|
|
from core.execution.action import buildAction
|
|
from core.execution.operation import buildOperation
|
|
from core.apirequest import executeRequest
|
|
from core.runtime.resolver import resolveItem
|
|
from core.runtime.applyconditions import applyConditions
|
|
#from plugins.rmass.actions import login, refresh_tokens
|
|
from core.runtime import buildOutput
|
|
from core.runtime.savedata import loadSave
|
|
|
|
outputs = {}
|
|
resolved = {}
|
|
|
|
def buildMonitor(monitor, outputs):
|
|
outputs = loadSave(monitor, outputs)
|
|
|
|
response, outputs = executeRequest(monitor, outputs, resolved)
|
|
|
|
if response is None:
|
|
return outputs, None
|
|
|
|
responsedata = response.json()
|
|
|
|
readitems = resolveItem(monitor, responsedata)
|
|
|
|
match, filter = applyConditions(monitor, readitems, outputs)
|
|
|
|
buildOutput(response, monitor, outputs)
|
|
|
|
if match:
|
|
logging.info(filter.get("print"))
|
|
module = filter["execute"]
|
|
|
|
if module.kind == "action":
|
|
outputs, response = buildAction(module, outputs, None)
|
|
if module.kind == "operation":
|
|
outputs, responses = buildOperation(module, outputs)
|
|
response = responses
|
|
|
|
return outputs, response |