OPENGATES BOT V.1.0
Привет Уважаемый читатель моего скромного блога о разработке!
Все чаще и чаще у нас в городе жители многоквартирных домов стараются закрыть свой двор от нежелательных гостей, парковочников и т.п. Поэтому идет спрос на услугу установки своих шлагбаумов перед въездом во двор, конечно сейчас многие застройщики это предлагают «из коробки» но не все. Что касается системы открывания этих шлагбаумов, то услуга предоставляет на выбор: по пульту(кнопке) или же через телефон, который привязывается в базе данных телефонов шлагбаума.
Дак вот данный шлагбаум поставили и у нас во дворе и собрали телефонные номера у жителей , у которых есть ТС. Я кстати этот способ вижу менее затратный, чем с кнопками(пультами). Но и у него есть свои минусы: сел аккумулятор телефона, закончили средства, пропала сеть и т.п. , но у меня была и еще одна проблема, при возникновении ремонта, мне нужно было постоянно открывать когда привозили материалы, приезжал ремонтник и т.п. .
Подводя к сути: В свободное время я решил закрыть эту проблему и написать небольшой софт, надоело постоянно отрываться от своих дел и звонить на эту чертову палку!
Доступ
В самом начале пути нужно подумать над тем, как дать доступ необходимым людям для открытия шлагбаума ?
Я думаю ты уже знаешь ответ 🙂 Аве телеграм.
Мы даем доступ пользователя в телеграмме и он с помощью бота уже работает со шлагбаумом.
Алло, Галочка ? Открой плз…
Теперь завис в воздухе вопрос о том, как и кто будет все таки открывать шлагбаум ? Да еще и с подстановкой моего номера…
Не буду углубляться в ip-телефонию и все что с ним связано, я рассмотрел 2 варианта для себя, это поднимать свой собственный Asteriks или использовать платное rest api от Twilio т.к. время деньги — выбор встал на 2 вариант.
Сервис позволяет совершать звонки, воспроизводить голосовые сообщения, отправлять sms сообщения и т.п., подробности у них в гайде. Для пользования этим сервисом необходимо было оплатить минимальный тариф, расчет идет от продолжительности разговора или количества отправленных sms, но так как мы звоним на шлагбаум, то разговора там никого нет, шлагбаум сразу сбрасывает звонок.
Архитектура
Мы не будем писать отдельный бек для обработки запросов телеграмма, а используем уже существующий dindin, выделим там логику для нашего бота и опишем.
Звонки как сказалось ранее будет осуществлять Twilio.
Результаты
Вообщем получилось вроде прикольно, за несколько часов работы.
Спойлер: сразу заложил в архитектуру возможность добавления нескольких адресов. Но это уже другая история 🙂