You can't pay me a decent* salary for on-call. This is true of many people. One developer I worked with took medication at night which rendered him completely useless, and skipping the medication resulted in several very bad days. For me, it's simply a work/life balance thing, and I can find work that doesn't need it.
The "easy" answer is to put it in the job ad, and hire people who agree to it. Because forcing that requirement on an existing employee just isn't going to happen.
* by all means, pay me an indecent wage, enough that I can retire after a year!