That was my thought too. The programming may be the more efficient and reliable solution - even though VoIP telephony is really advanced meanwhile as the
telephone devices comprise all standard and elaborate functions without looking bulky. However, I am not sure whether it'd be possible to develop a processing mechanism as you need it.