Що під капотом в Uklon? Слухай TechPower Podcast 🎧

Украинцы создали еще один бот, чтобы узнавать, есть ли дома свет. Вот как он работает

Software engineer (Android) в Yalantis Дмитрий Морозов и Python Full-Stack Developer Богдан Григорьевич создали Telegram-bot Ukraine_svitlo_bot, что помогает понимать, есть ли свет дома.

Оставить комментарий
Украинцы создали еще один бот, чтобы узнавать, есть ли дома свет. Вот как он работает

Software engineer (Android) в Yalantis Дмитрий Морозов и Python Full-Stack Developer Богдан Григорьевич создали Telegram-bot Ukraine_svitlo_bot, что помогает понимать, есть ли свет дома.

Когда начались массированные обстрелы украинской энергетики, украинцы начали сразу адаптироваться к новой реальности. Какое-то время проблема с электроэнергией была наиболее ощутима в Киеве. Но после 15 ноября веерные отключения начались по всей территории Украины. Я сразу начал искать как точно знать есть ли свет дома, или нет. Также было мнение визуализировать историю отключений, чтобы наглядно видеть динамику. Поискав уже существующие решения, нашел только виджет для IOS, но хотелось иметь очень простое решение, без лишних движений. Главной идеей была возможность масштабирования и переиспользования. Ну и немного подзадолбали однотипные сообщения в домовом чате от соседей (Свет есть или нет, Свет есть или нет, Свет есть или нет…)», — рассказывает разработчик.

Тогда у мужчины появилась мысль, что самым удобным был бы бот, который будет каждую минуту пинговать статическую айпишку и если статус (есть свет/нет света) изменился — отправлять сообщения.

Сложности разработки

«Киллер фичей бота является то, что на весь дом достаточно иметь одного „подопытного“ IP и добавить бота с пингованием этого IP в домовой чат. Так 100-1000 человек не спрашивают друг друга по 100 раз есть свет или нет. Также для себя профит я видел в том, что, находясь вне дома, у меня всегда текущее состояние света в доме и знаю, нужно ли спешить домой, лучше ли не торопиться», — отмечает Дмитрий.

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

Вместе разработчики бот реализовали, используя либу python-telegram-bot и Django.

«Хотя на первый взгляд решение удивительное для реализации Telegram-бота, у Django есть очень удобные встроенные инструменты — ORM для работы с БД и админ панель, если нужно что-то проверить в БД на продакшне. Пингов IP адресов запускается как Django management команда из кроны. Учитывая это, и то, что бота нужно было сделать как можно скорее, я выбрал именно такой стек. Python-telegram-bot из версии 20.0 использует asyncio, являющийся большим плюсом, так как позволяет пинговать ip и рассылать сообщения в Telegram пачками. Django пока не полностью работает с асинхронностью, но несколько декораторов @sync_to_async и они работают вместе!», отмечает Дмитрий.

Захватили друзья все на AWS EC2 и RDS.

В планах — добавить очередь сообщений, скорее всего AWS SQS, для рассылки сообщений в телеграмме, так как когда пользователей станет больше, телеграмм может тротлить количество сообщений через flood control.

Что может бот

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

«Варианты из эмбедед устройств мы отбросили уже на начальных этапах, потому что понимаем, что далеко не каждый захочет заморачиваться еще отдельными устройствами. Но если ты эмбедед разработчик и знаешь, как склепать интересное решение, которое втыкается в розетку и посылает, например, смс на IFTT — это была бы еще лучшая и надежная система», — приглашает к сотрудничеству коллег Дмитрий.

Айтишник создал Telegram-бота извещающий есть ли свет дома на работе или в любимом месте: как им пользоваться
Айтишник создал Telegram-бота, извещающий, есть ли свет дома, на работе или в любимом месте: как им пользоваться
По теме
Айтишник создал Telegram-бота, извещающий, есть ли свет дома, на работе или в любимом месте: как им пользоваться
Айтишники из CODY Ukraine создали карту локаций, которые всегда имеют свет и интернет. Список мест можно дополнить
Айтишники из CODY Ukraine создали карту локаций, которые всегда имеют свет и интернет. Список мест можно дополнить
По теме
Айтишники из CODY Ukraine создали карту локаций, которые всегда имеют свет и интернет. Список мест можно дополнить
Украинские разработчики создали приложение «Свет» с помощью которого можно узнавать есть ли свет на определенной локации
Украинские разработчики создали приложение «Свет», с помощью которого можно узнавать, есть ли свет на определенной локации
По теме
Украинские разработчики создали приложение «Свет», с помощью которого можно узнавать, есть ли свет на определенной локации
Читайте главные IT-новости страны в нашем Telegram
Читайте главные IT-новости страны в нашем Telegram
По теме
Читайте главные IT-новости страны в нашем Telegram
Новий випуск «З фронту в IT» про айтівців, які повертаються до цивільного життя після ЗСУ.

Історія світчера з Тернопільщини, який змінив агро на IT, а IT на ЗСУ

УЧАСТЬ В АЗАРТНИХ ІГРАХ МОЖЕ ВИКЛИКАТИ ІГРОВУ ЗАЛЕЖНІСТЬ. ДОТРИМУЙТЕСЯ ПРАВИЛ (ПРИНЦИПІВ) ВІДПОВІДАЛЬНОЇ ГРИ.
Ліцензія видана ТОВ "СЛОТС Ю.ЕЙ." на провадження діяльності з організації та проведення азартних ігор казино у мережі Інтернет від 15.09.23 (рішення КРАІЛ №245 від 31.08.2023); ТОВ "СЛОТС Ю.ЕЙ." – на провадження діяльності з організації та проведення азартних ігор казино у мережі Інтернет від 26.04.2021 (рішення КРАІЛ №150 від 12.04.2021); ТОВ «СПЕЙСИКС» – на провадження діяльності з організації та проведення азартних ігор казино у мережі Інтернет від 08.02.2021 (рішення КРАІЛ №34 від 02.02.2021); ТОВ «ГЕЙМДЕВ» – на провадження діяльності з організації та проведення азартних ігор казино у мережі Інтернет від 16.02.2021 (рішення № 47 від 10.02.2021).
Читайте также
Украинский айтишник создал бот для ежедневного напоминания о донатах ВСУ
Украинский айтишник создал бот для ежедневного напоминания о донатах ВСУ
Украинский айтишник создал бот для ежедневного напоминания о донатах ВСУ
Украинский хирург с командой запустили бот для определения инсульта
Украинский хирург с командой запустили бот для определения инсульта
Украинский хирург с командой запустили бот для определения инсульта
1 комментарий
Когда очереди на АЗС надоели. Айтишники создали Telegram-бота, подсказывающего, где есть бензин, газ, дизель, и сколько авто в очереди
Когда очереди на АЗС надоели. Айтишники создали Telegram-бота, подсказывающего, где есть бензин, газ, дизель, и сколько авто в очереди
Когда очереди на АЗС надоели. Айтишники создали Telegram-бота, подсказывающего, где есть бензин, газ, дизель, и сколько авто в очереди
Где купить топливо на АЗС Украины? В Telegram появился полезный бот
Где купить топливо на АЗС Украины? В Telegram появился полезный бот
Где купить топливо на АЗС Украины? В Telegram появился полезный бот

Хотите сообщить важную новость? Пишите в Telegram-бот

Главные события и полезные ссылки в нашем Telegram-канале

Обсуждение
Комментариев пока нет.