Почему ноутбук и телефон видят друг друга по Wi-Fi, а мобильный телефон теряет связь при использовании LTE?

В нашем приложении появилась необходимость создать раздел "видео консультации". Однако руководство решительно отвергло возможность использования API от Google и Zoom. К тому же, API Яндекс-телемоста не позволяет встраивать видеочат в страницу через iframe. Мы выдвигаем минимальные требования к этому чату, включая только видеообщение и демонстрацию экрана. Ещё одним обязательным условием является отсутствие сокетов на сигнальном сервере. 

Мы нашли на GitHub репозиторий с простым чатом: на стороне сервера используется PHP без сокетов, а на фронте – два video и JavaScript скрипт для подключения. Интересно, что при подключении ноутбука и телефона к одной Wi-Fi сети всё работает хорошо: камера отображает изображение на обоих устройствах. Однако при переключении телефона на мобильный интернет подключение перестает функционировать. 

Я провёл тестирование скрипта на тестовой странице (в том числе в консоли), где выводил сообщения и ошибки, но это не дало ясных результатов. Если у кого-то есть возможность, прошу взглянуть на результаты работы скрипта по следующей ссылке: <a href="https://vivat.nectar.ltd/tm/" rel="nofollow">https://vivat.nectar.ltd/tm/</a>. Пожалуйста, зайдите на сайт с двух устройств, чтобы проверить подключение. Мне интересно, удастся ли вам подключить телефон, и как можно исправить ошибку подключения?
  • 16 октября 2024 г. 15:23
Ответы на вопрос 1
Проблема, с которой вы столкнулись, может быть связана с несколькими факторами, когда телефон теряет связь с приложением при переключении на мобильный интернет (LTE). Вот некоторые возможные причины и сведения, которые могут помочь вам в решении проблемы:

1. **IP-адресация**: Когда устройства подключены к одной Wi-Fi сети, они могут находиться в одной локальной сеть и обмениваться данными через частные IP-адреса. При переключении устройства на мобильный интернет оно будет иметь другой, публичный IP-адрес, и если ваш сигнал сервер настроен на работу только с частными IP-адресами, соединение может разорваться.

2. **Кросс-доменные запросы (CORS)**: Если ваш сервер работает на другом домене или порт, когда телефон подключается к мобильному интернету, это может вызывать проблемы с кросс-доменными запросами. Убедитесь, что ваш сервер правильно настроен для обработки запросов с разных доменов.

3. **Наличие NAT (Network Address Translation)**: При использовании mobile LTE могут возникнуть проблемы с NAT, и ваш сервер может быть не настроен для обработки запросов со сторонних IP-адресов. Проверьте настройки и уточните, как ваш сервер обрабатывает внешние запросы.

4. **Firewall/Безопасность**: Если ваш сервер управляется через хостинг или облачную платформу, убедитесь, что настройки брандмауэра и безопасности позволяют входящие соединения от мобильных клиентов и IP-адресов, которые они используют.

5. **Сигнальный сервер**: Ваше приложение вероятно использует WebRTC, и для успешного соединения оно должно правильно управлять сигнальными серверами и процессом обмена информацией. Убедитесь, что сигнальный сервер может обрабатывать подключения как из локальной сети, так и через интернет.

6. **Тестирование:** Попробуйте протестировать работу с разными мобильными операторами и настройками сети, чтобы определить, является ли проблема специфичной для какого-то конкретного провайдера.

Рекомендую следующие шаги для устранения проблем:

- Протестируйте соединение с использованием VPN, чтобы понять, сохраняется ли проблема при использовании разных сетей.
- Проверьте логи вашего сервера, когда подключается мобильное устройство, и посмотрите, какие ошибки возникают.
- Проверьте, какие данные отправляются вашим приложением, переключаясь между сетями, возможно, вы сможете найти корень проблемы в JavaScript-коде.
- Убедитесь, что ваше приложение правильно обрабатывает ситуации, когда устройства находятся в разных сетевых условиях.

Если после выполнения всех предложенных проверок проблема останется неразрешенной, возможно, стоит привлечь специалиста по настройке серверов для более глубокой диагностики.
Похожие вопросы