В Asteriske есть понятие очередь, обладает всем требуемым Вам функционалом. Очереди настраиваются очень просто. Так сказать, работают из коробки. Надо только указать операторов.
Обращаться к ПО можно из диалплана, через AGI/AMI и передавать все параметры вызова, включая CallerId.