Is it possible to detect a notification or change in an application?

I'm looking to create a macro for MakeMKV that will automatically move the mouse to the eject button and hit eject when the disk is completed ripping. Is there anyway for a notification or sudden change in an app trigger a macro?

I looked into this a few years ago and there was no good way to get a notification from the app when it was done.

The generally recommended automation approach was to use the command-line tool instead of the GUI app.

See https://www.makemkv.com/developers/usage.txt for details.

For this sort of thing you may be able to use a Menu condition or a Found Image condition.

Since you probably do not need a quick response to the completion, and you don't want to use a lot of CPU, rather than:

Do something like:

I use a similar sort of thing to press the “Finish Scanning” button when the scanner is finished scanning my page. In this case, I use the Button condition, and since I don't much care about the CPU for that period of time, I just use the Pause Until action.

image

Look at the available Conditions to see if any of them can be used to detect the completion.

2 Likes

I like this design pattern, even if you need to reduce the Pause down to1 second. That is still much less processing intensive than a Pause Until Found Image condition is true, which I would assume is scanning the screen a thousand times a second (or more).

1 Like

At most 1000 times per second, but in practice, simply sequentially continuously, since it takes longer than 0.001 seconds to do an expensive test like finding an image (unless the search area was very small). In any event, yes, absolutely, instead of using pretty much all available CPU, it trades a delay at the end for significantly less CPU usage.