Geofencing and refresh rate for automation

I have a simple question, I make some automation based on geofencing (if I leave home, come back home…) and the app just check every seconds if I m home and every time it tell yes, so it trig switch on even if its already on… Its ok but I have a smartapp that check the status for those switches and I want it to run only if one of those switches change its state! My smartapp check if the switch is on and if yes do something…let say send notification. If I put that on it always sending notification each 10 seconds…

I wish my smartapp to run only if my switch change its state and this switch change its state in geofencing automation. Is someone have the same issue or have any solution? I think about to save the state and read/write it as needed but its a little overkill and maybe another way exist and also save some bettery! Everytime the code runs it take battery so it drains pretty quickly!