#Import List import os from plugins.rmass.operations import synapsemessagepush from plugins.rmass.actions import setavailable #Module Description name = "RMASS Monitor" kind = "monitor" #Allows success status to be printed in logs during operation showstatus = False #Request information for HTTP REST API requests isrequest = True method = "GET" refreshrate = int(os.environ.get("MONITOR_INTERVAL", 30)) path = "https://rentmasseur.com/api/v1/account/keeponline" headers = { "Authorization": { "output": "access_token", "prefix": "Bearer ", }, } #Items to be read from request response resolve = { "get": { "currentunread": ["newEmails"], "availability":["userActivity", "message"], "availabletime":["userActivity", "validTo"], }, } #Items to be saved from request response outputs = { "availability": "message", "availabletime": "validTo", "lastunread": "newEmails", } filters = [ { "filterkey": "currentunread", "operator": ">", "filtervalue": {"outputs": "lastunread"}, "print": "New messages available...", "execute": synapsemessagepush }, { "filterkey": "availabletime", "operator": "<=", "filtervalue": 3600, "print": "Available time below threshold...", "execute": setavailable, }, ] sleeptime = 15 #prints = { # "Status": "message", # "Time Remaining": "validTo", # } #recoverPolicy = { # KeyError: [] #} loaddata = [ "access_token", "refresh_token", ] savepath = os.environ["TOKEN_STORE"]