"},"latest release date":{"wt":"2023-09-14"},"operating system":{"wt":"[[Microsoft Windows]]"},"programming_language":{"wt":"[[Python (programming language)|Python]]"},"genre":{"wt":"[[System monitor|IT monitoring]],[[Synthetic monitoring]] and [[Application performance management]]"},"license":{"wt":"[[GNU General Public License|GNU GPL]] v3"},"website":{"wt":"{{URL|https://alyvix.com}}"},"screenshot":{"wt":"Alyvix screenshot.png"}},"i":0}}]}" id="mwBg">.mw-parser-output .infobox-subbox{padding:0;border:none;margin:-3px;width:auto;min-width:100%;font-size:100%;clear:none;float:none;background-color:transparent}.mw-parser-output .infobox-3cols-child{margin:auto}.mw-parser-output .infobox .navbar{font-size:100%}@media screen{html.skin-theme-clientpref-night .mw-parser-output .infobox-full-data:not(.notheme)>div:not(.notheme)[style]{background:#1f1f23!important;color:#f8f9fa}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .infobox-full-data:not(.notheme) div:not(.notheme){background:#1f1f23!important;color:#f8f9fa}}@media(min-width:640px){body.skin--responsive .mw-parser-output .infobox-table{display:table!important}body.skin--responsive .mw-parser-output .infobox-table>caption{display:table-caption!important}body.skin--responsive .mw-parser-output .infobox-table>tbody{display:table-row-group}body.skin--responsive .mw-parser-output .infobox-table tr{display:table-row!important}body.skin--responsive .mw-parser-output .infobox-table th,body.skin--responsive .mw-parser-output .infobox-table td{padding-left:inherit;padding-right:inherit}}
Developer(s) | Violet Atom Sagl (Alan Pipitone) and Würth Phoenix Srl (Francesco Melchiori) |
---|---|
Initial release | Version 3.0 2020 |
Stable release | 3.5.0 [1] / 2023-09-14 |
Written in | Python |
Operating system | Microsoft Windows |
Type | IT monitoring, Synthetic monitoring and Application performance management |
License | GNU GPL v3 |
Website | alyvix |
Alyvix is an open source [2] [3] software application developed in Python for System monitoring and IT monitoring, synthetic monitoring and application performance management on Windows computers. It is used for visually monitoring fixed applications, streamed and cloud [1] applications (including encrypted ones [4] ), and websites, as well as for robotic process automation.
Alyvix allows you to interact with an application's graphical user interface (GUI) to describe what should be seen onscreen after a sequence of interactions, and then later compare it whenever desired to the current GUI in that state.
Alyvix works in two main stages: GUI description, and interactive GUI replay. In the description phase (using Alyvix Editor), Alyvix captures the screen and then allows the user to describe what to look for, [5] such as images, text labels, buttons and text fields, by drawing and annotating directly on the screen capture.
The user then combines these elements with a visual scripting language Visual programming language that describes a sequence of desired interaction steps (for instance, clicking on one of the buttons, or inserting a predefined string into one of the text fields) and how those steps proceed from one to the next, along with the original series of screen grabs. This description is then saved in an open format called a test case.
Once this test case is created, Alyvix can use it to interactively replay that application interaction description as many times as you want while the application is "live". In this mode (called Alyvix Robot), Alyvix attempts to visually recognize [6] what is shown in the GUI at a particular moment using the open source OpenCV recognizer. It then cycles through the recognition and interaction phases, applying the user-defined actions in the current step to the interface it sees.
While up to this point Alyvix can be used for automation, it also allows you to declare warning and critical thresholds that are useful for monitoring, based on visual recognition timeouts. When a timeout is exceeded, it can then be reported to a monitoring system using the Nagios and Icinga [7] protocols.
While Alyvix Robot can run a script to make a single check, what's usually needed in monitoring scenarios is to run many such checks at regular intervals, say every 5 minutes. Thus Alyvix needs to integrate with a monitoring system, which may not be open source. Coordinating this integration is Alyvix Service, which schedules test case runs over multiple target servers, manages configuration settings like how often to run each test case, records the measurements made by Alyvix Robot, and provides that data and reports via an open API. Any monitoring system, like NetEye, only needs to add a module that calls the open API as necessary.
In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur. The goal of this interaction is to allow effective operation and control of the machine from the human end, while the machine simultaneously feeds back information that aids the operators' decision-making process. Examples of this broad concept of user interfaces include the interactive aspects of computer operating systems, hand tools, heavy machinery operator controls and process controls. The design considerations applicable when creating user interfaces are related to, or involve such disciplines as, ergonomics and psychology.
In computing, cross-platform software is computer software that is designed to work in several computing platforms. Some cross-platform software requires a separate build for each platform, but some can be directly run on any platform without special preparation, being written in an interpreted language or compiled to portable bytecode for which the interpreters or run-time packages are common or standard components of all supported platforms.
A screen reader is a form of assistive technology (AT) that renders text and image content as speech or braille output. Screen readers are essential to people who are blind, and are useful to people who are visually impaired, illiterate, or have a learning disability. Screen readers are software applications that attempt to convey what people with normal eyesight see on a display to their users via non-visual means, like text-to-speech, sound icons, or a braille device. They do this by applying a wide variety of techniques that include, for example, interacting with dedicated accessibility APIs, using various operating system features, and employing hooking techniques.
In computing, a visual programming language, also known as diagrammatic programming, graphical programming or block coding, is a programming language that lets users create programs by manipulating program elements graphically rather than by specifying them textually. A VPL allows programming with visual expressions, spatial arrangements of text and graphic symbols, used either as elements of syntax or secondary notation. For example, many VPLs are based on the idea of "boxes and arrows", where boxes or other screen objects are treated as entities, connected by arrows, lines or arcs which represent relations. VPLs are generally the basis of low-code development platforms.
Web development is the work involved in developing a website for the Internet or an intranet. Web development can range from developing a simple single static page of plain text to complex web applications, electronic businesses, and social network services. A more comprehensive list of tasks to which Web development commonly refers, may include Web engineering, Web design, Web content development, client liaison, client-side/server-side scripting, Web server and network security configuration, and e-commerce development.
A graphical widget in a graphical user interface is an element of interaction, such as a button or a scroll bar. Controls are software components that a computer user interacts with through direct manipulation to read or edit information about an application. User interface libraries such as Windows Presentation Foundation, Qt, GTK, and Cocoa, contain a collection of controls and the logic to render these.
Windows Forms (WinForms) is a free and open-source graphical (GUI) class library included as a part of Microsoft .NET, .NET Framework or Mono, providing a platform to write client applications for desktop, laptop, and tablet PCs. While it is seen as a replacement for the earlier and more complex C++ based Microsoft Foundation Class Library, it does not offer a comparable paradigm and only acts as a platform for the user interface tier in a multi-tier solution.
Nagios is an event monitoring system that offers monitoring and alerting services for servers, switches, applications and services. It alerts users when things go wrong and alerts them a second time when the problem has been resolved.
In software testing, test automation is the use of software separate from the software being tested to control the execution of tests and the comparison of actual outcomes with predicted outcomes. Test automation can automate some repetitive but necessary tasks in a formalized testing process already in place, or perform additional testing that would be difficult to do manually. Test automation is critical for continuous delivery and continuous testing.
Microsoft Active Accessibility (MSAA) is an application programming interface (API) for user interface accessibility. MSAA was introduced as a platform add-on to Microsoft Windows 95 in 1997. MSAA is designed to help Assistive Technology (AT) products interact with standard and custom user interface (UI) elements of an application, as well as to access, identify, and manipulate an application's UI elements. AT products work with MSAA enabled applications in order to provide better access for individuals who have physical or cognitive difficulties, impairments, or disabilities. Some examples of AT products are screen readers for users with limited sight, on screen keyboards for users with limited physical access, or narrators for users with limited hearing. MSAA can also be used for automated testing tools, and computer-based training applications.
The Apple Developer Tools are a suite of software tools from Apple to aid in making software dynamic titles for the macOS and iOS platforms. The developer tools were formerly included on macOS install media, but are now exclusively distributed over the Internet. As of MacOS 14.6.1, Xcode is available as a free download from the Mac App Store.
NonVisual Desktop Access (NVDA) is a free and open-source, portable screen reader for Microsoft Windows. The project was started by Michael Curran in 2006.
Microsoft UI Automation (UIA) is an application programming interface (API) that allows one to access, identify, and manipulate the user interface (UI) elements of another application.
API testing is a type of software testing that involves testing application programming interfaces (APIs) directly and as part of integration testing to determine if they meet expectations for functionality, reliability, performance, and security. Since APIs lack a GUI, API testing is performed at the message layer. API testing is now considered critical for automating testing because APIs serve as the primary interface to application logic and because GUI tests are difficult to maintain with the short release cycles and frequent changes commonly used with Agile software development and DevOps.
Shinken is an open source computer system and network monitoring software application compatible with Nagios. It watches hosts and services, gathers performance data and alerts users when error conditions occur and again when the conditions clear.
Icinga is an open-source computer system and network monitoring application. It was created as a fork of the Nagios system monitoring application in 2009.
Checkmk is a software system developed in Python and C++ for IT Infrastructure monitoring. It is used for the monitoring of servers, applications, networks, cloud infrastructures, containers, storage, databases and environment sensors.
Data scraping is a technique where a computer program extracts data from human-readable output coming from another program.
Asynchronous multi-body framework (AMBF) is an open-source 3D versatile simulator for robots developed in April 2019. This multi-body framework provides a real-time dynamic simulation of multi-bodies such as robots, free bodies, and multi-link puzzles, paired with real-time haptic interaction with various input devices. The framework integrates a real surgeon master console, haptic or not, to control simulated robots in real-time. This feature results in the simulator being used in real-time training applications for surgical and non-surgical tasks. It offers the possibility to interact with soft bodies to simulate surgical tasks where tissues are subject to deformations. It also provides a Python Client to interact easily with the simulated bodies and train neural networks on real-time data with in-loop simulation. It includes a wide range of robots, grippers, sensors, puzzles, and soft bodies. Each simulated object is represented as an afObject; likewise, the simulation world is represented as an afWorld. Both utilize two communication interfaces: state and command. Through the State command, the object can send data outside the simulation environment, while the Command allows to apply commands to the underlying afObject.