|
|
|
# !ATTENTION - Current Control panel works only from pyOpenRPA v1.2.0!
|
|
|
|
from pyOpenRPA import Orchestrator
|
|
|
|
from pyOpenRPA.Orchestrator import Managers
|
|
|
|
def ControlPanelRenderDict(inGSettings):
|
|
|
|
# Example of the JS code in Python code
|
|
|
|
lJSCheckVersion = f"""
|
|
|
|
if (!('VersionStr' in mGlobal)) {{
|
|
|
|
window.location.reload(true);
|
|
|
|
}} else {{
|
|
|
|
if (mGlobal.VersionStr != "{inGSettings["VersionStr"]}") {{
|
|
|
|
window.location.reload(true);
|
|
|
|
}} else {{
|
|
|
|
$('div.orchestrator-version').html(mGlobal['VersionStr']);
|
|
|
|
}}
|
|
|
|
}}
|
|
|
|
"""
|
|
|
|
lResultDict={
|
|
|
|
"HeaderLeftText":"Version check",
|
|
|
|
"HeaderRightText":"Orchestrator",
|
|
|
|
"DataStorageKey":"", #Use key for set current dict in mGlobal.DataStorage["DataStorageKey"] on client side
|
|
|
|
"SubheaderText":f"<script>{lJSCheckVersion}</script>",
|
|
|
|
"BodyKeyValueList":[
|
|
|
|
{"Key": "Client", "Value": '<div class="orchestrator-version" style="display:inline;"></div>'},
|
|
|
|
{"Key": "Server", "Value": inGSettings["VersionStr"]},
|
|
|
|
],
|
|
|
|
"FooterText":"",
|
|
|
|
"FooterButtonX2List":[],
|
|
|
|
"FooterButtonX1List":[],
|
|
|
|
"GlobalStorage": "" # UNCOMMENT FOR DEBUG PURPOSE TO WATCH inGSettings on client side
|
|
|
|
}
|
|
|
|
return lResultDict
|
|
|
|
# Check in control panel, that process is runnning
|
|
|
|
|
|
|
|
#Orchestrator settings
|
|
|
|
def SettingsUpdate(inGSettings):
|
|
|
|
#Add RobotRDPActive in control panel
|
|
|
|
Orchestrator.WebCPUpdate(inCPKeyStr="VersionCheck", inHTMLRenderDef=ControlPanelRenderDict)
|
|
|
|
|
|
|
|
#lCP = Orchestrator.Managers.ControlPanel(inControlPanelNameStr="TestTTT",inRefreshHTMLJinja2TemplatePathStr="ControlPanel\\test.html", inJinja2TemplateRefreshBool = True)
|
|
|
|
#lCP.InitJSJinja2TemplatePathSet(inJinja2TemplatePathStr="ControlPanel\\test.js")
|
|
|
|
#lProcess = Orchestrator.Managers.ProcessInitSafe(inAgentHostNameStr="IVANMASLOV-DESKTOP",inAgentUserNameStr="ND",
|
|
|
|
# inProcessNameWOExeStr="notepad",inStartCMDStr="notepad",inStopSafeTimeoutSecFloat=3)
|
|
|
|
# Some test
|
|
|
|
Orchestrator.OrchestratorInitWait()
|
|
|
|
#lProcess.ScheduleStatusCheckEverySeconds(inIntervalSecondsInt=5)
|
|
|
|
#lProcess.Start(inIsManualBool=False)
|
|
|
|
#lProcess.StartCheck()
|
|
|
|
#Orchestrator.OrchestratorScheduleGet().every(2).seconds.do(Orchestrator.OrchestratorThreadStart,
|
|
|
|
# lProcess.StartCheck)
|
|
|
|
#Orchestrator.OrchestratorScheduleGet().every(5).seconds.do(Orchestrator.OrchestratorThreadStart,lProcess.StatusCheckStart)
|
|
|
|
#lProcess.Start()
|
|
|
|
#lGit = Orchestrator.Managers.Git(inAgentHostNameStr="IVANMASLOV-DESKTOP",inAgentUserNameStr="ND",inGitPathStr="C:\Abs\Archive\scopeSrcUL\pyStore")
|
|
|
|
#lGit.BranchRevLastGetInterval(inBranchLocalStr="prd", inBranchRemoteStr="origin/prd", inPreviousBranchRestoreBool=False,inIntervalSecFloat=10.0)
|
|
|
|
#lGit.ProcessConnect(inProcess=lProcess)
|
|
|
|
return inGSettings
|