"I'm driving, can you call me later?" is one of the most common outcomes of a real calling programme, and one of the most commonly wasted. The person is not refusing — they are actively asking you to try again — and that is the warmest lead in your list.
Get a time, not an agreement
The prompt rule that matters: when someone asks to be called later, ask when, and confirm it back.
"Sure, when would suit you?" → "After six" → "I'll call you after six today, thank you."
Without the specific time you have a vague intention. With it you have an appointment, and a call the person is expecting connects at dramatically higher rates than a blind retry.
Then actually honour it
This is where programmes fall down. The callback is captured in the transcript and then the batch's normal retry logic calls at whatever time it was going to call anyway — often the exact hour the person said they were unavailable.
That is worse than not asking. You made an agreement in the person's mind and then broke it, and the second call now reads as automated indifference.
Route callbacks out of the general retry pool and dial them at the stated time.
Keep the call short when it comes
Someone who asked to be called at six has budgeted a small amount of attention. Open by referencing the agreement — "you asked me to call back this evening" — so it is immediately clear this is not a cold call, then get to the questions.
Two attempts, then stop
If a scheduled callback also goes unanswered, one more attempt at a different time is fair. After that, stop. A person who arranged two callbacks and took neither has answered you.
The distinction worth encoding
"Call me later" and "not interested" are opposite outcomes that both end the call, and a lazy prompt records them identically. Make the agent distinguish them, and make sure a genuine "no" is never retried — that is the difference between persistence and harassment, and it is one line in the prompt.
