Сценарий доставки уведомлений может быть двух видов: - Отправка уведомлений по мере их инициализации на сервере телефонии.
Например, как только поступил входящий звонок, то формируется запрос в котором указаны: src_phone=79876543211, dst_phone=200 и started_at=2022-02-22T12:22:22.222+03:00, call_id=MasOIEqwe1aq
Далее, как только была поднята трубка, то отправляется ещё один запрос с дополненными атрибутами: src_phone=79876543211, dst_phone=200, started_at=2022-02-22T12:22:22.222+03:00, call_id=MasOIEqwe1aq, status=answered, answered_at=2022-02-22T12:22:22.222+03:00.
Далее, звонок был завершен, повторяем отправку с новой информацией: src_phone=79876543211, dst_phone=200, started_at=2022-02-22T12:22:22.222+03:00, call_id=MasOIEqwe1aq, status=answered, answered_at=2022-02-22T12:22:22.222+03:00, completed_at=2022-02-22T12:22:22.222+03:00, duration=2000, recording=https://host/audio.mp3.
Не забываем, что каждый запрос должен содержать рассчитанный хэш в поле signature (только если опция проверки данных включена в настройках интеграции).
- Отправка уведомлений (один звонок == одно уведомление).
По окончанию звонка или по таймауту сервер телефонии делает отправку истории звонков. В момент обработки уведомлений на стороне Synergy CRM происходит следующее:
- Принимается POST запрос, инициализируются обработчики интеграции клиента
- Проверяется валидность и значение поля signature
- Создается звонок
- Если звонок входящий, то пользователям, находящимся в онлайне, отображается тостер (окно в нижнем правом углу) в котором перечислены ссылки на компании и контакты, которые имеют этот же самый номер, что и в звонке. Далее, если пользователь нажмет на гиперссылку, то откроется миникарточка объекта.
- Формируется ответ SynergyCRM в ответ на POST запрос отвечает 200 серверным статусом, а так же в теле ответа содержится json с информацией по созданному объекту звонка.
Дополнение: Синхронный ответ с телом объекта, в ближайшее время будет заменен на ID звонка в очереди обработки звонков, узнать о статусе обработки можно будет воспользовавшись методами https://api.syncrm.ru/#telephony_calls.