EntryCall — Мобільний застосунок для мешканців
Відеодомофон, який мешканці носять у кишені.

Це застосунок для iPhone й Android, яким мешканці EntryCall відповідають на виклик біля вхідних дверей свого будинку. У 2024–2026 роках я переписав його з Flutter на React Native та Expo, і він доступний в обох магазинах застосунків. Відеодзвінки працюють через WebRTC і дзвонять навіть на заблокованому телефоні.
Це EntryCall у вашій кишені. Мешканці використовують застосунок, щоб відповідати на відеодзвінки з вхідних дверей, впускати відвідувачів, видавати цифрові ключі, дивитися камеру в холі й читати новини будинку. Одна кодова база виходить в обидва магазини застосунків — і телефон дзвонить, навіть коли застосунок закрито.
- Роль
- Full-Stack розробник
- Терміни
- 2024 — 2026
- Стек
- Expo SDK 54 · React Native 0.81 · TypeScript · LiveKit + CallKeep / VoIP push · TanStack Query v5 · NativeWind / Tailwind · Pusher · EAS Build / Update
Завдання
Одна кодова база, два магазини застосунків.
Що це за застосунок.
Застосунок для мешканців — це те, як люди відповідають на вхідні двері звідусіль. Ви бачите відвідувача на відео, говорите з ним і відчиняєте двері — плюс цифрові ключі для гостей, камера в холі наживо й новини будинку. Він виходить на iPhone та Android одночасно, і дзвінок із дверей не можна пропустити ніколи.
Найскладніше — спершу.
Найскладніша частина — змусити телефон дзвонити, навіть коли застосунок повністю закрито — потребує глибокого доступу до системи дзвінків телефона. Цю частину побудували першою й упакували в окремий комплект. Потім увесь застосунок перевели на Expo — набір інструментів, що значно прискорює розробку й оновлення, з комплектом для дзвінків, підключеним знизу.
Безпека передусім
Ключі, які ніколи не торкаються диска.
Ваша сесія живе лише в пам'яті.
Відповідно до найновіших стандартів мобільної безпеки, ключ, що підтверджує, хто ви, зберігається лише в робочій пам'яті телефона. Закрийте застосунок — і його немає. Єдиний довготривалий ключ замкнено в апаратному сейфі телефона — у тому самому захищеному місці, яким користується ваш банківський застосунок — де жоден інший застосунок не може його прочитати.
Як вхід залишається безпечним.
- Апаратно захищений ключ — І iPhone, і Android мають вбудований сейф для секретів. Застосунок використовує обидва через одні двері.
- Тихе поновлення — Коли сесія завершується, застосунок поновлює її у фоні й повторює те, що ви робили. Ви цього навіть не помічаєте.
- Миттєве блокування — Якщо поновлення не вдається, застосунок виходить усюди й одразу очищає всі збережені дані.
- Ретельно розділені частини — Введення тексту у формі входу не може перервати живий відеодзвінок — частини навмисно тримають окремо.

Живі дані
Застосунок оновлює себе сам — кнопки оновлення немає.
Один розумний кеш.
Екрани ніколи не звертаються до сервера напряму. Вони читають з однієї спільної пам'яті останніх даних — будинки, новини, камери, погода — і ця пам'ять знає, наскільки свіжим має бути кожен вид даних. Погода може бути п'ятнадцятихвилинної давнини, а подія на дверях — ні.
Що робить його живим.
- Push-оновлення — Коли будинок публікує новину або змінюється камера, сервер сповіщає застосунок, і оновлюється саме потрібний екран.
- Активний і сплячий — Повернення до застосунку оновлює дані. Втрата зв'язку призупиняє запити й відтворює їх, щойно ви знову онлайн.
- Правильний порядок, завжди — Дані, що залежать від вашого будинку, чекають, доки ваш будинок не стане відомим — тож ви ніколи не побачите чийогось чужого холу.
- Чистий вихід — Вихід очищає кожен закешований екран. Жодних даних-привидів із минулої сесії.
Відео
Дзвінки з дверей, що випереджають дверний дзвоник.
Уся технологія дзвінків в одному комплекті.
Увесь відеоконвеєр живе в одному внутрішньому комплекті. Він стоїть над кожним екраном, тож вхідний дзвінок може перебрати керування, хай чим би ви займалися. А дзвінок із дверей лунає через власний екран дзвінка телефона — він виглядає й відчувається як звичайний телефонний дзвінок.
Розбудити сплячий телефон.
Спеціальний високопріоритетний push будить телефон, навіть якщо застосунок було закрито — телефон починає дзвонити, перш ніж застосунок повністю запуститься. І лише після того, як ви відповісте, під'єднуються живе відео й звук.
У руках
Заради чого мешканці насправді відкривають застосунок.
Повсякденні функції.
- Відеодзвінки з дверей — Відповідайте на домофон, бачте відвідувача й впускайте його — не підходячи до коробки на стіні.
- Цифрові ключі — Надавайте тимчасовий доступ родині, гостям чи прибиральниці — і забирайте його, коли все завершено.
- Камера в холі — Перевіряйте хол і входи наживо, звідусіль.
- Новини будинку — Оголошення від управління з'являються в застосунку тієї ж миті, щойно їх опубліковано — жодних папірців, приклеєних до ліфта.
- Місцева погода — Невеличке, тихе, корисне доповнення — оновлюється кожні п'ятнадцять хвилин.
Дизайн-система
Одна мова стилів, дві платформи.
Узгоджено за замовчуванням.
Майже кожен екран стилізовано однією спільною системою, тож світла й темна теми скрізь виходять правильними — без зайвої роботи над кожним екраном.
Іконки, що пасують.
Застосунок використовує набір іконок Apple на iPhone і відповідний набір на Android, зіставлені через один компонент — тож кожна платформа відчувається собою.
Наступний проєкт: EntryCall — Застосунки для ТБ