Личные звонки
Как начать и принять личный аудио- или видеозвонок, состояния вызова, управление камерой и микрофоном, борьба с эхом.
Личный звонок — аудио- или видеовызов между двумя пользователями PrimeMeet. Каждый звонок изолирован: у него уникальный идентификатор и отдельная комната LiveKit.
Начало звонка
- Откройте личный чат.
- Нажмите аудио- или видеозвонок.
- Дождитесь ответа.
В мобильном прямом звонке должны быть кнопки микрофона, камеры, переворота камеры и завершения. Дополнительный выбор звука показывается только при наличии нескольких вариантов вывода.
Входящий звонок
Android:
- получает high-priority data-only FCM;
- нативная часть показывает системный экран звонка;
- после принятия открывает конкретный call attempt.
Web/PWA:
- получает WebSocket-событие;
- при поддержке — Web Push;
- показывает входящий звонок.
Состояния попытки
Каждый звонок имеет уникальный callId и отдельную LiveKit room:
ringing → accepted → ended
↘ rejected
↘ timeout
Старое событие accept/end не должно изменять новую попытку звонка.
Микрофон и камера
Если устройство выключено, иконка перечеркнута и подсвечена красным, а собеседник видит состояние выключенного микрофона или камеры.
Переключение камеры
На телефоне кнопка находится на preview собственного видео. Доступны:
- фронтальная камера;
- основная камера;
- маленький, средний и большой preview;
- pinch двумя пальцами;
- привязка preview к четырем углам.
Отображение видео
- телефон использует доступную площадь экрана;
- desktop показывает полную вертикальную картинку внутри прямоугольника;
- лицо не должно обрезаться из-за
cover; - для полного изображения применяется
contain, где это необходимо.
Эхо
Не запускайте два клиента рядом. Для громкой связи браузер использует echo cancellation, noise suppression и auto gain control.
Если слышите повтор фразы:
- Подключите гарнитуру.
- Уменьшите громкость.
- Закройте второй клиент.
- Переподключитесь.
- Проверьте выбранный микрофон.
Если звонок не подключается вовсе, см. Уведомления, безопасность и диагностика.