AiThao
Технологии · AiThao

Как устроены звонки

Звонок должен быть быстрым, держаться на плохой сети и, если он без перевода, оставаться только между двумя телефонами. За каждое из этого отвечает своя часть.

Что это даёт вам

  • Чёткий звук и видео, которые подстраиваются под соединение.
  • Звонки, которые соединяются даже за строгими сетями.
  • Сквозное шифрование звонков без перевода — его показывает замок на экране звонка.

Как это работает

Звонки идут на WebRTC — стандарте для звука и видео в реальном времени. Оба телефона отправляют поток на медиасервер, который работает на собственном сервере AiThao, а тот пересылает его другой стороне; если сеть закрывает этот путь, поток идёт через ретранслятор. Весь поток шифруется при передаче, как того требует WebRTC.

Само по себе это не мешает медиасерверу слышать звонок. Поэтому на телефонах, которые это поддерживают, у каждого звонка свой ключ: он передаётся собеседнику через зашифрованный чат, и им шифруется каждый кадр звука и видео. Сервер пересылает кадры, которые не может расшифровать.

Когда включён перевод

Чтобы переводить, обработчик перевода должен слышать звонок, поэтому ключ звонка передаётся ему, когда оба согласились. После этого звонок перестаёт быть сквозным, и замок пропадает.

Под капотом

WebRTC · шифрование каждого кадра · Apple CallKit на iPhone

Частые вопросы

Почему не соединить два телефона напрямую?

Медиасервер делает звонки надёжными в мобильных сетях и позволяет обработчику перевода подключиться, когда его зовут. С ключом на каждый звонок он всё равно не слышит зашифрованный звонок.

Звонки записываются?

Нет. Хранится только журнал звонков (кто, когда, сколько) — 90 дней.

Посмотрите перевод в действии

Веб-демо помогает познакомиться с AiThao до выхода приложения. AiThao ожидает одобрения Apple для публикации в App Store; ссылки на установку пока нет.

Открыть демо