Могу немного поделиться своим опытом, как раз заканчиваю разработку call-center-in-the-cloud - тут как бы все очень сильно зависит от нагрузки на CC - если пользователей 10-100 - это одно решение, если же их больше 100k-1млн - другое. В зависимости от нагрузки разрабатывают соответствующую архитектуру проекта, на основании архитектуры создается ТЗ, а используя в свою очередь ТЗ выбираются те или иные технологии и подходы. Судя по задаваемым вопросам - архитектура отсутствует напрочь, что обычно заканчивается весьма печально как для проекта так и для людей принимающих в нем участие
Вкратце, учитывая некие средние требования к CC, придется бороться с тремя вещами :
a) масштабирование нагрузки (БД, файловая система, VoIP и middleware)
b) безопасность и целостность приложения, БД и сетевых соединений
c) юзабилити UI
Также совсем не понятно зачем здесь нужна Java - будете использовать подгружаемый в броузер plugin или это будет standalone app ? Обычно применение java говорит о том что ни руководитель проекта ни его программисты учиться дальше(другому) не могут или больше не хотят. Но как говорится "обходя разложенные грабли вы же теряете драгоценный опыт"