Заметки
Почему звонки/медиа не работают в приложении
Почему звонки/медиа не работают в приложении: HTTPS, браузер, navigator.mediaDevices.
Почему звонки/медиа не работают в приложении. Основной фокус: HTTPS, браузер, navigator.mediaDevices.
Задача
Разобрать телефонию, звонок из CRM или ограничения браузера в приложении.
Задача — почему звонки/медиа не работают в приложении. HTTPS, браузер, navigator.mediaDevices.
Главное — не искать один универсальный метод, а сначала определить сущность, права и слой API, через который выполняется действие.
Как это устроено
Звонок в Битрикс24 зависит от номера в карточке, маршрута телефонии, приложения, браузера и разрешений на медиа. В приложении дополнительно мешают iframe, HTTPS и политики браузера.
Разложите сценарий на уровни: где появляется исходное значение, какой метод его меняет, кто выполняет действие и какое событие должно сработать после изменения.
Если сценарий проверяется под администратором, отдельно повторите его под обычным пользователем. Для прав, CRM, задач, Диска и приложений это часто даёт другой результат.
Рабочий подход
Проверяйте цепочку полностью: формат номера, пользователя, подключённую линию, сценарий click2call, браузерные разрешения и сетевые условия. Для REST-вызовов добавьте ограничение частоты и журнал попыток.
Откройте приложение по HTTPS, проверьте браузер, разрешение микрофона и ограничения iframe. В небезопасном контексте браузер может вообще не отдавать mediaDevices.
На коробке удобнее добавлять временное логирование рядом с местом выполнения кода, а в облаке — сохранять входящие и исходящие REST-запросы в свой журнал интеграции.
Частые ошибки
Если звонок не стартует из карточки, это не всегда ошибка REST. Часто номер не нормализован, пользователь не сопоставлен с телефонией или браузер не даёт доступ к микрофону.
- Проверять сценарий только под администратором и не видеть проблему прав обычного пользователя.
- Регистрировать placement до завершения установки и ждать, что он сразу появится у всех пользователей.
- Не логировать фактический запрос и ответ, из-за чего ошибка выглядит случайной.