There are a lot of options with presence, and all of them are sensitive to local issues, meaning that they will work very well for some people but not for others. Or might work well at your home but not at your office.
I myself use a wheelchair and ran into what I call the “bus stop problem.” This was when my presence was detected while I was still on the bus. Since it can take the driver several minutes to get me unloaded, events were triggering much sooner than I wanted them to. I ended up using two devices for presence in order to narrow the detection area.
The presence FAQ should be of interest. It discusses multiple methods, including the two device protocol.