You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ORPA-pyOpenRPA/changelog.md

118 lines
7.2 KiB

[1.2.0]
!Orchestrator!
- Consolidated processor from old orchestrator and from RDPActive processor (one threaded). Look in GSettings
- - Support old orchestrator structure Processor.
- - - Create BackwardCompatibility def to update structure from old to new processor
- - Support orchestrator start
- - Support scheduler
- - Support old items
- Backward compatibility from 1.1.13
- Add ArgLogger key in Processor struct item
- Old function will be tranformated in Orchestrator defs (from pyOpenRPA.Orchestrator import Orchestrator):
- - def OSCredentialsVerify(inUserStr, inPasswordStr, inDomainStr=""): ## Verify credentials in windows
- - def OSCMD(inCMDStr): ## OS send command in shell locally
- - def OrchestratorRestart(inGSettings=None): ## Orchestrator restart
- - def OrchestratorSessionSave(inGSettings=None): ## Orchestrator session save
- - def GSettingsKeyListValueSet(inGSettings, inValue, inKeyList=[]): # Set value in GSettings by the key list
- - def GSettingsKeyListValueAppend(inGSettings, inValue, inKeyList=[]): # Append value in GSettings by the key list
- - def GSettingsKeyListValueOperatorPlus(inGSettings, inValue, inKeyList=[]): # Operator plus value in GSettings by the key list
- - def GSettingsKeyListValueGet(inGSettings, inKeyList=[]): # Get the value from the GSettings by the key list
- - def ProcessIsStarted(inProcessNameWOExeStr): # Check if process is started
- - def ProcessStart(inPathStr, inArgList, inStopProcessNameWOExeStr=None): # Start process locally [optional: if task name is not started]
- - def ProcessStop(inProcessNameWOExeStr, inCloseForceBool, inUserNameStr = "%username%"): # Stop process
- - def PythonStart(inModulePathStr, inDefNameStr, inArgList=[], inArgDict={}, inLogger = None): # Python import module and start def
- - Add pyOpenRPA.Orchestrator.Core module technical defs
- - - def IsProcessorThread() return True or False
- Orchestrator WEB fix: Don't request screenshot if no modal is active in front
- Add Version field in Orchestrator back + front
- Add front autorefresh if front/back pyOpenRPA versions are differs (see CP_VersionCheck.py)
- Add absolute/relative import for the control panels
- Add new Orchestrator defs:
- - def OrchestratorUACUpdate(inGSettings, inADLoginStr, inADStr="", inADIsDefaultBool=True, inURLList=[], inCPAllowKeyList=[]): - Update user access
- - def OrchestratorUACSuperTokenUpdate(inGSettings, inSuperTokenStr): # Add supertoken for the all access (it is need for the robot communication without human)
- Create Web HTML / JS generators [pyOpenRPA.Orchestrator.Web.Basic]
- - def JSEscapeForHTMLInline(inJSStr): # Escape JS to the safe JS for the inline JS in HTML tags ATTENTION! Use it only if want to paste JS into HTML tag - not in <script>
- - def HTMLLinkURL(inURLStr, inTitleStr=None, inColorStr=None): # Generate HTML code of the simple URL link by the URL
- - def HTMLLinkJSOnClick(inJSOnClickStr, inTitleStr, inColorStr=None): # Generate HTML code of the simple URL link by the JS when onclick
- Add URL "/pyOpenRPA/ServerData" - consolidated function - in test
- Create new support - CP def can return {"CPKeyStr":{"HTMLStr":"", DataDict:{}}}
- Create CP 2 HTML generator for the backward compatibility
- Orchestrator WEB GUI update - Administrator mode - add log view - in progress
- - Add Server def /pyOpenRPA/ServerLogs
- - Create logger handler for the Client DumpLog
- Create /pyOpenRPA/ActivityListExecute
- Create /pyOpenRPA/Processor
- Orchestrator.OSCMD Listen output and send to logger
- Orchestrator.OSCMD Add 2 input args inLogger + inRunAsyncBool
- WEB Update CMD Input line (tranfer to Log view). Change /Utils/Processor to /pyOpenRPA/ActivityListExecute
- Defs has been added in ProcessorAliasDict as Alias with own def name
- WEB Remove client freeze when back is
- Create new pyOpenRPA UAC Client hierarchy SettingsTemplate.__UACClientAdminCreate__ - need to update functionallity
- Orchestrator WEB: Update WEB to the new UACClient
- Create pyOpenRPA.Agent - just prototype, need test
- Create Agent support in Orchestrator (/pyOpenRPA/Agent/O2A and /pyOpenRPA/Agent/A2O)
- Orch: /pyOpenRPA/ServerData - add sub dict "AgentDict"
- Orch WEB: Create Agent render
- Orch web: Fix eror in serverDataRender when error render
- Agent: Add CMD to kill agent because it is in background mode
- Orch: Add handler to set connection when Agent listen orch (/pyOpenRPA/Agent/O2A)
- Orch start processor Dict in own thread (Processor.ProcessorRunSync(inGSettings))
- Agent: Create Processor in Agent similarly to Orchestrator (pyOpenRPA.Agent.Processor == pyOpenRPA.Orchestrator.Processor)
- Agent: Add Agent defs as Alias in ProcessorDict
- Agent Add 2 defs:
- - def OSFileTextDataStrCreate(inFilePathStr, inFileDataStr, inEncodingStr = "utf-8",inGSettings = None): # Create text file by the string
- - def OSFileBinaryDataBase64StrCreate(inFilePathStr, inFileDataBase64Str,inGSettings = None): # Create binary file by the base64 string (safe for JSON transmition)
- - def OSCMD(inCMDStr, inRunAsyncBool=True, inGSettings = None): # Send CMD to OS. Result return to log + Orchestrator by the A2O connection
- Orc: Add Agent Defs
- - def AgentActivityItemAdd(inGSettings, inHostNameStr, inUserStr, inActivityItemDict): # Add activity in AgentDict
- - def AgentOSCMD(inGSettings, inHostNameStr, inUserStr, inCMDStr): # Send to agent activity item to OSCMD
- - def AgentOSFileBinaryDataBytesCreate(inGSettings, inHostNameStr, inUserStr, inFilePathStr, inFileDataBytes): # Send binary file to Agent (Bytes)
- - def AgentOSFileBinaryDataBase64StrCreate(inGSettings, inHostNameStr, inUserStr, inFilePathStr, inFileDataBase64Str): # Send binary file to Agent (base64 string)
- - def AgentOSFileTextDataStrCreate(inGSettings, inHostNameStr, inUserStr, inFilePathStr, inFileDataStr, inEncodingStr = "utf-8"): # Send text file to Agent (string)
- Orc WEB: Create mGlobal.pyOpenRPA.ActivityListExecute({}) to test some activities from the front
[1.1.0]
After 2 month test prefinal with new improovements (+RobotRDPActive in Orchestrator + Easy ControlPanelTemplate)
Beta before 1.1.0 (new way of OpenRPA with improvements. Sorry, but no backward compatibility)/ Backward compatibility will start from 1.0.1
[1.0.37]
Minor fix in RobotRDPActive
[1.0.33]
Menu changes - look git
5 years ago
[1.0.31]
Orchestrator new engine - test 2 is ready. Go to PIP
[1.0.30]
RobotScreenActive - robot, which monitor the active screen and run Console session if screen disappear
[1.0.29]
RobotRDPActive minor Fix in str conv
[1.0.28]
RobotRDPActive first version is ready!
[1.0.26]
Robot UIDesktop bug fix in Safe other process function
[1.0.25]
*Dont upload to PyPi* - Not tested
Created safe call function in UIDesktop
UIOSelector_SafeOtherGet_Process
Safe call in UIDesktop for:
- UIOSelectorUIOActivity_Run_Dict
- UIOSelector_Exist_Bool
- UIOSelector_Highlight
- UIOSelector_FocusHighlight
- UIOSelector_SearchChildByMouse_UIOTree
- UIOSelector_GetChildList_UIOList
- UIOSelector_Get_UIOInfoList
- UIOSelector_Get_UIOInfo
- UIOSelector_Get_UIOActivityList
UIOSelectorSecs_WaitAppear_Bool
UIOSelectorSecs_WaitDisappear_Bool
UIOSelectorsSecs_WaitAppear_List
UIOSelectorsSecs_WaitDisappear_List
[1.0.24]
1.0.1 Beta
Refactoring (Studio Orchestrator in pyOpenRPA package)
[1.0.22]
1.0.1 Beta
[1.0.19]
MinorFix in pyOpenRPA.Core
[1.0.18]
MinorFix in pyOpenRPA.Core