Чтобы принимать звонки вам потребуется либо внешний телеком провайдер, который предоставляет внешний номер телефона, либо GSM/PSTN шлюз, в который можно воткнуть SIM карты для приема вызовов. Если это CRM, то скорее всего нужно масштабируемое решение и потребуется арендовать пул номеров у провайдера. На эти номера будут поступать звонки и ваш Asterisk сервер будет распределять их по операторам.
webrtc действительно подойдет если операторы CRM будут использовать Chrome или FF.
В IE оно пока не работает.
jssip или sipml5 надо внимательно тестировать, т.к. могут вылезти такие баги, которые не удастся исправить в разумное время. Кстати удержание вызова в WebRTC работает через воркэраунды в силу некоторых причин. Знаю что у Flashphoner удержание и трансферы для WebRTC работают. В sipml5 не тестировал.
автоматическое определение номера
это скорее дело Asterisk-а прислать эти данные Web-телефону
открытие карточки клиента
Это есть в каждом API. Раз вызов входящий видно, значит есть соответствующее событие.
Возможно есть какие-то готовые решения такой интеграции веб-телефона на страницу сайта.
Более готовых софтверных решений чем Flashphoner не видел. Есть куча SAAS. Может их?