Реализовать звонок через интернет из мобильного приложения - клиенту

Цель: Организовать связь между нашим мобильным приложением и клиентом (и обратно) по подменным номерам
(ни клиент, ни сотрудник не должны видеть реального номера друг друга. По этому принципцу идут звонки в авито и яндекс)

Завершенная работа это:

  1. Готовая интеграция вызовов
  2. Технический и функциональный мануал
  3. Завершенный этап тестирования в реальных условиях
Блок схема: https://drive.google.com/file/d/1OOxUBktWy5-XYbplJh-kxHQbK--MYH_K/view?usp=sharing

Процесс сейчас:
Входящий звонок поступает через sip телефонию в АМО. Его обрабатывает оператор КЦ. Оператор создает заявку в АМО. После сохранения, заявка обрабатывается нашим сервером (Simphony) отправляется в наше мобильное приложение (написано на flutter), установленное на телефон бригады. В заявке на сегодня передаются ФИО, Адрес, Услуги и Номер телефона клиента. При клике на номер, начинается дозвон на номер клиента по сотовой связи.

И в обратную сторону: Когда клиент хочет поговорить с назначенной бригадой, он звонит на номер КЦ, а те в свою очередь вынуждены дать номер телефона бригады. Таким образом, все видят номера друг друга.
Примечания: У заявок есть статусы - выбери бригаду, приняли, выехали, прибыли, завершили.

Как Мы хотим:
При звонке клиента и если заявка находится в статусах от приняли до завершили - происходит автоматическое соединение клиента на прямую с бригадой (причем бригада видит подменный номер, а клиент звонит на основной номер КЦ)

И в обратную сторону:

Если сотрудник хочет позвонить клиенту и нажимает позвонить, на экране смартфона он видит “левый набор цифр” но при этом дозванивается клиенту. А клиент видит на экране входящий номер НЕ БРИГАДЫ, а общий номер КЦ

Частности:
  • Если звонок пришел на бригадный телефон, а сотрудник его скидывает, происходит моментальная переадресация на номер КЦ (незаметная для клиента)
  • Если звонок пришел на бригадный телефон, а сотрудник занят и не отвечает более 20 секунд - переадресация на КЦ
  • Если у клиента 2 номера телефона (нам бы их связать)
  • Нужна возможность коммутатора (когда бригада завершила вызов, и через 20 мин звонит клиент. Он естественно попадает в КЦ. нужно суметь в ручную перевести звонок на бригаду Важно, пока бригада если на смене, а в идеале, на телефон врача, даже если он не на смене)
  • Если пациент лежит в стаце (заявка закрыта на стационар) то звонок на номер КЦ автоматически переводится на номер стационара. А после выписки - звонки снова переходят в КЦ

Читайте на 123ru.net