first, if you wanted to continue using a scheduled trigger, I would recommend to use the built-in time conditions, as describe here: How to setup and use time conditions
But as you already mentioned, you can do this even better without a scheduled trigger.
You can mark the condition to trigger an evaluation when the condition changes (i.e. is_away becomes true). Here’s an overview of all methods: