мы такое делали на фриПБХ вроде все ровно работает
ну вообще такое нативно работает начиная вроде с 11й версии астериска. при atxfer если юзер на кого перевели вызов (юзер С) не берет трубку или занят - астериск соединяет юзера А обратно на юзера Б
Если имееться ввиду возращение звонка трансферифшему в случае если после перевода не взяли трубку ? то нужно использовать attendet tranfer и в features.general custom добавить parkext => *700