Yes, you are right. But at least in my environment with iPhone 6s and iPad Pro the device wake up every 3-5 minutes. So the rules
if ping_device is present then set presence of dummy present
if ping_device is absent for 5m then set presence of dummy absent
work for me (unless I have not disabled networking). My ping interval is set to 10 seconds.
It would be great to have some figures to compare accuracy and latency of the different approaches (ping, IFTTT, FritzBox WLAN status, Locative geofence, …) for the “DeviceAtHome” problem.
BTW: Independent from the method, you can log the device location in pimatic-phone with calls like …/updateTag?tag=Home or …/updateSSID?ssid=WLAN