The way my company does it for my team is we have a rotation where we each cycle on-call for 2 weeks where we're expected to remain within signal range of a cell tower and within 30 minutes of either being able to login to the VPN or travel to the office itself. As compensation, we get paid $25 / day (in addition to our regular salary) just for holding onto the phone... and then if there's ever an issue off-hours we get paid for the time taken to solve the issue. If it's one of those things where we just need to kick off a normally automated task and review the output of that task to see if it ran, we are allowed to log the entire time it took for the task to run in 1 hr intervals. As an example, we get alerted that a task didn't run for whatever reason. We can login, log our start time, kick off the task and set up whatever alert needs to be created to let us know it's completed, and logoff (note: we do not log the end time yet). If we get the alert 10 minutes later that the task completed, we login again; check the results; log our end time if the results look good, and logoff knowing we're getting paid for a full hour extra. If the task runs for 3hrs and 1 minute...we get paid for 4 hours.
This method has helped to keep the team morale high, and while we dread having the phone, we take comfort in knowing that the rotation will take about a quarter to quarter and a half to get back around to us again after we complete our round, and we'll get bonus pay that makes it more than worth it.
Though I like this package very much (for obvious reasons) it does go way above my expectations. Whenever I interview for a company I always ask if on-call will be a requirement and what their compensation is. If they don't at least pay extra for the periods when you're expected to carry the oc phone it's an automatic walk... the level of compensation given for when an event actually occurs is negotiable but I will usually require some kind of time-based comp. If they want to say they'll pay me an extra hour a day just for being on call and that serves as a credit towards any events that may occur that day..fine, I'll go with that. I suppose it could kinda screw me if something happens at 23:01 and it takes me until 00:57 to get it sorted, but events should be happening so infrequently that such a thing shouldn't be a heavy inconvenience.