Add 3 defs to Agent (Recieve files)

Update guide
Add ProcessorMonitorThread to check long execution
dev-linux
Ivan Maslov 4 years ago
parent 5063b97320
commit 2b773b4bb8

@ -69,5 +69,5 @@ def ActivityListExecute(inGSettings, inActivityList):
lResultList.append(lActivityItemResult) # return the result lResultList.append(lActivityItemResult) # return the result
except Exception as e: except Exception as e:
if lL: lL.exception(f"Processor.ActivityListExecute: Exception in def execution - activity will be ignored. Activity item: {lActivityItem}") # Logging if lL: lL.exception(f"Processor.ActivityListExecute: Exception in def execution - activity will be ignored. Activity item: {lActivityItem}") # Logging
lResultList.append(e) # return the generated exception lResultList.append(None) # return the generated exception
return lResultList # return the result list return lResultList # return the result list

@ -5,7 +5,10 @@ from subprocess import CREATE_NEW_CONSOLE # Flag to create new process in anothe
# Create binary file by the base64 string (safe for JSON transmition) # Create binary file by the base64 string (safe for JSON transmition)
def OSFileBinaryDataBase64StrCreate(inFilePathStr, inFileDataBase64Str,inGSettings = None): def OSFileBinaryDataBase64StrCreate(inFilePathStr, inFileDataBase64Str,inGSettings = None):
""" Create binary file by the base64 string (safe for JSON transmition)""" """
Create binary file by the base64 string (safe for JSON transmition)
"""
lFile = open(inFilePathStr, "wb") lFile = open(inFilePathStr, "wb")
lFile.write(base64.b64decode(inFileDataBase64Str)) lFile.write(base64.b64decode(inFileDataBase64Str))
lFile.close() lFile.close()
@ -16,6 +19,15 @@ def OSFileBinaryDataBase64StrCreate(inFilePathStr, inFileDataBase64Str,inGSettin
# Create text file by the string # Create text file by the string
def OSFileTextDataStrCreate(inFilePathStr, inFileDataStr, inEncodingStr = "utf-8",inGSettings = None): def OSFileTextDataStrCreate(inFilePathStr, inFileDataStr, inEncodingStr = "utf-8",inGSettings = None):
"""
Create text file in the agent GUI session
:param inFilePathStr: File abs path
:param inFileDataStr: File data text content
:param inEncodingStr: Write file encoding
:param inGSettings: global settings of the Agent (singleton)
:return:
"""
lFile = open(inFilePathStr, "w", encoding=inEncodingStr) lFile = open(inFilePathStr, "w", encoding=inEncodingStr)
lFile.write(inFileDataStr) lFile.write(inFileDataStr)
lFile.close() lFile.close()
@ -24,6 +36,42 @@ def OSFileTextDataStrCreate(inFilePathStr, inFileDataStr, inEncodingStr = "utf-8
if lL: lL.info(lMessageStr) if lL: lL.info(lMessageStr)
A2O.LogListSend(inGSettings=inGSettings, inLogList=[lMessageStr]) A2O.LogListSend(inGSettings=inGSettings, inLogList=[lMessageStr])
def OSFileBinaryDataBase64StrReceive(inFilePathStr, inGSettings=None):
"""
Read binary file and encode in base64 to transmit (safe for JSON transmition)
:param inFilePathStr: File path to read
:param inGSettings: global settings of the Agent (singleton)
:return: File content in string base64 format (use base64.b64decode to decode data). Return None if file is not exist
"""
lFile = open(inFilePathStr, "rb")
lFileDataBytes = lFile.read()
lFile.close()
lFileDataBase64Str = base64.b64encode(lFileDataBytes).decode("utf-8")
lL = inGSettings.get("Logger", None) if type(inGSettings) is dict else None
lMessageStr = f"AGENT Binary file {inFilePathStr} has been read."
if lL: lL.info(lMessageStr)
A2O.LogListSend(inGSettings=inGSettings, inLogList=[lMessageStr])
return lFileDataBase64Str
def OSFileTextDataStrReceive(inFilePathStr, inEncodingStr="utf-8", inGSettings=None):
"""
Read text file in the agent GUI session
:param inFilePathStr: File abs path
:param inEncodingStr: Read file encoding. Default utf-8
:param inGSettings: global settings of the Agent (singleton)
:return: File text content in string format (use base64.b64decode to decode data). Return None if file is not exist
"""
lFile = open(inFilePathStr, "r", encoding=inEncodingStr)
lFileDataStr = lFile.read()
lFile.close()
lL = inGSettings.get("Logger", None) if type(inGSettings) is dict else None
lMessageStr = f"AGENT Text file {inFilePathStr} has been read."
if lL: lL.info(lMessageStr)
A2O.LogListSend(inGSettings=inGSettings, inLogList=[lMessageStr])
return lFileDataStr
# Send CMD to OS. Result return to log + Orchestrator by the A2O connection # Send CMD to OS. Result return to log + Orchestrator by the A2O connection
def OSCMD(inCMDStr, inRunAsyncBool=True, inGSettings = None, inSendOutputToOrchestratorLogsBool = True, inCMDEncodingStr = "cp1251"): def OSCMD(inCMDStr, inRunAsyncBool=True, inGSettings = None, inSendOutputToOrchestratorLogsBool = True, inCMDEncodingStr = "cp1251"):
""" """

@ -429,3 +429,8 @@ def Update(inGSettings):
f"Backward compatibility (v1.2.1 to v1.2.2): Convert Storage to StorageDict") # Log about compatibility f"Backward compatibility (v1.2.1 to v1.2.2): Convert Storage to StorageDict") # Log about compatibility
# Remove old structure Scheduler # Remove old structure Scheduler
del inGSettings["Storage"] del inGSettings["Storage"]
# Add new key WarningExecutionMoreThanSecFloat in ProcessorDict
if "WarningExecutionMoreThanSecFloat" not in inGSettings["ProcessorDict"]:
inGSettings["ProcessorDict"]["WarningExecutionMoreThanSecFloat"] = 60.0
if lL: lL.warning(
f"Backward compatibility (v1.2.1 to v1.2.2): Add key WarningExecutionMoreThanSecFloat in ProcessorDict") # Log about compatibility

@ -11,7 +11,8 @@ def ProcessorRunSync(inGSettings, inRobotRDPThreadControlDict):
# "ArgList":[1,2,3], # Args list # "ArgList":[1,2,3], # Args list
# "ArgDict":{"ttt":1,"222":2,"dsd":3}, # Args dictionary # "ArgDict":{"ttt":1,"222":2,"dsd":3}, # Args dictionary
# "ArgGSettings": None # Name of GSettings attribute: str (ArgDict) or index (for ArgList) # "ArgGSettings": None # Name of GSettings attribute: str (ArgDict) or index (for ArgList)
# "ArgLogger": None # Name of GSettings attribute: str (ArgDict) or index (for ArgList) # "ArgLogger": None ,# Name of GSettings attribute: str (ArgDict) or index (for ArgList)
# "GUIDStr": ""
# }, # },
], ],
"AliasDefDict": {}, # Storage for def with Str alias. To use it see pyOpenRPA.Orchestrator.ControlPanel "AliasDefDict": {}, # Storage for def with Str alias. To use it see pyOpenRPA.Orchestrator.ControlPanel
@ -20,16 +21,19 @@ def ProcessorRunSync(inGSettings, inRobotRDPThreadControlDict):
""" """
lL = inGSettings["Logger"] # Logger alias lL = inGSettings["Logger"] # Logger alias
inGSettings["ProcessorDict"]["ThreadIdInt"] = threading.get_ident() # fill Processor thread id inGSettings["ProcessorDict"]["ThreadIdInt"] = threading.get_ident() # fill Processor thread id
while inGSettings["ProcessorDict"]["ExecuteBool"]: try:
lActivityList = inGSettings["ProcessorDict"]["ActivityList"] # Alias while inGSettings["ProcessorDict"]["ExecuteBool"]:
if len(lActivityList)>0: lActivityList = inGSettings["ProcessorDict"]["ActivityList"] # Alias
if lL: lL.debug(f'Processor ActivityList len: {len(lActivityList)}') if len(lActivityList)>0:
lActivityItem = inGSettings["ProcessorDict"]["ActivityList"].pop(0) # Extract the first item from processor queue if lL: lL.debug(f'Processor ActivityList len: {len(lActivityList)}')
inRobotRDPThreadControlDict["ThreadExecuteBool"]=False # Stop the RobotRDPActive monitoring lActivityItem = inGSettings["ProcessorDict"]["ActivityList"].pop(0) # Extract the first item from processor queue
ActivityListExecute(inGSettings = inGSettings, inActivityList = [lActivityItem]) # execute the activity item inRobotRDPThreadControlDict["ThreadExecuteBool"]=False # Stop the RobotRDPActive monitoring
inRobotRDPThreadControlDict["ThreadExecuteBool"] = True # Continue the RobotRDPActive monitoring ActivityListExecute(inGSettings = inGSettings, inActivityList = [lActivityItem]) # execute the activity item
else: inRobotRDPThreadControlDict["ThreadExecuteBool"] = True # Continue the RobotRDPActive monitoring
time.sleep(inGSettings["ProcessorDict"]["CheckIntervalSecFloat"]) # Sleep when list is empty else:
time.sleep(inGSettings["ProcessorDict"]["CheckIntervalSecFloat"]) # Sleep when list is empty
except Exception as e:
if lL: lL.exception(f"Processor.ProcessorRunSync. Something goes very wrong in processor queue. See traceback")
# Execute ActivityItem list # Execute ActivityItem list
# return the def result # return the def result
@ -97,4 +101,32 @@ def __ActivityListVerify__(inActivityList):
raise Exception(f"pyOpenRPA Processor.__ActivityListVerify__: inActivityList has wrong structure! Details: Activity item has no attribute 'Def'") raise Exception(f"pyOpenRPA Processor.__ActivityListVerify__: inActivityList has wrong structure! Details: Activity item has no attribute 'Def'")
#CASE NOT LIST #CASE NOT LIST
else: else:
raise Exception(f"pyOpenRPA Processor.__ActivityListVerify__: inActivityList has wrong structure! Details: Your ActivityList is not a list.") raise Exception(f"pyOpenRPA Processor.__ActivityListVerify__: inActivityList has wrong structure! Details: Your ActivityList is not a list.")
def ProcessorMonitorRunSync(inGSettings):
"""
Periodically check processor queue if task is updating. If one task is more than ... sec - send warning in log
"""
lL = inGSettings["Logger"] # Logger alias
lActiveGUIDStr = None
lActiveTimeStart = time.time()
try:
while True:
if len(inGSettings["ProcessorDict"]["ActivityList"])>0:
lItemDict = inGSettings["ProcessorDict"]["ActivityList"][0]
# Check if GUID is identical
if lItemDict["GUIDStr"]==lActiveGUIDStr:
# Check time
lActiveTimeDeltaSec = time.time() - lActiveTimeStart
# If delta more than Warning limit sec float
lWaitTimeSecFloat = inGSettings["ProcessorDict"]["WarningExecutionMoreThanSecFloat"]
if lActiveTimeDeltaSec > lWaitTimeSecFloat:
if lL: lL.warning(f"Processor.ProcessorMonitorRunSync: Processor wait more than {lWaitTimeSecFloat} sec. Activity def: {lItemDict['Def']}; GUID: {lItemDict['GUIDStr']}")
else:
lActiveGUIDStr = lItemDict["GUIDStr"]
lActiveTimeStart = time.time()
time.sleep(10) # Sleep when list is empty
except Exception as e:
if lL: lL.exception(
f"Processor.ProcessorMonitorRunSync. Something goes very wrong in processor queue. See traceback")

@ -186,7 +186,8 @@ def __Create__():
"AliasDefDict": {}, # Storage for def with Str alias. To use it see pyOpenRPA.Orchestrator.ControlPanel "AliasDefDict": {}, # Storage for def with Str alias. To use it see pyOpenRPA.Orchestrator.ControlPanel
"CheckIntervalSecFloat": 1.0, # Interval for check gSettings in ProcessorDict > ActivityList "CheckIntervalSecFloat": 1.0, # Interval for check gSettings in ProcessorDict > ActivityList
"ExecuteBool": True, # Flag to execute thread processor "ExecuteBool": True, # Flag to execute thread processor
"ThreadIdInt": None # Technical field - will be setup when processor init "ThreadIdInt": None, # Technical field - will be setup when processor init
"WarningExecutionMoreThanSecFloat": 60.0 # Push warning if execution more than n seconds
}, },
"ControlPanelDict": { # Old structure > CPDict "ControlPanelDict": { # Old structure > CPDict
"RefreshSeconds": 5, # deprecated parameter "RefreshSeconds": 5, # deprecated parameter

@ -183,6 +183,69 @@ def AgentOSFileTextDataStrCreate(inGSettings, inHostNameStr, inUserStr, inFilePa
#Send item in AgentDict for the futher data transmition #Send item in AgentDict for the futher data transmition
return AgentActivityItemAdd(inGSettings=inGSettings, inHostNameStr=inHostNameStr, inUserStr=inUserStr, inActivityItemDict=lActivityItemDict) return AgentActivityItemAdd(inGSettings=inGSettings, inHostNameStr=inHostNameStr, inUserStr=inUserStr, inActivityItemDict=lActivityItemDict)
def AgentOSFileBinaryDataBase64StrReceive(inGSettings, inHostNameStr, inUserStr, inFilePathStr):
"""
Read binary file and encode in base64 to transmit (safe for JSON transmition)
:param inGSettings: Global settings dict (singleton)
:param inHostNameStr:
:param inUserStr:
:param inFilePathStr: File path to read
:return: GUID String of the ActivityItem - you can wait (sync or async) result by this guid!
"""
lActivityItemDict = {
"Def":"OSFileBinaryDataBase64StrReceive", # def alias (look pyOpeRPA.Agent gSettings["ProcessorDict"]["AliasDefDict"])
"ArgList":[], # Args list
"ArgDict":{"inFilePathStr":inFilePathStr}, # Args dictionary
"ArgGSettings": "inGSettings", # Name of GSettings attribute: str (ArgDict) or index (for ArgList)
"ArgLogger": None # Name of GSettings attribute: str (ArgDict) or index (for ArgList)
}
#Send item in AgentDict for the futher data transmition
return AgentActivityItemAdd(inGSettings=inGSettings, inHostNameStr=inHostNameStr, inUserStr=inUserStr, inActivityItemDict=lActivityItemDict)
def AgentOSFileTextDataStrReceive(inGSettings, inHostNameStr, inUserStr, inFilePathStr, inEncodingStr="utf-8"):
"""
Read text file in the agent GUI session
:param inGSettings: Global settings dict (singleton)
:param inHostNameStr:
:param inUserStr:
:param inFilePathStr: File path to read
:param inEncodingStr: Text file encoding. Default 'utf-8'
:return: GUID String of the ActivityItem - you can wait (sync or async) result by this guid!
"""
lActivityItemDict = {
"Def":"OSFileTextDataStrReceive", # def alias (look pyOpeRPA.Agent gSettings["ProcessorDict"]["AliasDefDict"])
"ArgList":[], # Args list
"ArgDict":{"inFilePathStr":inFilePathStr, "inEncodingStr": inEncodingStr}, # Args dictionary
"ArgGSettings": "inGSettings", # Name of GSettings attribute: str (ArgDict) or index (for ArgList)
"ArgLogger": None # Name of GSettings attribute: str (ArgDict) or index (for ArgList)
}
#Send item in AgentDict for the futher data transmition
return AgentActivityItemAdd(inGSettings=inGSettings, inHostNameStr=inHostNameStr, inUserStr=inUserStr, inActivityItemDict=lActivityItemDict)
def AgentProcessWOExeUpperUserListGet(inGSettings, inHostNameStr, inUserStr):
"""
Return the process list only for the current user (where Agent is running) without .EXE in upper case. Can use in ActivityItem from Orchestrator to Agent
:param inGSettings: Global settings dict (singleton)
:param inHostNameStr:
:param inUserStr:
:return: GUID String of the ActivityItem - you can wait (sync or async) result by this guid!
"""
lActivityItemDict = {
"Def":"ProcessWOExeUpperUserListGet", # def alias (look pyOpeRPA.Agent gSettings["ProcessorDict"]["AliasDefDict"])
"ArgList":[], # Args list
"ArgDict":{}, # Args dictionary
"ArgGSettings": "inGSettings", # Name of GSettings attribute: str (ArgDict) or index (for ArgList)
"ArgLogger": None # Name of GSettings attribute: str (ArgDict) or index (for ArgList)
}
#Send item in AgentDict for the futher data transmition
return AgentActivityItemAdd(inGSettings=inGSettings, inHostNameStr=inHostNameStr, inUserStr=inUserStr, inActivityItemDict=lActivityItemDict)
# OS DEFS # OS DEFS
def OSCredentialsVerify(inUserStr, inPasswordStr, inDomainStr=""): ## def OSCredentialsVerify(inUserStr, inPasswordStr, inDomainStr=""): ##
""" """
@ -670,7 +733,7 @@ def ProcessorAliasDefUpdate(inGSettings, inDef, inAliasStr):
else: raise Exception(f"pyOpenRPA Exception: You can't use Orchestrator.ProcessorAliasDefUpdate with arg 'inDef' string value. inDef is '{inDef}', inAliasStr is '{inAliasStr}'") else: raise Exception(f"pyOpenRPA Exception: You can't use Orchestrator.ProcessorAliasDefUpdate with arg 'inDef' string value. inDef is '{inDef}', inAliasStr is '{inAliasStr}'")
return inAliasStr return inAliasStr
def ProcessorActivityItemCreate(inDef, inArgList=None, inArgDict=None, inArgGSettingsStr=None, inArgLoggerStr=None): def ProcessorActivityItemCreate(inDef, inArgList=None, inArgDict=None, inArgGSettingsStr=None, inArgLoggerStr=None, inGUIDStr = None):
""" """
Create activity item. Activity item can be used as list item in ProcessorActivityItemAppend or in Processor.ActivityListExecute. Create activity item. Activity item can be used as list item in ProcessorActivityItemAppend or in Processor.ActivityListExecute.
@ -724,17 +787,22 @@ def ProcessorActivityItemCreate(inDef, inArgList=None, inArgDict=None, inArgGSet
:param inArgDict: Args dict for the def :param inArgDict: Args dict for the def
:param inArgGSettingsStr: Name of def argument of the GSettings dict :param inArgGSettingsStr: Name of def argument of the GSettings dict
:param inArgLoggerStr: Name of def argument of the logging object :param inArgLoggerStr: Name of def argument of the logging object
:param inGUIDStr: GUID which you can specify. If None the GUID will be generated
:return: {} :return: {}
""" """
# Work about GUID in Activity items
if inGUIDStr is None:
inGUIDStr = str(uuid.uuid4()) # generate new GUID
if inArgList is None: inArgList=[] if inArgList is None: inArgList=[]
if inArgDict is None: inArgDict={} if inArgDict is None: inArgDict={}
lActivityItemDict= { lActivityItemDict= {
"Def":inDef, # def link or def alias (look gSettings["Processor"]["AliasDefDict"]) "Def":inDef, # def link or def alias (look gSettings["Processor"]["AliasDefDict"])
"ArgList":inArgList, # Args list "ArgList":inArgList, # Args list
"ArgDict":inArgDict, # Args dictionary "ArgDict":inArgDict, # Args dictionary
"ArgGSettings": inArgGSettingsStr, # Name of GSettings attribute: str (ArgDict) or index (for ArgList) "ArgGSettings": inArgGSettingsStr, # Name of GSettings attribute: str (ArgDict) or index (for ArgList)
"ArgLogger": inArgLoggerStr # Name of GSettings attribute: str (ArgDict) or index (for ArgList) "ArgLogger": inArgLoggerStr, # Name of GSettings attribute: str (ArgDict) or index (for ArgList)
} "GUIDStr": inGUIDStr
}
return lActivityItemDict return lActivityItemDict
def ProcessorActivityItemAppend(inGSettings, inDef=None, inArgList=None, inArgDict=None, inArgGSettingsStr=None, inArgLoggerStr=None, inActivityItemDict=None): def ProcessorActivityItemAppend(inGSettings, inDef=None, inArgList=None, inArgDict=None, inArgGSettingsStr=None, inArgLoggerStr=None, inActivityItemDict=None):
@ -799,6 +867,14 @@ def ProcessorActivityItemAppend(inGSettings, inDef=None, inArgList=None, inArgDi
] ]
else: else:
lActivityList = [inActivityItemDict] lActivityList = [inActivityItemDict]
# Work about GUID in Activity items
for lItemDict in lActivityList:
# Add GUIDStr if not exist
lGUIDStr = None
if "GUIDStr" not in lItemDict:
lGUIDStr = str(uuid.uuid4()) # generate new GUID
lItemDict["GUIDStr"] = lGUIDStr
# Add activity list in ProcessorDict
inGSettings["ProcessorDict"]["ActivityList"]+=lActivityList inGSettings["ProcessorDict"]["ActivityList"]+=lActivityList
## Process defs ## Process defs
@ -1864,6 +1940,11 @@ def Orchestrator(inGSettings):
lProcessorThread.start() # Start the thread execution. lProcessorThread.start() # Start the thread execution.
if lL: lL.info("Processor has been started (ProcessorDict)") #Logging if lL: lL.info("Processor has been started (ProcessorDict)") #Logging
# Processor monitor thread
lProcessorMonitorThread = threading.Thread(target= Processor.ProcessorMonitorRunSync, kwargs={"inGSettings":gSettingsDict})
lProcessorMonitorThread.daemon = True # Run the thread in daemon mode.
lProcessorMonitorThread.start() # Start the thread execution.
if lL: lL.info("Processor monitor has been started") #Logging
if lL: lL.info("Scheduler loop start") #Logging if lL: lL.info("Scheduler loop start") #Logging
gDaemonActivityLogDictRefreshSecInt = 10 # The second period for clear lDaemonActivityLogDict from old items gDaemonActivityLogDictRefreshSecInt = 10 # The second period for clear lDaemonActivityLogDict from old items

@ -202,7 +202,16 @@
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Agent.__Agent__.OSFileBinaryDataBase64StrCreate" title="pyOpenRPA.Agent.__Agent__.OSFileBinaryDataBase64StrCreate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">OSFileBinaryDataBase64StrCreate</span></code></a>(…[, …])</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Agent.__Agent__.OSFileBinaryDataBase64StrCreate" title="pyOpenRPA.Agent.__Agent__.OSFileBinaryDataBase64StrCreate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">OSFileBinaryDataBase64StrCreate</span></code></a>(…[, …])</p></td>
<td><p>Create binary file by the base64 string (safe for JSON transmition)</p></td> <td><p>Create binary file by the base64 string (safe for JSON transmition)</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Agent.__Agent__.ProcessWOExeUpperUserListGet" title="pyOpenRPA.Agent.__Agent__.ProcessWOExeUpperUserListGet"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessWOExeUpperUserListGet</span></code></a>()</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Agent.__Agent__.OSFileBinaryDataBase64StrReceive" title="pyOpenRPA.Agent.__Agent__.OSFileBinaryDataBase64StrReceive"><code class="xref py py-obj docutils literal notranslate"><span class="pre">OSFileBinaryDataBase64StrReceive</span></code></a>(inFilePathStr)</p></td>
<td><p>Read binary file and encode in base64 to transmit (safe for JSON transmition)</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Agent.__Agent__.OSFileTextDataStrCreate" title="pyOpenRPA.Agent.__Agent__.OSFileTextDataStrCreate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">OSFileTextDataStrCreate</span></code></a>(inFilePathStr, …)</p></td>
<td><p>Create text file in the agent GUI session</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Agent.__Agent__.OSFileTextDataStrReceive" title="pyOpenRPA.Agent.__Agent__.OSFileTextDataStrReceive"><code class="xref py py-obj docutils literal notranslate"><span class="pre">OSFileTextDataStrReceive</span></code></a>(inFilePathStr[, …])</p></td>
<td><p>Read text file in the agent GUI session</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Agent.__Agent__.ProcessWOExeUpperUserListGet" title="pyOpenRPA.Agent.__Agent__.ProcessWOExeUpperUserListGet"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessWOExeUpperUserListGet</span></code></a>()</p></td>
<td><p>Return the process list only for the current user (where Agent is running) without .EXE in upper case.</p></td> <td><p>Return the process list only for the current user (where Agent is running) without .EXE in upper case.</p></td>
</tr> </tr>
</tbody> </tbody>
@ -232,6 +241,60 @@
<dd><p>Create binary file by the base64 string (safe for JSON transmition)</p> <dd><p>Create binary file by the base64 string (safe for JSON transmition)</p>
</dd></dl> </dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Agent.__Agent__.OSFileBinaryDataBase64StrReceive">
<code class="sig-prename descclassname">pyOpenRPA.Agent.__Agent__.</code><code class="sig-name descname">OSFileBinaryDataBase64StrReceive</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inFilePathStr</span></em>, <em class="sig-param"><span class="n">inGSettings</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Agent/__Agent__.html#OSFileBinaryDataBase64StrReceive"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pyOpenRPA.Agent.__Agent__.OSFileBinaryDataBase64StrReceive" title="Permalink to this definition"></a></dt>
<dd><p>Read binary file and encode in base64 to transmit (safe for JSON transmition)</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inFilePathStr</strong> File path to read</p></li>
<li><p><strong>inGSettings</strong> global settings of the Agent (singleton)</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>File content in string base64 format (use base64.b64decode to decode data). Return None if file is not exist</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Agent.__Agent__.OSFileTextDataStrCreate">
<code class="sig-prename descclassname">pyOpenRPA.Agent.__Agent__.</code><code class="sig-name descname">OSFileTextDataStrCreate</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inFilePathStr</span></em>, <em class="sig-param"><span class="n">inFileDataStr</span></em>, <em class="sig-param"><span class="n">inEncodingStr</span><span class="o">=</span><span class="default_value">'utf-8'</span></em>, <em class="sig-param"><span class="n">inGSettings</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Agent/__Agent__.html#OSFileTextDataStrCreate"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pyOpenRPA.Agent.__Agent__.OSFileTextDataStrCreate" title="Permalink to this definition"></a></dt>
<dd><p>Create text file in the agent GUI session</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inFilePathStr</strong> File abs path</p></li>
<li><p><strong>inFileDataStr</strong> File data text content</p></li>
<li><p><strong>inEncodingStr</strong> Write file encoding</p></li>
<li><p><strong>inGSettings</strong> global settings of the Agent (singleton)</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Agent.__Agent__.OSFileTextDataStrReceive">
<code class="sig-prename descclassname">pyOpenRPA.Agent.__Agent__.</code><code class="sig-name descname">OSFileTextDataStrReceive</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inFilePathStr</span></em>, <em class="sig-param"><span class="n">inEncodingStr</span><span class="o">=</span><span class="default_value">'utf-8'</span></em>, <em class="sig-param"><span class="n">inGSettings</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Agent/__Agent__.html#OSFileTextDataStrReceive"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pyOpenRPA.Agent.__Agent__.OSFileTextDataStrReceive" title="Permalink to this definition"></a></dt>
<dd><p>Read text file in the agent GUI session</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inFilePathStr</strong> File abs path</p></li>
<li><p><strong>inEncodingStr</strong> Read file encoding. Default utf-8</p></li>
<li><p><strong>inGSettings</strong> global settings of the Agent (singleton)</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>File text content in string format (use base64.b64decode to decode data). Return None if file is not exist</p>
</dd>
</dl>
</dd></dl>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Agent.__Agent__.ProcessWOExeUpperUserListGet"> <dt id="pyOpenRPA.Agent.__Agent__.ProcessWOExeUpperUserListGet">
<code class="sig-prename descclassname">pyOpenRPA.Agent.__Agent__.</code><code class="sig-name descname">ProcessWOExeUpperUserListGet</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Agent/__Agent__.html#ProcessWOExeUpperUserListGet"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pyOpenRPA.Agent.__Agent__.ProcessWOExeUpperUserListGet" title="Permalink to this definition"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Agent.__Agent__.</code><code class="sig-name descname">ProcessWOExeUpperUserListGet</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Agent/__Agent__.html#ProcessWOExeUpperUserListGet"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pyOpenRPA.Agent.__Agent__.ProcessWOExeUpperUserListGet" title="Permalink to this definition"></a></dt>

@ -272,142 +272,151 @@
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBase64StrCreate" title="pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBase64StrCreate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">AgentOSFileBinaryDataBase64StrCreate</span></code></a>(…)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBase64StrCreate" title="pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBase64StrCreate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">AgentOSFileBinaryDataBase64StrCreate</span></code></a>(…)</p></td>
<td><p>Create binary file by the base64 string by the pyOpenRPA.Agent daemon process (safe for JSON transmission)</p></td> <td><p>Create binary file by the base64 string by the pyOpenRPA.Agent daemon process (safe for JSON transmission)</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBytesCreate" title="pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBytesCreate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">AgentOSFileBinaryDataBytesCreate</span></code></a>(…)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBase64StrReceive" title="pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBase64StrReceive"><code class="xref py py-obj docutils literal notranslate"><span class="pre">AgentOSFileBinaryDataBase64StrReceive</span></code></a>(…)</p></td>
<td><p>Read binary file and encode in base64 to transmit (safe for JSON transmition)</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBytesCreate" title="pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBytesCreate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">AgentOSFileBinaryDataBytesCreate</span></code></a>(…)</p></td>
<td><p>Create binary file by the base64 string by the pyOpenRPA.Agent daemon process (safe for JSON transmition)</p></td> <td><p>Create binary file by the base64 string by the pyOpenRPA.Agent daemon process (safe for JSON transmition)</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileTextDataStrCreate" title="pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileTextDataStrCreate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">AgentOSFileTextDataStrCreate</span></code></a>(inGSettings, …)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileTextDataStrCreate" title="pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileTextDataStrCreate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">AgentOSFileTextDataStrCreate</span></code></a>(inGSettings, …)</p></td>
<td><p>Create text file by the string by the pyOpenRPA.Agent daemon process</p></td> <td><p>Create text file by the string by the pyOpenRPA.Agent daemon process</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsAutocleaner" title="pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsAutocleaner"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GSettingsAutocleaner</span></code></a>(inGSettings)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileTextDataStrReceive" title="pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileTextDataStrReceive"><code class="xref py py-obj docutils literal notranslate"><span class="pre">AgentOSFileTextDataStrReceive</span></code></a>(inGSettings, …)</p></td>
<td><p>Read text file in the agent GUI session</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.AgentProcessWOExeUpperUserListGet" title="pyOpenRPA.Orchestrator.__Orchestrator__.AgentProcessWOExeUpperUserListGet"><code class="xref py py-obj docutils literal notranslate"><span class="pre">AgentProcessWOExeUpperUserListGet</span></code></a>(…)</p></td>
<td><p>Return the process list only for the current user (where Agent is running) without .EXE in upper case.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsAutocleaner" title="pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsAutocleaner"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GSettingsAutocleaner</span></code></a>(inGSettings)</p></td>
<td><p>HIDDEN Interval gSettings auto cleaner def to clear some garbage.</p></td> <td><p>HIDDEN Interval gSettings auto cleaner def to clear some garbage.</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsKeyListValueAppend" title="pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsKeyListValueAppend"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GSettingsKeyListValueAppend</span></code></a>(inGSettings, inValue)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsKeyListValueAppend" title="pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsKeyListValueAppend"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GSettingsKeyListValueAppend</span></code></a>(inGSettings, inValue)</p></td>
<td><p>Append value in GSettings by the key list</p></td> <td><p>Append value in GSettings by the key list</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsKeyListValueGet" title="pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsKeyListValueGet"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GSettingsKeyListValueGet</span></code></a>(inGSettings[, …])</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsKeyListValueGet" title="pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsKeyListValueGet"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GSettingsKeyListValueGet</span></code></a>(inGSettings[, …])</p></td>
<td><p>Get the value from the GSettings by the key list</p></td> <td><p>Get the value from the GSettings by the key list</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsKeyListValueOperatorPlus" title="pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsKeyListValueOperatorPlus"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GSettingsKeyListValueOperatorPlus</span></code></a>(…[, …])</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsKeyListValueOperatorPlus" title="pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsKeyListValueOperatorPlus"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GSettingsKeyListValueOperatorPlus</span></code></a>(…[, …])</p></td>
<td><p>Execute plus operation between 2 lists (1:inValue and 2:gSettings by the inKeyList)</p></td> <td><p>Execute plus operation between 2 lists (1:inValue and 2:gSettings by the inKeyList)</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsKeyListValueSet" title="pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsKeyListValueSet"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GSettingsKeyListValueSet</span></code></a>(inGSettings, inValue)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsKeyListValueSet" title="pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsKeyListValueSet"><code class="xref py py-obj docutils literal notranslate"><span class="pre">GSettingsKeyListValueSet</span></code></a>(inGSettings, inValue)</p></td>
<td><p>Set value in GSettings by the key list</p></td> <td><p>Set value in GSettings by the key list</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.OSCMD" title="pyOpenRPA.Orchestrator.__Orchestrator__.OSCMD"><code class="xref py py-obj docutils literal notranslate"><span class="pre">OSCMD</span></code></a>(inCMDStr[, inRunAsyncBool, inLogger])</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.OSCMD" title="pyOpenRPA.Orchestrator.__Orchestrator__.OSCMD"><code class="xref py py-obj docutils literal notranslate"><span class="pre">OSCMD</span></code></a>(inCMDStr[, inRunAsyncBool, inLogger])</p></td>
<td><p>OS send command in shell locally</p></td> <td><p>OS send command in shell locally</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.OSCredentialsVerify" title="pyOpenRPA.Orchestrator.__Orchestrator__.OSCredentialsVerify"><code class="xref py py-obj docutils literal notranslate"><span class="pre">OSCredentialsVerify</span></code></a>(inUserStr, inPasswordStr)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.OSCredentialsVerify" title="pyOpenRPA.Orchestrator.__Orchestrator__.OSCredentialsVerify"><code class="xref py py-obj docutils literal notranslate"><span class="pre">OSCredentialsVerify</span></code></a>(inUserStr, inPasswordStr)</p></td>
<td><p>Verify user credentials in windows.</p></td> <td><p>Verify user credentials in windows.</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.OrchestratorRestart" title="pyOpenRPA.Orchestrator.__Orchestrator__.OrchestratorRestart"><code class="xref py py-obj docutils literal notranslate"><span class="pre">OrchestratorRestart</span></code></a>([inGSettings])</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.OrchestratorRestart" title="pyOpenRPA.Orchestrator.__Orchestrator__.OrchestratorRestart"><code class="xref py py-obj docutils literal notranslate"><span class="pre">OrchestratorRestart</span></code></a>([inGSettings])</p></td>
<td><p>Orchestrator restart</p></td> <td><p>Orchestrator restart</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.OrchestratorSessionSave" title="pyOpenRPA.Orchestrator.__Orchestrator__.OrchestratorSessionSave"><code class="xref py py-obj docutils literal notranslate"><span class="pre">OrchestratorSessionSave</span></code></a>([inGSettings])</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.OrchestratorSessionSave" title="pyOpenRPA.Orchestrator.__Orchestrator__.OrchestratorSessionSave"><code class="xref py py-obj docutils literal notranslate"><span class="pre">OrchestratorSessionSave</span></code></a>([inGSettings])</p></td>
<td><p>Orchestrator session save in file _SessionLast_RDPList.json (encoding = “utf-8”)</p></td> <td><p>Orchestrator session save in file _SessionLast_RDPList.json (encoding = “utf-8”)</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessDefIntervalCall" title="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessDefIntervalCall"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessDefIntervalCall</span></code></a>(inGSettings, inDef, …)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessDefIntervalCall" title="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessDefIntervalCall"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessDefIntervalCall</span></code></a>(inGSettings, inDef, …)</p></td>
<td><p>Use this procedure if you need to run periodically some def.</p></td> <td><p>Use this procedure if you need to run periodically some def.</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessIsStarted" title="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessIsStarted"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessIsStarted</span></code></a>(inProcessNameWOExeStr)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessIsStarted" title="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessIsStarted"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessIsStarted</span></code></a>(inProcessNameWOExeStr)</p></td>
<td><p>Check if there is any running process that contains the given name processName.</p></td> <td><p>Check if there is any running process that contains the given name processName.</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessListGet" title="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessListGet"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessListGet</span></code></a>([inProcessNameWOExeList])</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessListGet" title="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessListGet"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessListGet</span></code></a>([inProcessNameWOExeList])</p></td>
<td><p>Return process list on the orchestrator machine sorted by Memory Usage.</p></td> <td><p>Return process list on the orchestrator machine sorted by Memory Usage.</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessStart" title="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessStart"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessStart</span></code></a>(inPathStr, inArgList[, …])</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessStart" title="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessStart"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessStart</span></code></a>(inPathStr, inArgList[, …])</p></td>
<td><p>Start process locally.</p></td> <td><p>Start process locally.</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessStop" title="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessStop"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessStop</span></code></a>(inProcessNameWOExeStr, …[, …])</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessStop" title="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessStop"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessStop</span></code></a>(inProcessNameWOExeStr, …[, …])</p></td>
<td><p>Stop process on the orchestrator machine.</p></td> <td><p>Stop process on the orchestrator machine.</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorActivityItemAppend" title="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorActivityItemAppend"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessorActivityItemAppend</span></code></a>(inGSettings[, …])</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorActivityItemAppend" title="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorActivityItemAppend"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessorActivityItemAppend</span></code></a>(inGSettings[, …])</p></td>
<td><p>Create and add activity item in processor queue.</p></td> <td><p>Create and add activity item in processor queue.</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorActivityItemCreate" title="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorActivityItemCreate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessorActivityItemCreate</span></code></a>(inDef[, …])</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorActivityItemCreate" title="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorActivityItemCreate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessorActivityItemCreate</span></code></a>(inDef[, …])</p></td>
<td><p>Create activity item.</p></td> <td><p>Create activity item.</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorAliasDefCreate" title="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorAliasDefCreate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessorAliasDefCreate</span></code></a>(inGSettings, inDef)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorAliasDefCreate" title="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorAliasDefCreate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessorAliasDefCreate</span></code></a>(inGSettings, inDef)</p></td>
<td><p>Create alias for def (can be used in ActivityItem in field Def) !WHEN DEF ALIAS IS REQUIRED! - Def alias is required when you try to call Python def from the Orchestrator WEB side (because you cant transmit Python def object out of the Python environment)</p></td> <td><p>Create alias for def (can be used in ActivityItem in field Def) !WHEN DEF ALIAS IS REQUIRED! - Def alias is required when you try to call Python def from the Orchestrator WEB side (because you cant transmit Python def object out of the Python environment)</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorAliasDefUpdate" title="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorAliasDefUpdate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessorAliasDefUpdate</span></code></a>(inGSettings, inDef, …)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorAliasDefUpdate" title="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorAliasDefUpdate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">ProcessorAliasDefUpdate</span></code></a>(inGSettings, inDef, …)</p></td>
<td><p>Update alias for def (can be used in ActivityItem in field Def).</p></td> <td><p>Update alias for def (can be used in ActivityItem in field Def).</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.PythonStart" title="pyOpenRPA.Orchestrator.__Orchestrator__.PythonStart"><code class="xref py py-obj docutils literal notranslate"><span class="pre">PythonStart</span></code></a>(inModulePathStr, inDefNameStr[, …])</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.PythonStart" title="pyOpenRPA.Orchestrator.__Orchestrator__.PythonStart"><code class="xref py py-obj docutils literal notranslate"><span class="pre">PythonStart</span></code></a>(inModulePathStr, inDefNameStr[, …])</p></td>
<td><p>Import module and run def in the Orchestrator process.</p></td> <td><p>Import module and run def in the Orchestrator process.</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionCMDRun" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionCMDRun"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionCMDRun</span></code></a>(inGSettings, …[, inModeStr])</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionCMDRun" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionCMDRun"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionCMDRun</span></code></a>(inGSettings, …[, inModeStr])</p></td>
<td><p>Send CMD command to the RDP session “RUN” window</p></td> <td><p>Send CMD command to the RDP session “RUN” window</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionConnect" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionConnect"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionConnect</span></code></a>(inGSettings, …[, …])</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionConnect" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionConnect"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionConnect</span></code></a>(inGSettings, …[, …])</p></td>
<td><p>Create new RDPSession in RobotRDPActive. Attention - activity will be ignored if RDP key is already exists</p></td> <td><p>Create new RDPSession in RobotRDPActive. Attention - activity will be ignored if RDP key is already exists</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionDisconnect" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionDisconnect"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionDisconnect</span></code></a>(inGSettings, …[, …])</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionDisconnect" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionDisconnect"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionDisconnect</span></code></a>(inGSettings, …[, …])</p></td>
<td><p>Disconnect the RDP session and stop monitoring it.</p></td> <td><p>Disconnect the RDP session and stop monitoring it.</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionDublicatesResolve" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionDublicatesResolve"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionDublicatesResolve</span></code></a>(inGSettings)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionDublicatesResolve" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionDublicatesResolve"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionDublicatesResolve</span></code></a>(inGSettings)</p></td>
<td><p>DEVELOPING Search duplicates in GSettings RDPlist !def is developing!</p></td> <td><p>DEVELOPING Search duplicates in GSettings RDPlist !def is developing!</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionFileStoredRecieve" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionFileStoredRecieve"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionFileStoredRecieve</span></code></a>(inGSettings, …)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionFileStoredRecieve" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionFileStoredRecieve"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionFileStoredRecieve</span></code></a>(inGSettings, …)</p></td>
<td><p>Recieve file from RDP session to the Orchestrator session using shared drive in RDP (see RDP Configuration Dict, Shared drive)</p></td> <td><p>Recieve file from RDP session to the Orchestrator session using shared drive in RDP (see RDP Configuration Dict, Shared drive)</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionFileStoredSend" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionFileStoredSend"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionFileStoredSend</span></code></a>(inGSettings, …)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionFileStoredSend" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionFileStoredSend"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionFileStoredSend</span></code></a>(inGSettings, …)</p></td>
<td><p>Send file from Orchestrator session to the RDP session using shared drive in RDP (see RDP Configuration Dict, Shared drive)</p></td> <td><p>Send file from Orchestrator session to the RDP session using shared drive in RDP (see RDP Configuration Dict, Shared drive)</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionLogoff" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionLogoff"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionLogoff</span></code></a>(inGSettings, inRDPSessionKeyStr)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionLogoff" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionLogoff"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionLogoff</span></code></a>(inGSettings, inRDPSessionKeyStr)</p></td>
<td><p>Logoff the RDP session from the Orchestrator process (close all apps in session when logoff)</p></td> <td><p>Logoff the RDP session from the Orchestrator process (close all apps in session when logoff)</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionMonitorStop" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionMonitorStop"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionMonitorStop</span></code></a>(inGSettings, …)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionMonitorStop" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionMonitorStop"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionMonitorStop</span></code></a>(inGSettings, …)</p></td>
<td><p>Stop monitoring the RDP session by the Orchestrator process.</p></td> <td><p>Stop monitoring the RDP session by the Orchestrator process.</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionProcessStartIfNotRunning" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionProcessStartIfNotRunning"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionProcessStartIfNotRunning</span></code></a>(…[, …])</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionProcessStartIfNotRunning" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionProcessStartIfNotRunning"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionProcessStartIfNotRunning</span></code></a>(…[, …])</p></td>
<td><p>Start process in RDP if it is not running (check by the arg inProcessNameWEXEStr)</p></td> <td><p>Start process in RDP if it is not running (check by the arg inProcessNameWEXEStr)</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionProcessStop" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionProcessStop"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionProcessStop</span></code></a>(inGSettings, …)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionProcessStop" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionProcessStop"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionProcessStop</span></code></a>(inGSettings, …)</p></td>
<td><p>Send CMD command to the RDP session “RUN” window.</p></td> <td><p>Send CMD command to the RDP session “RUN” window.</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionReconnect" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionReconnect"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionReconnect</span></code></a>(inGSettings, …[, …])</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionReconnect" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionReconnect"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionReconnect</span></code></a>(inGSettings, …[, …])</p></td>
<td><p>Reconnect the RDP session</p></td> <td><p>Reconnect the RDP session</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionResponsibilityCheck" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionResponsibilityCheck"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionResponsibilityCheck</span></code></a>(inGSettings, …)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionResponsibilityCheck" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPSessionResponsibilityCheck"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPSessionResponsibilityCheck</span></code></a>(inGSettings, …)</p></td>
<td><p>DEVELOPING, MAYBE NOT USEFUL Check RDP Session responsibility TODO NEED DEV + TEST</p></td> <td><p>DEVELOPING, MAYBE NOT USEFUL Check RDP Session responsibility TODO NEED DEV + TEST</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPTemplateCreate" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPTemplateCreate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPTemplateCreate</span></code></a>(inLoginStr, inPasswordStr)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.RDPTemplateCreate" title="pyOpenRPA.Orchestrator.__Orchestrator__.RDPTemplateCreate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">RDPTemplateCreate</span></code></a>(inLoginStr, inPasswordStr)</p></td>
<td><p>Create RDP connect dict item/ Use it connect/reconnect (Orchestrator.RDPSessionConnect)</p></td> <td><p>Create RDP connect dict item/ Use it connect/reconnect (Orchestrator.RDPSessionConnect)</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.SchedulerActivityTimeAddWeekly" title="pyOpenRPA.Orchestrator.__Orchestrator__.SchedulerActivityTimeAddWeekly"><code class="xref py py-obj docutils literal notranslate"><span class="pre">SchedulerActivityTimeAddWeekly</span></code></a>(inGSettings)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.SchedulerActivityTimeAddWeekly" title="pyOpenRPA.Orchestrator.__Orchestrator__.SchedulerActivityTimeAddWeekly"><code class="xref py py-obj docutils literal notranslate"><span class="pre">SchedulerActivityTimeAddWeekly</span></code></a>(inGSettings)</p></td>
<td><p>Add activity item list in scheduler.</p></td> <td><p>Add activity item list in scheduler.</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.UACKeyListCheck" title="pyOpenRPA.Orchestrator.__Orchestrator__.UACKeyListCheck"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UACKeyListCheck</span></code></a>(inRequest, inRoleKeyList)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.UACKeyListCheck" title="pyOpenRPA.Orchestrator.__Orchestrator__.UACKeyListCheck"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UACKeyListCheck</span></code></a>(inRequest, inRoleKeyList)</p></td>
<td><p>Check is client is has access for the key list</p></td> <td><p>Check is client is has access for the key list</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.UACSuperTokenUpdate" title="pyOpenRPA.Orchestrator.__Orchestrator__.UACSuperTokenUpdate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UACSuperTokenUpdate</span></code></a>(inGSettings, inSuperTokenStr)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.UACSuperTokenUpdate" title="pyOpenRPA.Orchestrator.__Orchestrator__.UACSuperTokenUpdate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UACSuperTokenUpdate</span></code></a>(inGSettings, inSuperTokenStr)</p></td>
<td><p>Add supertoken for the all access (it is need for the robot communication without human)</p></td> <td><p>Add supertoken for the all access (it is need for the robot communication without human)</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.UACUpdate" title="pyOpenRPA.Orchestrator.__Orchestrator__.UACUpdate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UACUpdate</span></code></a>(inGSettings, inADLoginStr[, …])</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.UACUpdate" title="pyOpenRPA.Orchestrator.__Orchestrator__.UACUpdate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UACUpdate</span></code></a>(inGSettings, inADLoginStr[, …])</p></td>
<td><p>Update user access (UAC)</p></td> <td><p>Update user access (UAC)</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.UACUserDictGet" title="pyOpenRPA.Orchestrator.__Orchestrator__.UACUserDictGet"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UACUserDictGet</span></code></a>(inRequest)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.UACUserDictGet" title="pyOpenRPA.Orchestrator.__Orchestrator__.UACUserDictGet"><code class="xref py py-obj docutils literal notranslate"><span class="pre">UACUserDictGet</span></code></a>(inRequest)</p></td>
<td><p>Return user UAC hierarchy dict of the inRequest object.</p></td> <td><p>Return user UAC hierarchy dict of the inRequest object.</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.WebCPUpdate" title="pyOpenRPA.Orchestrator.__Orchestrator__.WebCPUpdate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">WebCPUpdate</span></code></a>(inGSettings, inCPKeyStr[, …])</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.WebCPUpdate" title="pyOpenRPA.Orchestrator.__Orchestrator__.WebCPUpdate"><code class="xref py py-obj docutils literal notranslate"><span class="pre">WebCPUpdate</span></code></a>(inGSettings, inCPKeyStr[, …])</p></td>
<td><p>Add control panel HTML, JSON generator or JS when page init</p></td> <td><p>Add control panel HTML, JSON generator or JS when page init</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.WebURLConnectDef" title="pyOpenRPA.Orchestrator.__Orchestrator__.WebURLConnectDef"><code class="xref py py-obj docutils literal notranslate"><span class="pre">WebURLConnectDef</span></code></a>(inGSettings, inMethodStr, …)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.WebURLConnectDef" title="pyOpenRPA.Orchestrator.__Orchestrator__.WebURLConnectDef"><code class="xref py py-obj docutils literal notranslate"><span class="pre">WebURLConnectDef</span></code></a>(inGSettings, inMethodStr, …)</p></td>
<td><p>Connect URL to DEF</p></td> <td><p>Connect URL to DEF</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.WebURLConnectFile" title="pyOpenRPA.Orchestrator.__Orchestrator__.WebURLConnectFile"><code class="xref py py-obj docutils literal notranslate"><span class="pre">WebURLConnectFile</span></code></a>(inGSettings, inMethodStr, …)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.WebURLConnectFile" title="pyOpenRPA.Orchestrator.__Orchestrator__.WebURLConnectFile"><code class="xref py py-obj docutils literal notranslate"><span class="pre">WebURLConnectFile</span></code></a>(inGSettings, inMethodStr, …)</p></td>
<td><p>Connect URL to File</p></td> <td><p>Connect URL to File</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.WebURLConnectFolder" title="pyOpenRPA.Orchestrator.__Orchestrator__.WebURLConnectFolder"><code class="xref py py-obj docutils literal notranslate"><span class="pre">WebURLConnectFolder</span></code></a>(inGSettings, …)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.WebURLConnectFolder" title="pyOpenRPA.Orchestrator.__Orchestrator__.WebURLConnectFolder"><code class="xref py py-obj docutils literal notranslate"><span class="pre">WebURLConnectFolder</span></code></a>(inGSettings, …)</p></td>
<td><p>Connect URL to Folder</p></td> <td><p>Connect URL to Folder</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.WebUserInfoGet" title="pyOpenRPA.Orchestrator.__Orchestrator__.WebUserInfoGet"><code class="xref py py-obj docutils literal notranslate"><span class="pre">WebUserInfoGet</span></code></a>(inRequest)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.WebUserInfoGet" title="pyOpenRPA.Orchestrator.__Orchestrator__.WebUserInfoGet"><code class="xref py py-obj docutils literal notranslate"><span class="pre">WebUserInfoGet</span></code></a>(inRequest)</p></td>
<td><p>Return User info about request</p></td> <td><p>Return User info about request</p></td>
</tr> </tr>
<tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.WebUserIsSuperToken" title="pyOpenRPA.Orchestrator.__Orchestrator__.WebUserIsSuperToken"><code class="xref py py-obj docutils literal notranslate"><span class="pre">WebUserIsSuperToken</span></code></a>(inRequest, inGSettings)</p></td> <tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.WebUserIsSuperToken" title="pyOpenRPA.Orchestrator.__Orchestrator__.WebUserIsSuperToken"><code class="xref py py-obj docutils literal notranslate"><span class="pre">WebUserIsSuperToken</span></code></a>(inRequest, inGSettings)</p></td>
<td><p>Return bool if request is authentificated with supetoken (token which is never expires)</p></td> <td><p>Return bool if request is authentificated with supetoken (token which is never expires)</p></td>
</tr> </tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.WebUserUACHierarchyGet" title="pyOpenRPA.Orchestrator.__Orchestrator__.WebUserUACHierarchyGet"><code class="xref py py-obj docutils literal notranslate"><span class="pre">WebUserUACHierarchyGet</span></code></a>(inRequest)</p></td> <tr class="row-even"><td><p><a class="reference internal" href="#pyOpenRPA.Orchestrator.__Orchestrator__.WebUserUACHierarchyGet" title="pyOpenRPA.Orchestrator.__Orchestrator__.WebUserUACHierarchyGet"><code class="xref py py-obj docutils literal notranslate"><span class="pre">WebUserUACHierarchyGet</span></code></a>(inRequest)</p></td>
<td><p>Return User UAC Hierarchy DICT Return {…}</p></td> <td><p>Return User UAC Hierarchy DICT Return {…}</p></td>
</tr> </tr>
</tbody> </tbody>
@ -509,6 +518,25 @@
</dl> </dl>
</dd></dl> </dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBase64StrReceive">
<code class="sig-prename descclassname">pyOpenRPA.Orchestrator.__Orchestrator__.</code><code class="sig-name descname">AgentOSFileBinaryDataBase64StrReceive</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inGSettings</span></em>, <em class="sig-param"><span class="n">inHostNameStr</span></em>, <em class="sig-param"><span class="n">inUserStr</span></em>, <em class="sig-param"><span class="n">inFilePathStr</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Orchestrator/__Orchestrator__.html#AgentOSFileBinaryDataBase64StrReceive"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBase64StrReceive" title="Permalink to this definition"></a></dt>
<dd><p>Read binary file and encode in base64 to transmit (safe for JSON transmition)</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inGSettings</strong> Global settings dict (singleton)</p></li>
<li><p><strong>inHostNameStr</strong> </p></li>
<li><p><strong>inUserStr</strong> </p></li>
<li><p><strong>inFilePathStr</strong> File path to read</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>GUID String of the ActivityItem - you can wait (sync or async) result by this guid!</p>
</dd>
</dl>
</dd></dl>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBytesCreate"> <dt id="pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBytesCreate">
<code class="sig-prename descclassname">pyOpenRPA.Orchestrator.__Orchestrator__.</code><code class="sig-name descname">AgentOSFileBinaryDataBytesCreate</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inGSettings</span></em>, <em class="sig-param"><span class="n">inHostNameStr</span></em>, <em class="sig-param"><span class="n">inUserStr</span></em>, <em class="sig-param"><span class="n">inFilePathStr</span></em>, <em class="sig-param"><span class="n">inFileDataBytes</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Orchestrator/__Orchestrator__.html#AgentOSFileBinaryDataBytesCreate"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBytesCreate" title="Permalink to this definition"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Orchestrator.__Orchestrator__.</code><code class="sig-name descname">AgentOSFileBinaryDataBytesCreate</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inGSettings</span></em>, <em class="sig-param"><span class="n">inHostNameStr</span></em>, <em class="sig-param"><span class="n">inUserStr</span></em>, <em class="sig-param"><span class="n">inFilePathStr</span></em>, <em class="sig-param"><span class="n">inFileDataBytes</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Orchestrator/__Orchestrator__.html#AgentOSFileBinaryDataBytesCreate"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBytesCreate" title="Permalink to this definition"></a></dt>
@ -550,6 +578,44 @@
</dl> </dl>
</dd></dl> </dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileTextDataStrReceive">
<code class="sig-prename descclassname">pyOpenRPA.Orchestrator.__Orchestrator__.</code><code class="sig-name descname">AgentOSFileTextDataStrReceive</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inGSettings</span></em>, <em class="sig-param"><span class="n">inHostNameStr</span></em>, <em class="sig-param"><span class="n">inUserStr</span></em>, <em class="sig-param"><span class="n">inFilePathStr</span></em>, <em class="sig-param"><span class="n">inEncodingStr</span><span class="o">=</span><span class="default_value">'utf-8'</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Orchestrator/__Orchestrator__.html#AgentOSFileTextDataStrReceive"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileTextDataStrReceive" title="Permalink to this definition"></a></dt>
<dd><p>Read text file in the agent GUI session</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inGSettings</strong> Global settings dict (singleton)</p></li>
<li><p><strong>inHostNameStr</strong> </p></li>
<li><p><strong>inUserStr</strong> </p></li>
<li><p><strong>inFilePathStr</strong> File path to read</p></li>
<li><p><strong>inEncodingStr</strong> Text file encoding. Default utf-8</p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>GUID String of the ActivityItem - you can wait (sync or async) result by this guid!</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt id="pyOpenRPA.Orchestrator.__Orchestrator__.AgentProcessWOExeUpperUserListGet">
<code class="sig-prename descclassname">pyOpenRPA.Orchestrator.__Orchestrator__.</code><code class="sig-name descname">AgentProcessWOExeUpperUserListGet</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inGSettings</span></em>, <em class="sig-param"><span class="n">inHostNameStr</span></em>, <em class="sig-param"><span class="n">inUserStr</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Orchestrator/__Orchestrator__.html#AgentProcessWOExeUpperUserListGet"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pyOpenRPA.Orchestrator.__Orchestrator__.AgentProcessWOExeUpperUserListGet" title="Permalink to this definition"></a></dt>
<dd><p>Return the process list only for the current user (where Agent is running) without .EXE in upper case. Can use in ActivityItem from Orchestrator to Agent</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>inGSettings</strong> Global settings dict (singleton)</p></li>
<li><p><strong>inHostNameStr</strong> </p></li>
<li><p><strong>inUserStr</strong> </p></li>
</ul>
</dd>
<dt class="field-even">Returns</dt>
<dd class="field-even"><p>GUID String of the ActivityItem - you can wait (sync or async) result by this guid!</p>
</dd>
</dl>
</dd></dl>
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsAutocleaner"> <dt id="pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsAutocleaner">
<code class="sig-prename descclassname">pyOpenRPA.Orchestrator.__Orchestrator__.</code><code class="sig-name descname">GSettingsAutocleaner</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inGSettings</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Orchestrator/__Orchestrator__.html#GSettingsAutocleaner"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsAutocleaner" title="Permalink to this definition"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Orchestrator.__Orchestrator__.</code><code class="sig-name descname">GSettingsAutocleaner</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inGSettings</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Orchestrator/__Orchestrator__.html#GSettingsAutocleaner"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsAutocleaner" title="Permalink to this definition"></a></dt>
@ -928,7 +994,7 @@
<dl class="py function"> <dl class="py function">
<dt id="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorActivityItemCreate"> <dt id="pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorActivityItemCreate">
<code class="sig-prename descclassname">pyOpenRPA.Orchestrator.__Orchestrator__.</code><code class="sig-name descname">ProcessorActivityItemCreate</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inDef</span></em>, <em class="sig-param"><span class="n">inArgList</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inArgDict</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inArgGSettingsStr</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inArgLoggerStr</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Orchestrator/__Orchestrator__.html#ProcessorActivityItemCreate"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorActivityItemCreate" title="Permalink to this definition"></a></dt> <code class="sig-prename descclassname">pyOpenRPA.Orchestrator.__Orchestrator__.</code><code class="sig-name descname">ProcessorActivityItemCreate</code><span class="sig-paren">(</span><em class="sig-param"><span class="n">inDef</span></em>, <em class="sig-param"><span class="n">inArgList</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inArgDict</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inArgGSettingsStr</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inArgLoggerStr</span><span class="o">=</span><span class="default_value">None</span></em>, <em class="sig-param"><span class="n">inGUIDStr</span><span class="o">=</span><span class="default_value">None</span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/pyOpenRPA/Orchestrator/__Orchestrator__.html#ProcessorActivityItemCreate"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorActivityItemCreate" title="Permalink to this definition"></a></dt>
<dd><p>Create activity item. Activity item can be used as list item in ProcessorActivityItemAppend or in Processor.ActivityListExecute.</p> <dd><p>Create activity item. Activity item can be used as list item in ProcessorActivityItemAppend or in Processor.ActivityListExecute.</p>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># USAGE</span> <div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># USAGE</span>
<span class="kn">from</span> <span class="nn">pyOpenRPA</span> <span class="kn">import</span> <span class="n">Orchestrator</span> <span class="kn">from</span> <span class="nn">pyOpenRPA</span> <span class="kn">import</span> <span class="n">Orchestrator</span>
@ -982,6 +1048,7 @@
<li><p><strong>inArgDict</strong> Args dict for the def</p></li> <li><p><strong>inArgDict</strong> Args dict for the def</p></li>
<li><p><strong>inArgGSettingsStr</strong> Name of def argument of the GSettings dict</p></li> <li><p><strong>inArgGSettingsStr</strong> Name of def argument of the GSettings dict</p></li>
<li><p><strong>inArgLoggerStr</strong> Name of def argument of the logging object</p></li> <li><p><strong>inArgLoggerStr</strong> Name of def argument of the logging object</p></li>
<li><p><strong>inGUIDStr</strong> GUID which you can specify. If None the GUID will be generated</p></li>
</ul> </ul>
</dd> </dd>
<dt class="field-even">Returns</dt> <dt class="field-even">Returns</dt>

@ -373,7 +373,8 @@
<span class="s2">&quot;AliasDefDict&quot;</span><span class="p">:</span> <span class="p">{},</span> <span class="c1"># Storage for def with Str alias. To use it see pyOpenRPA.Orchestrator.ControlPanel</span> <span class="s2">&quot;AliasDefDict&quot;</span><span class="p">:</span> <span class="p">{},</span> <span class="c1"># Storage for def with Str alias. To use it see pyOpenRPA.Orchestrator.ControlPanel</span>
<span class="s2">&quot;CheckIntervalSecFloat&quot;</span><span class="p">:</span> <span class="mf">1.0</span><span class="p">,</span> <span class="c1"># Interval for check gSettings in ProcessorDict &gt; ActivityList</span> <span class="s2">&quot;CheckIntervalSecFloat&quot;</span><span class="p">:</span> <span class="mf">1.0</span><span class="p">,</span> <span class="c1"># Interval for check gSettings in ProcessorDict &gt; ActivityList</span>
<span class="s2">&quot;ExecuteBool&quot;</span><span class="p">:</span> <span class="kc">True</span><span class="p">,</span> <span class="c1"># Flag to execute thread processor</span> <span class="s2">&quot;ExecuteBool&quot;</span><span class="p">:</span> <span class="kc">True</span><span class="p">,</span> <span class="c1"># Flag to execute thread processor</span>
<span class="s2">&quot;ThreadIdInt&quot;</span><span class="p">:</span> <span class="kc">None</span> <span class="c1"># Technical field - will be setup when processor init</span> <span class="s2">&quot;ThreadIdInt&quot;</span><span class="p">:</span> <span class="kc">None</span><span class="p">,</span> <span class="c1"># Technical field - will be setup when processor init</span>
<span class="s2">&quot;WarningExecutionMoreThanSecFloat&quot;</span><span class="p">:</span> <span class="mf">60.0</span> <span class="c1"># Push warning if execution more than n seconds</span>
<span class="p">},</span> <span class="p">},</span>
<span class="s2">&quot;ControlPanelDict&quot;</span><span class="p">:</span> <span class="p">{</span> <span class="c1"># Old structure &gt; CPDict</span> <span class="s2">&quot;ControlPanelDict&quot;</span><span class="p">:</span> <span class="p">{</span> <span class="c1"># Old structure &gt; CPDict</span>
<span class="s2">&quot;RefreshSeconds&quot;</span><span class="p">:</span> <span class="mi">5</span><span class="p">,</span> <span class="c1"># deprecated parameter</span> <span class="s2">&quot;RefreshSeconds&quot;</span><span class="p">:</span> <span class="mi">5</span><span class="p">,</span> <span class="c1"># deprecated parameter</span>

@ -186,7 +186,10 @@
<span class="c1"># Create binary file by the base64 string (safe for JSON transmition)</span> <span class="c1"># Create binary file by the base64 string (safe for JSON transmition)</span>
<div class="viewcode-block" id="OSFileBinaryDataBase64StrCreate"><a class="viewcode-back" href="../../../Agent/02_Defs.html#pyOpenRPA.Agent.__Agent__.OSFileBinaryDataBase64StrCreate">[docs]</a><span class="k">def</span> <span class="nf">OSFileBinaryDataBase64StrCreate</span><span class="p">(</span><span class="n">inFilePathStr</span><span class="p">,</span> <span class="n">inFileDataBase64Str</span><span class="p">,</span><span class="n">inGSettings</span> <span class="o">=</span> <span class="kc">None</span><span class="p">):</span> <div class="viewcode-block" id="OSFileBinaryDataBase64StrCreate"><a class="viewcode-back" href="../../../Agent/02_Defs.html#pyOpenRPA.Agent.__Agent__.OSFileBinaryDataBase64StrCreate">[docs]</a><span class="k">def</span> <span class="nf">OSFileBinaryDataBase64StrCreate</span><span class="p">(</span><span class="n">inFilePathStr</span><span class="p">,</span> <span class="n">inFileDataBase64Str</span><span class="p">,</span><span class="n">inGSettings</span> <span class="o">=</span> <span class="kc">None</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot; Create binary file by the base64 string (safe for JSON transmition)&quot;&quot;&quot;</span> <span class="sd">&quot;&quot;&quot;</span>
<span class="sd"> Create binary file by the base64 string (safe for JSON transmition)</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="n">lFile</span> <span class="o">=</span> <span class="nb">open</span><span class="p">(</span><span class="n">inFilePathStr</span><span class="p">,</span> <span class="s2">&quot;wb&quot;</span><span class="p">)</span> <span class="n">lFile</span> <span class="o">=</span> <span class="nb">open</span><span class="p">(</span><span class="n">inFilePathStr</span><span class="p">,</span> <span class="s2">&quot;wb&quot;</span><span class="p">)</span>
<span class="n">lFile</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">base64</span><span class="o">.</span><span class="n">b64decode</span><span class="p">(</span><span class="n">inFileDataBase64Str</span><span class="p">))</span> <span class="n">lFile</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">base64</span><span class="o">.</span><span class="n">b64decode</span><span class="p">(</span><span class="n">inFileDataBase64Str</span><span class="p">))</span>
<span class="n">lFile</span><span class="o">.</span><span class="n">close</span><span class="p">()</span> <span class="n">lFile</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
@ -196,14 +199,59 @@
<span class="n">A2O</span><span class="o">.</span><span class="n">LogListSend</span><span class="p">(</span><span class="n">inGSettings</span><span class="o">=</span><span class="n">inGSettings</span><span class="p">,</span> <span class="n">inLogList</span><span class="o">=</span><span class="p">[</span><span class="n">lMessageStr</span><span class="p">])</span></div> <span class="n">A2O</span><span class="o">.</span><span class="n">LogListSend</span><span class="p">(</span><span class="n">inGSettings</span><span class="o">=</span><span class="n">inGSettings</span><span class="p">,</span> <span class="n">inLogList</span><span class="o">=</span><span class="p">[</span><span class="n">lMessageStr</span><span class="p">])</span></div>
<span class="c1"># Create text file by the string</span> <span class="c1"># Create text file by the string</span>
<span class="k">def</span> <span class="nf">OSFileTextDataStrCreate</span><span class="p">(</span><span class="n">inFilePathStr</span><span class="p">,</span> <span class="n">inFileDataStr</span><span class="p">,</span> <span class="n">inEncodingStr</span> <span class="o">=</span> <span class="s2">&quot;utf-8&quot;</span><span class="p">,</span><span class="n">inGSettings</span> <span class="o">=</span> <span class="kc">None</span><span class="p">):</span> <div class="viewcode-block" id="OSFileTextDataStrCreate"><a class="viewcode-back" href="../../../Agent/02_Defs.html#pyOpenRPA.Agent.__Agent__.OSFileTextDataStrCreate">[docs]</a><span class="k">def</span> <span class="nf">OSFileTextDataStrCreate</span><span class="p">(</span><span class="n">inFilePathStr</span><span class="p">,</span> <span class="n">inFileDataStr</span><span class="p">,</span> <span class="n">inEncodingStr</span> <span class="o">=</span> <span class="s2">&quot;utf-8&quot;</span><span class="p">,</span><span class="n">inGSettings</span> <span class="o">=</span> <span class="kc">None</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;</span>
<span class="sd"> Create text file in the agent GUI session</span>
<span class="sd"> :param inFilePathStr: File abs path</span>
<span class="sd"> :param inFileDataStr: File data text content</span>
<span class="sd"> :param inEncodingStr: Write file encoding</span>
<span class="sd"> :param inGSettings: global settings of the Agent (singleton)</span>
<span class="sd"> :return:</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="n">lFile</span> <span class="o">=</span> <span class="nb">open</span><span class="p">(</span><span class="n">inFilePathStr</span><span class="p">,</span> <span class="s2">&quot;w&quot;</span><span class="p">,</span> <span class="n">encoding</span><span class="o">=</span><span class="n">inEncodingStr</span><span class="p">)</span> <span class="n">lFile</span> <span class="o">=</span> <span class="nb">open</span><span class="p">(</span><span class="n">inFilePathStr</span><span class="p">,</span> <span class="s2">&quot;w&quot;</span><span class="p">,</span> <span class="n">encoding</span><span class="o">=</span><span class="n">inEncodingStr</span><span class="p">)</span>
<span class="n">lFile</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">inFileDataStr</span><span class="p">)</span> <span class="n">lFile</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">inFileDataStr</span><span class="p">)</span>
<span class="n">lFile</span><span class="o">.</span><span class="n">close</span><span class="p">()</span> <span class="n">lFile</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
<span class="n">lL</span> <span class="o">=</span> <span class="n">inGSettings</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;Logger&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span> <span class="k">if</span> <span class="nb">type</span><span class="p">(</span><span class="n">inGSettings</span><span class="p">)</span> <span class="ow">is</span> <span class="nb">dict</span> <span class="k">else</span> <span class="kc">None</span> <span class="n">lL</span> <span class="o">=</span> <span class="n">inGSettings</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;Logger&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span> <span class="k">if</span> <span class="nb">type</span><span class="p">(</span><span class="n">inGSettings</span><span class="p">)</span> <span class="ow">is</span> <span class="nb">dict</span> <span class="k">else</span> <span class="kc">None</span>
<span class="n">lMessageStr</span> <span class="o">=</span> <span class="sa">f</span><span class="s2">&quot;AGENT Text file </span><span class="si">{</span><span class="n">inFilePathStr</span><span class="si">}</span><span class="s2"> has been created.&quot;</span> <span class="n">lMessageStr</span> <span class="o">=</span> <span class="sa">f</span><span class="s2">&quot;AGENT Text file </span><span class="si">{</span><span class="n">inFilePathStr</span><span class="si">}</span><span class="s2"> has been created.&quot;</span>
<span class="k">if</span> <span class="n">lL</span><span class="p">:</span> <span class="n">lL</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="n">lMessageStr</span><span class="p">)</span> <span class="k">if</span> <span class="n">lL</span><span class="p">:</span> <span class="n">lL</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="n">lMessageStr</span><span class="p">)</span>
<span class="n">A2O</span><span class="o">.</span><span class="n">LogListSend</span><span class="p">(</span><span class="n">inGSettings</span><span class="o">=</span><span class="n">inGSettings</span><span class="p">,</span> <span class="n">inLogList</span><span class="o">=</span><span class="p">[</span><span class="n">lMessageStr</span><span class="p">])</span></div>
<div class="viewcode-block" id="OSFileBinaryDataBase64StrReceive"><a class="viewcode-back" href="../../../Agent/02_Defs.html#pyOpenRPA.Agent.__Agent__.OSFileBinaryDataBase64StrReceive">[docs]</a><span class="k">def</span> <span class="nf">OSFileBinaryDataBase64StrReceive</span><span class="p">(</span><span class="n">inFilePathStr</span><span class="p">,</span> <span class="n">inGSettings</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;</span>
<span class="sd"> Read binary file and encode in base64 to transmit (safe for JSON transmition)</span>
<span class="sd"> :param inFilePathStr: File path to read</span>
<span class="sd"> :param inGSettings: global settings of the Agent (singleton)</span>
<span class="sd"> :return: File content in string base64 format (use base64.b64decode to decode data). Return None if file is not exist</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="n">lFile</span> <span class="o">=</span> <span class="nb">open</span><span class="p">(</span><span class="n">inFilePathStr</span><span class="p">,</span> <span class="s2">&quot;rb&quot;</span><span class="p">)</span>
<span class="n">lFileDataBytes</span> <span class="o">=</span> <span class="n">lFile</span><span class="o">.</span><span class="n">read</span><span class="p">()</span>
<span class="n">lFile</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
<span class="n">lFileDataBase64Str</span> <span class="o">=</span> <span class="n">base64</span><span class="o">.</span><span class="n">b64encode</span><span class="p">(</span><span class="n">lFileDataBytes</span><span class="p">)</span><span class="o">.</span><span class="n">decode</span><span class="p">(</span><span class="s2">&quot;utf-8&quot;</span><span class="p">)</span>
<span class="n">lL</span> <span class="o">=</span> <span class="n">inGSettings</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;Logger&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span> <span class="k">if</span> <span class="nb">type</span><span class="p">(</span><span class="n">inGSettings</span><span class="p">)</span> <span class="ow">is</span> <span class="nb">dict</span> <span class="k">else</span> <span class="kc">None</span>
<span class="n">lMessageStr</span> <span class="o">=</span> <span class="sa">f</span><span class="s2">&quot;AGENT Binary file </span><span class="si">{</span><span class="n">inFilePathStr</span><span class="si">}</span><span class="s2"> has been read.&quot;</span>
<span class="k">if</span> <span class="n">lL</span><span class="p">:</span> <span class="n">lL</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="n">lMessageStr</span><span class="p">)</span>
<span class="n">A2O</span><span class="o">.</span><span class="n">LogListSend</span><span class="p">(</span><span class="n">inGSettings</span><span class="o">=</span><span class="n">inGSettings</span><span class="p">,</span> <span class="n">inLogList</span><span class="o">=</span><span class="p">[</span><span class="n">lMessageStr</span><span class="p">])</span>
<span class="k">return</span> <span class="n">lFileDataBase64Str</span></div>
<div class="viewcode-block" id="OSFileTextDataStrReceive"><a class="viewcode-back" href="../../../Agent/02_Defs.html#pyOpenRPA.Agent.__Agent__.OSFileTextDataStrReceive">[docs]</a><span class="k">def</span> <span class="nf">OSFileTextDataStrReceive</span><span class="p">(</span><span class="n">inFilePathStr</span><span class="p">,</span> <span class="n">inEncodingStr</span><span class="o">=</span><span class="s2">&quot;utf-8&quot;</span><span class="p">,</span> <span class="n">inGSettings</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;</span>
<span class="sd"> Read text file in the agent GUI session</span>
<span class="sd"> :param inFilePathStr: File abs path</span>
<span class="sd"> :param inEncodingStr: Read file encoding. Default utf-8</span>
<span class="sd"> :param inGSettings: global settings of the Agent (singleton)</span>
<span class="sd"> :return: File text content in string format (use base64.b64decode to decode data). Return None if file is not exist</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="n">lFile</span> <span class="o">=</span> <span class="nb">open</span><span class="p">(</span><span class="n">inFilePathStr</span><span class="p">,</span> <span class="s2">&quot;r&quot;</span><span class="p">,</span> <span class="n">encoding</span><span class="o">=</span><span class="n">inEncodingStr</span><span class="p">)</span>
<span class="n">lFileDataStr</span> <span class="o">=</span> <span class="n">lFile</span><span class="o">.</span><span class="n">read</span><span class="p">()</span>
<span class="n">lFile</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
<span class="n">lL</span> <span class="o">=</span> <span class="n">inGSettings</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s2">&quot;Logger&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">)</span> <span class="k">if</span> <span class="nb">type</span><span class="p">(</span><span class="n">inGSettings</span><span class="p">)</span> <span class="ow">is</span> <span class="nb">dict</span> <span class="k">else</span> <span class="kc">None</span>
<span class="n">lMessageStr</span> <span class="o">=</span> <span class="sa">f</span><span class="s2">&quot;AGENT Text file </span><span class="si">{</span><span class="n">inFilePathStr</span><span class="si">}</span><span class="s2"> has been read.&quot;</span>
<span class="k">if</span> <span class="n">lL</span><span class="p">:</span> <span class="n">lL</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="n">lMessageStr</span><span class="p">)</span>
<span class="n">A2O</span><span class="o">.</span><span class="n">LogListSend</span><span class="p">(</span><span class="n">inGSettings</span><span class="o">=</span><span class="n">inGSettings</span><span class="p">,</span> <span class="n">inLogList</span><span class="o">=</span><span class="p">[</span><span class="n">lMessageStr</span><span class="p">])</span> <span class="n">A2O</span><span class="o">.</span><span class="n">LogListSend</span><span class="p">(</span><span class="n">inGSettings</span><span class="o">=</span><span class="n">inGSettings</span><span class="p">,</span> <span class="n">inLogList</span><span class="o">=</span><span class="p">[</span><span class="n">lMessageStr</span><span class="p">])</span>
<span class="k">return</span> <span class="n">lFileDataStr</span></div>
<span class="c1"># Send CMD to OS. Result return to log + Orchestrator by the A2O connection</span> <span class="c1"># Send CMD to OS. Result return to log + Orchestrator by the A2O connection</span>
<div class="viewcode-block" id="OSCMD"><a class="viewcode-back" href="../../../Agent/02_Defs.html#pyOpenRPA.Agent.__Agent__.OSCMD">[docs]</a><span class="k">def</span> <span class="nf">OSCMD</span><span class="p">(</span><span class="n">inCMDStr</span><span class="p">,</span> <span class="n">inRunAsyncBool</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">inGSettings</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span> <span class="n">inSendOutputToOrchestratorLogsBool</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span> <span class="n">inCMDEncodingStr</span> <span class="o">=</span> <span class="s2">&quot;cp1251&quot;</span><span class="p">):</span> <div class="viewcode-block" id="OSCMD"><a class="viewcode-back" href="../../../Agent/02_Defs.html#pyOpenRPA.Agent.__Agent__.OSCMD">[docs]</a><span class="k">def</span> <span class="nf">OSCMD</span><span class="p">(</span><span class="n">inCMDStr</span><span class="p">,</span> <span class="n">inRunAsyncBool</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">inGSettings</span> <span class="o">=</span> <span class="kc">None</span><span class="p">,</span> <span class="n">inSendOutputToOrchestratorLogsBool</span> <span class="o">=</span> <span class="kc">True</span><span class="p">,</span> <span class="n">inCMDEncodingStr</span> <span class="o">=</span> <span class="s2">&quot;cp1251&quot;</span><span class="p">):</span>

@ -364,6 +364,69 @@
<span class="c1">#Send item in AgentDict for the futher data transmition</span> <span class="c1">#Send item in AgentDict for the futher data transmition</span>
<span class="k">return</span> <span class="n">AgentActivityItemAdd</span><span class="p">(</span><span class="n">inGSettings</span><span class="o">=</span><span class="n">inGSettings</span><span class="p">,</span> <span class="n">inHostNameStr</span><span class="o">=</span><span class="n">inHostNameStr</span><span class="p">,</span> <span class="n">inUserStr</span><span class="o">=</span><span class="n">inUserStr</span><span class="p">,</span> <span class="n">inActivityItemDict</span><span class="o">=</span><span class="n">lActivityItemDict</span><span class="p">)</span></div> <span class="k">return</span> <span class="n">AgentActivityItemAdd</span><span class="p">(</span><span class="n">inGSettings</span><span class="o">=</span><span class="n">inGSettings</span><span class="p">,</span> <span class="n">inHostNameStr</span><span class="o">=</span><span class="n">inHostNameStr</span><span class="p">,</span> <span class="n">inUserStr</span><span class="o">=</span><span class="n">inUserStr</span><span class="p">,</span> <span class="n">inActivityItemDict</span><span class="o">=</span><span class="n">lActivityItemDict</span><span class="p">)</span></div>
<div class="viewcode-block" id="AgentOSFileBinaryDataBase64StrReceive"><a class="viewcode-back" href="../../../Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBase64StrReceive">[docs]</a><span class="k">def</span> <span class="nf">AgentOSFileBinaryDataBase64StrReceive</span><span class="p">(</span><span class="n">inGSettings</span><span class="p">,</span> <span class="n">inHostNameStr</span><span class="p">,</span> <span class="n">inUserStr</span><span class="p">,</span> <span class="n">inFilePathStr</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;</span>
<span class="sd"> Read binary file and encode in base64 to transmit (safe for JSON transmition)</span>
<span class="sd"> :param inGSettings: Global settings dict (singleton)</span>
<span class="sd"> :param inHostNameStr:</span>
<span class="sd"> :param inUserStr:</span>
<span class="sd"> :param inFilePathStr: File path to read</span>
<span class="sd"> :return: GUID String of the ActivityItem - you can wait (sync or async) result by this guid!</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="n">lActivityItemDict</span> <span class="o">=</span> <span class="p">{</span>
<span class="s2">&quot;Def&quot;</span><span class="p">:</span><span class="s2">&quot;OSFileBinaryDataBase64StrReceive&quot;</span><span class="p">,</span> <span class="c1"># def alias (look pyOpeRPA.Agent gSettings[&quot;ProcessorDict&quot;][&quot;AliasDefDict&quot;])</span>
<span class="s2">&quot;ArgList&quot;</span><span class="p">:[],</span> <span class="c1"># Args list</span>
<span class="s2">&quot;ArgDict&quot;</span><span class="p">:{</span><span class="s2">&quot;inFilePathStr&quot;</span><span class="p">:</span><span class="n">inFilePathStr</span><span class="p">},</span> <span class="c1"># Args dictionary</span>
<span class="s2">&quot;ArgGSettings&quot;</span><span class="p">:</span> <span class="s2">&quot;inGSettings&quot;</span><span class="p">,</span> <span class="c1"># Name of GSettings attribute: str (ArgDict) or index (for ArgList)</span>
<span class="s2">&quot;ArgLogger&quot;</span><span class="p">:</span> <span class="kc">None</span> <span class="c1"># Name of GSettings attribute: str (ArgDict) or index (for ArgList)</span>
<span class="p">}</span>
<span class="c1">#Send item in AgentDict for the futher data transmition</span>
<span class="k">return</span> <span class="n">AgentActivityItemAdd</span><span class="p">(</span><span class="n">inGSettings</span><span class="o">=</span><span class="n">inGSettings</span><span class="p">,</span> <span class="n">inHostNameStr</span><span class="o">=</span><span class="n">inHostNameStr</span><span class="p">,</span> <span class="n">inUserStr</span><span class="o">=</span><span class="n">inUserStr</span><span class="p">,</span> <span class="n">inActivityItemDict</span><span class="o">=</span><span class="n">lActivityItemDict</span><span class="p">)</span></div>
<div class="viewcode-block" id="AgentOSFileTextDataStrReceive"><a class="viewcode-back" href="../../../Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileTextDataStrReceive">[docs]</a><span class="k">def</span> <span class="nf">AgentOSFileTextDataStrReceive</span><span class="p">(</span><span class="n">inGSettings</span><span class="p">,</span> <span class="n">inHostNameStr</span><span class="p">,</span> <span class="n">inUserStr</span><span class="p">,</span> <span class="n">inFilePathStr</span><span class="p">,</span> <span class="n">inEncodingStr</span><span class="o">=</span><span class="s2">&quot;utf-8&quot;</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;</span>
<span class="sd"> Read text file in the agent GUI session</span>
<span class="sd"> :param inGSettings: Global settings dict (singleton)</span>
<span class="sd"> :param inHostNameStr:</span>
<span class="sd"> :param inUserStr:</span>
<span class="sd"> :param inFilePathStr: File path to read</span>
<span class="sd"> :param inEncodingStr: Text file encoding. Default &#39;utf-8&#39;</span>
<span class="sd"> :return: GUID String of the ActivityItem - you can wait (sync or async) result by this guid!</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="n">lActivityItemDict</span> <span class="o">=</span> <span class="p">{</span>
<span class="s2">&quot;Def&quot;</span><span class="p">:</span><span class="s2">&quot;OSFileTextDataStrReceive&quot;</span><span class="p">,</span> <span class="c1"># def alias (look pyOpeRPA.Agent gSettings[&quot;ProcessorDict&quot;][&quot;AliasDefDict&quot;])</span>
<span class="s2">&quot;ArgList&quot;</span><span class="p">:[],</span> <span class="c1"># Args list</span>
<span class="s2">&quot;ArgDict&quot;</span><span class="p">:{</span><span class="s2">&quot;inFilePathStr&quot;</span><span class="p">:</span><span class="n">inFilePathStr</span><span class="p">,</span> <span class="s2">&quot;inEncodingStr&quot;</span><span class="p">:</span> <span class="n">inEncodingStr</span><span class="p">},</span> <span class="c1"># Args dictionary</span>
<span class="s2">&quot;ArgGSettings&quot;</span><span class="p">:</span> <span class="s2">&quot;inGSettings&quot;</span><span class="p">,</span> <span class="c1"># Name of GSettings attribute: str (ArgDict) or index (for ArgList)</span>
<span class="s2">&quot;ArgLogger&quot;</span><span class="p">:</span> <span class="kc">None</span> <span class="c1"># Name of GSettings attribute: str (ArgDict) or index (for ArgList)</span>
<span class="p">}</span>
<span class="c1">#Send item in AgentDict for the futher data transmition</span>
<span class="k">return</span> <span class="n">AgentActivityItemAdd</span><span class="p">(</span><span class="n">inGSettings</span><span class="o">=</span><span class="n">inGSettings</span><span class="p">,</span> <span class="n">inHostNameStr</span><span class="o">=</span><span class="n">inHostNameStr</span><span class="p">,</span> <span class="n">inUserStr</span><span class="o">=</span><span class="n">inUserStr</span><span class="p">,</span> <span class="n">inActivityItemDict</span><span class="o">=</span><span class="n">lActivityItemDict</span><span class="p">)</span></div>
<div class="viewcode-block" id="AgentProcessWOExeUpperUserListGet"><a class="viewcode-back" href="../../../Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.AgentProcessWOExeUpperUserListGet">[docs]</a><span class="k">def</span> <span class="nf">AgentProcessWOExeUpperUserListGet</span><span class="p">(</span><span class="n">inGSettings</span><span class="p">,</span> <span class="n">inHostNameStr</span><span class="p">,</span> <span class="n">inUserStr</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;</span>
<span class="sd"> Return the process list only for the current user (where Agent is running) without .EXE in upper case. Can use in ActivityItem from Orchestrator to Agent</span>
<span class="sd"> :param inGSettings: Global settings dict (singleton)</span>
<span class="sd"> :param inHostNameStr:</span>
<span class="sd"> :param inUserStr:</span>
<span class="sd"> :return: GUID String of the ActivityItem - you can wait (sync or async) result by this guid!</span>
<span class="sd"> &quot;&quot;&quot;</span>
<span class="n">lActivityItemDict</span> <span class="o">=</span> <span class="p">{</span>
<span class="s2">&quot;Def&quot;</span><span class="p">:</span><span class="s2">&quot;ProcessWOExeUpperUserListGet&quot;</span><span class="p">,</span> <span class="c1"># def alias (look pyOpeRPA.Agent gSettings[&quot;ProcessorDict&quot;][&quot;AliasDefDict&quot;])</span>
<span class="s2">&quot;ArgList&quot;</span><span class="p">:[],</span> <span class="c1"># Args list</span>
<span class="s2">&quot;ArgDict&quot;</span><span class="p">:{},</span> <span class="c1"># Args dictionary</span>
<span class="s2">&quot;ArgGSettings&quot;</span><span class="p">:</span> <span class="s2">&quot;inGSettings&quot;</span><span class="p">,</span> <span class="c1"># Name of GSettings attribute: str (ArgDict) or index (for ArgList)</span>
<span class="s2">&quot;ArgLogger&quot;</span><span class="p">:</span> <span class="kc">None</span> <span class="c1"># Name of GSettings attribute: str (ArgDict) or index (for ArgList)</span>
<span class="p">}</span>
<span class="c1">#Send item in AgentDict for the futher data transmition</span>
<span class="k">return</span> <span class="n">AgentActivityItemAdd</span><span class="p">(</span><span class="n">inGSettings</span><span class="o">=</span><span class="n">inGSettings</span><span class="p">,</span> <span class="n">inHostNameStr</span><span class="o">=</span><span class="n">inHostNameStr</span><span class="p">,</span> <span class="n">inUserStr</span><span class="o">=</span><span class="n">inUserStr</span><span class="p">,</span> <span class="n">inActivityItemDict</span><span class="o">=</span><span class="n">lActivityItemDict</span><span class="p">)</span></div>
<span class="c1"># OS DEFS</span> <span class="c1"># OS DEFS</span>
<div class="viewcode-block" id="OSCredentialsVerify"><a class="viewcode-back" href="../../../Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.OSCredentialsVerify">[docs]</a><span class="k">def</span> <span class="nf">OSCredentialsVerify</span><span class="p">(</span><span class="n">inUserStr</span><span class="p">,</span> <span class="n">inPasswordStr</span><span class="p">,</span> <span class="n">inDomainStr</span><span class="o">=</span><span class="s2">&quot;&quot;</span><span class="p">):</span> <span class="c1">##</span> <div class="viewcode-block" id="OSCredentialsVerify"><a class="viewcode-back" href="../../../Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.OSCredentialsVerify">[docs]</a><span class="k">def</span> <span class="nf">OSCredentialsVerify</span><span class="p">(</span><span class="n">inUserStr</span><span class="p">,</span> <span class="n">inPasswordStr</span><span class="p">,</span> <span class="n">inDomainStr</span><span class="o">=</span><span class="s2">&quot;&quot;</span><span class="p">):</span> <span class="c1">##</span>
<span class="sd">&quot;&quot;&quot;</span> <span class="sd">&quot;&quot;&quot;</span>
@ -851,7 +914,7 @@
<span class="k">else</span><span class="p">:</span> <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;pyOpenRPA Exception: You can&#39;t use Orchestrator.ProcessorAliasDefUpdate with arg &#39;inDef&#39; string value. inDef is &#39;</span><span class="si">{</span><span class="n">inDef</span><span class="si">}</span><span class="s2">&#39;, inAliasStr is &#39;</span><span class="si">{</span><span class="n">inAliasStr</span><span class="si">}</span><span class="s2">&#39;&quot;</span><span class="p">)</span> <span class="k">else</span><span class="p">:</span> <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;pyOpenRPA Exception: You can&#39;t use Orchestrator.ProcessorAliasDefUpdate with arg &#39;inDef&#39; string value. inDef is &#39;</span><span class="si">{</span><span class="n">inDef</span><span class="si">}</span><span class="s2">&#39;, inAliasStr is &#39;</span><span class="si">{</span><span class="n">inAliasStr</span><span class="si">}</span><span class="s2">&#39;&quot;</span><span class="p">)</span>
<span class="k">return</span> <span class="n">inAliasStr</span></div> <span class="k">return</span> <span class="n">inAliasStr</span></div>
<div class="viewcode-block" id="ProcessorActivityItemCreate"><a class="viewcode-back" href="../../../Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorActivityItemCreate">[docs]</a><span class="k">def</span> <span class="nf">ProcessorActivityItemCreate</span><span class="p">(</span><span class="n">inDef</span><span class="p">,</span> <span class="n">inArgList</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">inArgDict</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">inArgGSettingsStr</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">inArgLoggerStr</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span> <div class="viewcode-block" id="ProcessorActivityItemCreate"><a class="viewcode-back" href="../../../Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorActivityItemCreate">[docs]</a><span class="k">def</span> <span class="nf">ProcessorActivityItemCreate</span><span class="p">(</span><span class="n">inDef</span><span class="p">,</span> <span class="n">inArgList</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">inArgDict</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">inArgGSettingsStr</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">inArgLoggerStr</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">inGUIDStr</span> <span class="o">=</span> <span class="kc">None</span><span class="p">):</span>
<span class="sd">&quot;&quot;&quot;</span> <span class="sd">&quot;&quot;&quot;</span>
<span class="sd"> Create activity item. Activity item can be used as list item in ProcessorActivityItemAppend or in Processor.ActivityListExecute.</span> <span class="sd"> Create activity item. Activity item can be used as list item in ProcessorActivityItemAppend or in Processor.ActivityListExecute.</span>
@ -905,17 +968,22 @@
<span class="sd"> :param inArgDict: Args dict for the def</span> <span class="sd"> :param inArgDict: Args dict for the def</span>
<span class="sd"> :param inArgGSettingsStr: Name of def argument of the GSettings dict</span> <span class="sd"> :param inArgGSettingsStr: Name of def argument of the GSettings dict</span>
<span class="sd"> :param inArgLoggerStr: Name of def argument of the logging object</span> <span class="sd"> :param inArgLoggerStr: Name of def argument of the logging object</span>
<span class="sd"> :param inGUIDStr: GUID which you can specify. If None the GUID will be generated</span>
<span class="sd"> :return: {}</span> <span class="sd"> :return: {}</span>
<span class="sd"> &quot;&quot;&quot;</span> <span class="sd"> &quot;&quot;&quot;</span>
<span class="c1"># Work about GUID in Activity items</span>
<span class="k">if</span> <span class="n">inGUIDStr</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
<span class="n">inGUIDStr</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">uuid</span><span class="o">.</span><span class="n">uuid4</span><span class="p">())</span> <span class="c1"># generate new GUID</span>
<span class="k">if</span> <span class="n">inArgList</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span> <span class="n">inArgList</span><span class="o">=</span><span class="p">[]</span> <span class="k">if</span> <span class="n">inArgList</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span> <span class="n">inArgList</span><span class="o">=</span><span class="p">[]</span>
<span class="k">if</span> <span class="n">inArgDict</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span> <span class="n">inArgDict</span><span class="o">=</span><span class="p">{}</span> <span class="k">if</span> <span class="n">inArgDict</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span> <span class="n">inArgDict</span><span class="o">=</span><span class="p">{}</span>
<span class="n">lActivityItemDict</span><span class="o">=</span> <span class="p">{</span> <span class="n">lActivityItemDict</span><span class="o">=</span> <span class="p">{</span>
<span class="s2">&quot;Def&quot;</span><span class="p">:</span><span class="n">inDef</span><span class="p">,</span> <span class="c1"># def link or def alias (look gSettings[&quot;Processor&quot;][&quot;AliasDefDict&quot;])</span> <span class="s2">&quot;Def&quot;</span><span class="p">:</span><span class="n">inDef</span><span class="p">,</span> <span class="c1"># def link or def alias (look gSettings[&quot;Processor&quot;][&quot;AliasDefDict&quot;])</span>
<span class="s2">&quot;ArgList&quot;</span><span class="p">:</span><span class="n">inArgList</span><span class="p">,</span> <span class="c1"># Args list</span> <span class="s2">&quot;ArgList&quot;</span><span class="p">:</span><span class="n">inArgList</span><span class="p">,</span> <span class="c1"># Args list</span>
<span class="s2">&quot;ArgDict&quot;</span><span class="p">:</span><span class="n">inArgDict</span><span class="p">,</span> <span class="c1"># Args dictionary</span> <span class="s2">&quot;ArgDict&quot;</span><span class="p">:</span><span class="n">inArgDict</span><span class="p">,</span> <span class="c1"># Args dictionary</span>
<span class="s2">&quot;ArgGSettings&quot;</span><span class="p">:</span> <span class="n">inArgGSettingsStr</span><span class="p">,</span> <span class="c1"># Name of GSettings attribute: str (ArgDict) or index (for ArgList)</span> <span class="s2">&quot;ArgGSettings&quot;</span><span class="p">:</span> <span class="n">inArgGSettingsStr</span><span class="p">,</span> <span class="c1"># Name of GSettings attribute: str (ArgDict) or index (for ArgList)</span>
<span class="s2">&quot;ArgLogger&quot;</span><span class="p">:</span> <span class="n">inArgLoggerStr</span> <span class="c1"># Name of GSettings attribute: str (ArgDict) or index (for ArgList)</span> <span class="s2">&quot;ArgLogger&quot;</span><span class="p">:</span> <span class="n">inArgLoggerStr</span><span class="p">,</span> <span class="c1"># Name of GSettings attribute: str (ArgDict) or index (for ArgList)</span>
<span class="p">}</span> <span class="s2">&quot;GUIDStr&quot;</span><span class="p">:</span> <span class="n">inGUIDStr</span>
<span class="p">}</span>
<span class="k">return</span> <span class="n">lActivityItemDict</span></div> <span class="k">return</span> <span class="n">lActivityItemDict</span></div>
<div class="viewcode-block" id="ProcessorActivityItemAppend"><a class="viewcode-back" href="../../../Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorActivityItemAppend">[docs]</a><span class="k">def</span> <span class="nf">ProcessorActivityItemAppend</span><span class="p">(</span><span class="n">inGSettings</span><span class="p">,</span> <span class="n">inDef</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">inArgList</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">inArgDict</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">inArgGSettingsStr</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">inArgLoggerStr</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">inActivityItemDict</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span> <div class="viewcode-block" id="ProcessorActivityItemAppend"><a class="viewcode-back" href="../../../Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorActivityItemAppend">[docs]</a><span class="k">def</span> <span class="nf">ProcessorActivityItemAppend</span><span class="p">(</span><span class="n">inGSettings</span><span class="p">,</span> <span class="n">inDef</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">inArgList</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">inArgDict</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">inArgGSettingsStr</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">inArgLoggerStr</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">inActivityItemDict</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
@ -980,6 +1048,14 @@
<span class="p">]</span> <span class="p">]</span>
<span class="k">else</span><span class="p">:</span> <span class="k">else</span><span class="p">:</span>
<span class="n">lActivityList</span> <span class="o">=</span> <span class="p">[</span><span class="n">inActivityItemDict</span><span class="p">]</span> <span class="n">lActivityList</span> <span class="o">=</span> <span class="p">[</span><span class="n">inActivityItemDict</span><span class="p">]</span>
<span class="c1"># Work about GUID in Activity items</span>
<span class="k">for</span> <span class="n">lItemDict</span> <span class="ow">in</span> <span class="n">lActivityList</span><span class="p">:</span>
<span class="c1"># Add GUIDStr if not exist</span>
<span class="n">lGUIDStr</span> <span class="o">=</span> <span class="kc">None</span>
<span class="k">if</span> <span class="s2">&quot;GUIDStr&quot;</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">lItemDict</span><span class="p">:</span>
<span class="n">lGUIDStr</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">uuid</span><span class="o">.</span><span class="n">uuid4</span><span class="p">())</span> <span class="c1"># generate new GUID</span>
<span class="n">lItemDict</span><span class="p">[</span><span class="s2">&quot;GUIDStr&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="n">lGUIDStr</span>
<span class="c1"># Add activity list in ProcessorDict</span>
<span class="n">inGSettings</span><span class="p">[</span><span class="s2">&quot;ProcessorDict&quot;</span><span class="p">][</span><span class="s2">&quot;ActivityList&quot;</span><span class="p">]</span><span class="o">+=</span><span class="n">lActivityList</span></div> <span class="n">inGSettings</span><span class="p">[</span><span class="s2">&quot;ProcessorDict&quot;</span><span class="p">][</span><span class="s2">&quot;ActivityList&quot;</span><span class="p">]</span><span class="o">+=</span><span class="n">lActivityList</span></div>
<span class="c1">## Process defs</span> <span class="c1">## Process defs</span>
@ -2045,6 +2121,11 @@
<span class="n">lProcessorThread</span><span class="o">.</span><span class="n">start</span><span class="p">()</span> <span class="c1"># Start the thread execution.</span> <span class="n">lProcessorThread</span><span class="o">.</span><span class="n">start</span><span class="p">()</span> <span class="c1"># Start the thread execution.</span>
<span class="k">if</span> <span class="n">lL</span><span class="p">:</span> <span class="n">lL</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s2">&quot;Processor has been started (ProcessorDict)&quot;</span><span class="p">)</span> <span class="c1">#Logging</span> <span class="k">if</span> <span class="n">lL</span><span class="p">:</span> <span class="n">lL</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s2">&quot;Processor has been started (ProcessorDict)&quot;</span><span class="p">)</span> <span class="c1">#Logging</span>
<span class="c1"># Processor monitor thread</span>
<span class="n">lProcessorMonitorThread</span> <span class="o">=</span> <span class="n">threading</span><span class="o">.</span><span class="n">Thread</span><span class="p">(</span><span class="n">target</span><span class="o">=</span> <span class="n">Processor</span><span class="o">.</span><span class="n">ProcessorMonitorRunSync</span><span class="p">,</span> <span class="n">kwargs</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;inGSettings&quot;</span><span class="p">:</span><span class="n">gSettingsDict</span><span class="p">})</span>
<span class="n">lProcessorMonitorThread</span><span class="o">.</span><span class="n">daemon</span> <span class="o">=</span> <span class="kc">True</span> <span class="c1"># Run the thread in daemon mode.</span>
<span class="n">lProcessorMonitorThread</span><span class="o">.</span><span class="n">start</span><span class="p">()</span> <span class="c1"># Start the thread execution.</span>
<span class="k">if</span> <span class="n">lL</span><span class="p">:</span> <span class="n">lL</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s2">&quot;Processor monitor has been started&quot;</span><span class="p">)</span> <span class="c1">#Logging</span>
<span class="k">if</span> <span class="n">lL</span><span class="p">:</span> <span class="n">lL</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s2">&quot;Scheduler loop start&quot;</span><span class="p">)</span> <span class="c1">#Logging</span> <span class="k">if</span> <span class="n">lL</span><span class="p">:</span> <span class="n">lL</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s2">&quot;Scheduler loop start&quot;</span><span class="p">)</span> <span class="c1">#Logging</span>
<span class="n">gDaemonActivityLogDictRefreshSecInt</span> <span class="o">=</span> <span class="mi">10</span> <span class="c1"># The second period for clear lDaemonActivityLogDict from old items</span> <span class="n">gDaemonActivityLogDictRefreshSecInt</span> <span class="o">=</span> <span class="mi">10</span> <span class="c1"># The second period for clear lDaemonActivityLogDict from old items</span>

@ -202,15 +202,21 @@
</li> </li>
<li><a href="Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.AgentActivityItemReturnGet">AgentActivityItemReturnGet() (in module pyOpenRPA.Orchestrator.__Orchestrator__)</a> <li><a href="Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.AgentActivityItemReturnGet">AgentActivityItemReturnGet() (in module pyOpenRPA.Orchestrator.__Orchestrator__)</a>
</li> </li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSCMD">AgentOSCMD() (in module pyOpenRPA.Orchestrator.__Orchestrator__)</a> <li><a href="Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSCMD">AgentOSCMD() (in module pyOpenRPA.Orchestrator.__Orchestrator__)</a>
</li> </li>
<li><a href="Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBase64StrCreate">AgentOSFileBinaryDataBase64StrCreate() (in module pyOpenRPA.Orchestrator.__Orchestrator__)</a> <li><a href="Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBase64StrCreate">AgentOSFileBinaryDataBase64StrCreate() (in module pyOpenRPA.Orchestrator.__Orchestrator__)</a>
</li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
<li><a href="Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBase64StrReceive">AgentOSFileBinaryDataBase64StrReceive() (in module pyOpenRPA.Orchestrator.__Orchestrator__)</a>
</li> </li>
<li><a href="Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBytesCreate">AgentOSFileBinaryDataBytesCreate() (in module pyOpenRPA.Orchestrator.__Orchestrator__)</a> <li><a href="Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBytesCreate">AgentOSFileBinaryDataBytesCreate() (in module pyOpenRPA.Orchestrator.__Orchestrator__)</a>
</li> </li>
<li><a href="Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileTextDataStrCreate">AgentOSFileTextDataStrCreate() (in module pyOpenRPA.Orchestrator.__Orchestrator__)</a> <li><a href="Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileTextDataStrCreate">AgentOSFileTextDataStrCreate() (in module pyOpenRPA.Orchestrator.__Orchestrator__)</a>
</li>
<li><a href="Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileTextDataStrReceive">AgentOSFileTextDataStrReceive() (in module pyOpenRPA.Orchestrator.__Orchestrator__)</a>
</li>
<li><a href="Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.AgentProcessWOExeUpperUserListGet">AgentProcessWOExeUpperUserListGet() (in module pyOpenRPA.Orchestrator.__Orchestrator__)</a>
</li> </li>
</ul></td> </ul></td>
</tr></table> </tr></table>
@ -270,6 +276,12 @@
<li><a href="Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.OSCredentialsVerify">OSCredentialsVerify() (in module pyOpenRPA.Orchestrator.__Orchestrator__)</a> <li><a href="Orchestrator/02_Defs.html#pyOpenRPA.Orchestrator.__Orchestrator__.OSCredentialsVerify">OSCredentialsVerify() (in module pyOpenRPA.Orchestrator.__Orchestrator__)</a>
</li> </li>
<li><a href="Agent/02_Defs.html#pyOpenRPA.Agent.__Agent__.OSFileBinaryDataBase64StrCreate">OSFileBinaryDataBase64StrCreate() (in module pyOpenRPA.Agent.__Agent__)</a> <li><a href="Agent/02_Defs.html#pyOpenRPA.Agent.__Agent__.OSFileBinaryDataBase64StrCreate">OSFileBinaryDataBase64StrCreate() (in module pyOpenRPA.Agent.__Agent__)</a>
</li>
<li><a href="Agent/02_Defs.html#pyOpenRPA.Agent.__Agent__.OSFileBinaryDataBase64StrReceive">OSFileBinaryDataBase64StrReceive() (in module pyOpenRPA.Agent.__Agent__)</a>
</li>
<li><a href="Agent/02_Defs.html#pyOpenRPA.Agent.__Agent__.OSFileTextDataStrCreate">OSFileTextDataStrCreate() (in module pyOpenRPA.Agent.__Agent__)</a>
</li>
<li><a href="Agent/02_Defs.html#pyOpenRPA.Agent.__Agent__.OSFileTextDataStrReceive">OSFileTextDataStrReceive() (in module pyOpenRPA.Agent.__Agent__)</a>
</li> </li>
</ul></td> </ul></td>
</tr></table> </tr></table>

Binary file not shown.

File diff suppressed because one or more lines are too long

@ -14,9 +14,24 @@
| Create binary file by the base64 string (safe for JSON transmition) | Create binary file by the base64 string (safe for JSON transmition)
| |
| `OSFileBinaryDataBase64StrReceive`(inFilePathStr)
| Read binary file and encode in base64 to transmit (safe for JSON transmition)
|
| `OSFileTextDataStrCreate`(inFilePathStr, …)
| Create text file in the agent GUI session
|
| `OSFileTextDataStrReceive`(inFilePathStr[, …])
| Read text file in the agent GUI session
|
| `ProcessWOExeUpperUserListGet`() | `ProcessWOExeUpperUserListGet`()
| Return the process list only for the current user (where Agent is running) without .EXE in upper case. | Return the process list only for the current user (where Agent is running) without .EXE in upper case.
| |
@ -48,6 +63,74 @@ Execute CMD on the Agent daemonic process
Create binary file by the base64 string (safe for JSON transmition) Create binary file by the base64 string (safe for JSON transmition)
### pyOpenRPA.Agent.__Agent__.OSFileBinaryDataBase64StrReceive(inFilePathStr, inGSettings=None)
Read binary file and encode in base64 to transmit (safe for JSON transmition)
* **Parameters**
* **inFilePathStr** File path to read
* **inGSettings** global settings of the Agent (singleton)
* **Returns**
File content in string base64 format (use base64.b64decode to decode data). Return None if file is not exist
### pyOpenRPA.Agent.__Agent__.OSFileTextDataStrCreate(inFilePathStr, inFileDataStr, inEncodingStr='utf-8', inGSettings=None)
Create text file in the agent GUI session
* **Parameters**
* **inFilePathStr** File abs path
* **inFileDataStr** File data text content
* **inEncodingStr** Write file encoding
* **inGSettings** global settings of the Agent (singleton)
* **Returns**
### pyOpenRPA.Agent.__Agent__.OSFileTextDataStrReceive(inFilePathStr, inEncodingStr='utf-8', inGSettings=None)
Read text file in the agent GUI session
* **Parameters**
* **inFilePathStr** File abs path
* **inEncodingStr** Read file encoding. Default utf-8
* **inGSettings** global settings of the Agent (singleton)
* **Returns**
File text content in string format (use base64.b64decode to decode data). Return None if file is not exist
### pyOpenRPA.Agent.__Agent__.ProcessWOExeUpperUserListGet() ### pyOpenRPA.Agent.__Agent__.ProcessWOExeUpperUserListGet()
Return the process list only for the current user (where Agent is running) without .EXE in upper case. Can use in ActivityItem from Orchestrator to Agent Return the process list only for the current user (where Agent is running) without .EXE in upper case. Can use in ActivityItem from Orchestrator to Agent

@ -61,37 +61,52 @@ Work with activity scheduling.
| |
| `AgentActivityItemReturnExists`(inGSettings, …) | `AgentActivityItemReturnExists`(inGSettings, …)
| Check by GUID if ActivityItem has been executed and result has come to the Orchestrator | Check by GUID if ActivityItem has been executed and result has come to the Orchestrator
| |
| `AgentActivityItemReturnGet`(inGSettings, …) | `AgentActivityItemReturnGet`(inGSettings, …)
| Work synchroniously! Wait while result will be recieved. | Work synchroniously! Wait while result will be recieved.
| |
| `AgentOSCMD`(inGSettings, inHostNameStr, …) | `AgentOSCMD`(inGSettings, inHostNameStr, …)
| Send CMD to OS thought the pyOpenRPA.Agent daemon. | Send CMD to OS thought the pyOpenRPA.Agent daemon.
| |
| `AgentOSFileBinaryDataBase64StrCreate`(…) | `AgentOSFileBinaryDataBase64StrCreate`(…)
| Create binary file by the base64 string by the pyOpenRPA.Agent daemon process (safe for JSON transmission) | Create binary file by the base64 string by the pyOpenRPA.Agent daemon process (safe for JSON transmission)
| |
| `AgentOSFileBinaryDataBase64StrReceive`(…)
| Read binary file and encode in base64 to transmit (safe for JSON transmition)
|
| `AgentOSFileBinaryDataBytesCreate`(…) | `AgentOSFileBinaryDataBytesCreate`(…)
| Create binary file by the base64 string by the pyOpenRPA.Agent daemon process (safe for JSON transmition) | Create binary file by the base64 string by the pyOpenRPA.Agent daemon process (safe for JSON transmition)
| |
| `AgentOSFileTextDataStrCreate`(inGSettings, …) | `AgentOSFileTextDataStrCreate`(inGSettings, …)
| Create text file by the string by the pyOpenRPA.Agent daemon process | Create text file by the string by the pyOpenRPA.Agent daemon process
| |
| `AgentOSFileTextDataStrReceive`(inGSettings, …)
| Read text file in the agent GUI session
|
| `AgentProcessWOExeUpperUserListGet`(…)
| Return the process list only for the current user (where Agent is running) without .EXE in upper case.
|
| `GSettingsAutocleaner`(inGSettings) | `GSettingsAutocleaner`(inGSettings)
| HIDDEN Interval gSettings auto cleaner def to clear some garbage. | HIDDEN Interval gSettings auto cleaner def to clear some garbage.
| |
| `GSettingsKeyListValueAppend`(inGSettings, inValue) | `GSettingsKeyListValueAppend`(inGSettings, inValue)
@ -445,6 +460,32 @@ Create binary file by the base64 string by the pyOpenRPA.Agent daemon process (s
### pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBase64StrReceive(inGSettings, inHostNameStr, inUserStr, inFilePathStr)
Read binary file and encode in base64 to transmit (safe for JSON transmition)
* **Parameters**
* **inGSettings** Global settings dict (singleton)
* **inHostNameStr**
* **inUserStr**
* **inFilePathStr** File path to read
* **Returns**
GUID String of the ActivityItem - you can wait (sync or async) result by this guid!
### pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBytesCreate(inGSettings, inHostNameStr, inUserStr, inFilePathStr, inFileDataBytes) ### pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileBinaryDataBytesCreate(inGSettings, inHostNameStr, inUserStr, inFilePathStr, inFileDataBytes)
Create binary file by the base64 string by the pyOpenRPA.Agent daemon process (safe for JSON transmition) Create binary file by the base64 string by the pyOpenRPA.Agent daemon process (safe for JSON transmition)
@ -506,6 +547,58 @@ Create text file by the string by the pyOpenRPA.Agent daemon process
### pyOpenRPA.Orchestrator.__Orchestrator__.AgentOSFileTextDataStrReceive(inGSettings, inHostNameStr, inUserStr, inFilePathStr, inEncodingStr='utf-8')
Read text file in the agent GUI session
* **Parameters**
* **inGSettings** Global settings dict (singleton)
* **inHostNameStr**
* **inUserStr**
* **inFilePathStr** File path to read
* **inEncodingStr** Text file encoding. Default utf-8
* **Returns**
GUID String of the ActivityItem - you can wait (sync or async) result by this guid!
### pyOpenRPA.Orchestrator.__Orchestrator__.AgentProcessWOExeUpperUserListGet(inGSettings, inHostNameStr, inUserStr)
Return the process list only for the current user (where Agent is running) without .EXE in upper case. Can use in ActivityItem from Orchestrator to Agent
* **Parameters**
* **inGSettings** Global settings dict (singleton)
* **inHostNameStr**
* **inUserStr**
* **Returns**
GUID String of the ActivityItem - you can wait (sync or async) result by this guid!
### pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsAutocleaner(inGSettings) ### pyOpenRPA.Orchestrator.__Orchestrator__.GSettingsAutocleaner(inGSettings)
HIDDEN Interval gSettings auto cleaner def to clear some garbage. HIDDEN Interval gSettings auto cleaner def to clear some garbage.
@ -962,7 +1055,7 @@ Orchestrator.ProcessorActivityItemAppend(
### pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorActivityItemCreate(inDef, inArgList=None, inArgDict=None, inArgGSettingsStr=None, inArgLoggerStr=None) ### pyOpenRPA.Orchestrator.__Orchestrator__.ProcessorActivityItemCreate(inDef, inArgList=None, inArgDict=None, inArgGSettingsStr=None, inArgLoggerStr=None, inGUIDStr=None)
Create activity item. Activity item can be used as list item in ProcessorActivityItemAppend or in Processor.ActivityListExecute. Create activity item. Activity item can be used as list item in ProcessorActivityItemAppend or in Processor.ActivityListExecute.
``` ```
@ -1029,6 +1122,9 @@ lActivityItem = Orchestrator.ProcessorActivityItemCreate(
* **inArgLoggerStr** Name of def argument of the logging object * **inArgLoggerStr** Name of def argument of the logging object
* **inGUIDStr** GUID which you can specify. If None the GUID will be generated
* **Returns** * **Returns**

@ -191,7 +191,8 @@ def __Create__():
"AliasDefDict": {}, # Storage for def with Str alias. To use it see pyOpenRPA.Orchestrator.ControlPanel "AliasDefDict": {}, # Storage for def with Str alias. To use it see pyOpenRPA.Orchestrator.ControlPanel
"CheckIntervalSecFloat": 1.0, # Interval for check gSettings in ProcessorDict > ActivityList "CheckIntervalSecFloat": 1.0, # Interval for check gSettings in ProcessorDict > ActivityList
"ExecuteBool": True, # Flag to execute thread processor "ExecuteBool": True, # Flag to execute thread processor
"ThreadIdInt": None # Technical field - will be setup when processor init "ThreadIdInt": None, # Technical field - will be setup when processor init
"WarningExecutionMoreThanSecFloat": 60.0 # Push warning if execution more than n seconds
}, },
"ControlPanelDict": { # Old structure > CPDict "ControlPanelDict": { # Old structure > CPDict
"RefreshSeconds": 5, # deprecated parameter "RefreshSeconds": 5, # deprecated parameter

Loading…
Cancel
Save