Телеграм бот для домофонов и ворот

Мне всегда было интересно как устроены системы открывания ворот и дверей. Но каждый раз при использовании у меня был вопрос "Почему нет единой системы, которая бы позволила управлять всеми доступами в одном месте?". Было бы очень удобно, если бы не нужно было таскать с собой пульты от ворот и ключи от домофонов. Все двери можно было бы открыть просто с телефона.

Поэтому я решил объединить все свои устройства в одну систему. Настроил работу устройств через MQTT сервер и написал телеграм бота, который с ним работает. Чуть позже добавил обратную связь, хранение статусов устройств и интеграцию с Алисой. Теперь я могу сказать "Алиса, открой домофон"!

Еще 2020 году во время первой волны ковида я стал разбираться с системами управления доступом. Несколько раз принимал участие в настройке ворот, шлагбаумов, цифровых панелей доступа. Мне было интересно как они работают и как можно добавить к ним какое-то удобное удаленное управление.

Telegram бот для домофонов и ворот Telegram бот для домофонов и ворот

Когда на въезде во двор появились ворота, я решил написать телеграм бота, который бы позволял открывать ворота удаленно. Чтобы приехавшие в гости друзья могли сами открыть ворота.

Версия 1.0

В качестве эксперимента я собрал первую версию бота на Python. Бот крутился на домашнем сервере умного дома, к нему было подключено wi-fi реле, которое нажимало кнопку на пульте. Ретранслятор пультов передавал усиленный сигнал на ворота:

Telegram бот для домофонов и ворот

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

В этой версии бота все настройки, устройства и пользователи были прописаны в коде и любое изменение конфигурации или настроек могло уронить систему, поэтому я решил переписать систему.

Версия 2.0

Обдумав структуру, я написал новую систему на JS. Она уже не была завязана на мой локальный умный дом, а работала через отдельный web-сервер. Теперь схема выглядела так:

Telegram бот для домофонов и ворот

Добавил базу данных с удобным интерфейсом. В это базе данных хранятся устройства, пользователи и права доступа. Когда пользователь открывает бота - ему показывается список доступных устройств. Пользователь отправляет команду открыть устройство. По базе данных бот проверяет, есть ли у пользователя права на это устройство. Если права есть, тогда бот отправляет команду открытия по протоколу MQTT. Wi-Fi модуль на воротах получает команду и открывает ворота.

Позже добавил обратную связь: на ворота можно поставить датчик, который будет определять, открыты ворота или нет. По такому же принципу можно добавить, например, датчик температуры или собирать данные со счетчиков воды/электричества. Эти данные в один клик можно посмотреть в боте.

Telegram бот для домофонов и ворот Telegram бот для домофонов и ворот

Для управления девайсами не надо ставить дополнительные приложения, заходить в какие-то сервисы. Просто зашел чатик в Телеге и открыл нужные ворота. Кнопка “Статусы устройств” нужна, чтобы получить список всех доступных пользователю устройств и их статусы. Также подключил к системе несколько разных домофонов.

Система работает надежно и готова к масштабированию!

Telegram бот для домофонов и ворот Telegram бот для домофонов и ворот
Максим Захаров

Другие статьи

Электроника в уличном искусстве: проект «Молния»
Электроника в уличном искусстве: проект «Молния»
Идея: Превратить трещину в стене в «живую» молнию, которая реагирует на зрителя. Мне нужно было разработать техническое решение, чтобы молния была максимально похожа на настоящую и зрители могли с ней взаимодействовать.
Живое ядро на фестиваль «Outline 2024»
Живое ядро на фестиваль «Outline 2024»
Идея: Сделать огромную сферу из коры, при прикосновении к которой будут раздаваться звуки природы: шум дождя, пение птиц, ветер, гроза и т.д. Благодаря внутренним динамикам и большому объёму будет создаваться эффект реального глубокого звука.
Умная фанера. Выставка «Хаптика. Осязаемый мир»
Умная фанера. Выставка «Хаптика. Осязаемый мир»
Идея: Сделать умную фанеру - интерактивный стенд со звуками природы. Вы прикасаетесь к разным областям фанеры и она проигрывает звуки, которые были вокруг нее когда она ещё жила в лесу.