Найти тему

Рубрика #вкусняшки Сегодня я принес вам покушать, братишки, исходного кода парочки моих проектов

Рубрика #вкусняшки

Сегодня я принес вам покушать, братишки, исходного кода парочки моих проектов.

Исходный код бота @deletr_bot. Скинули мне в личку, что в Hastag Invest (элитном чате для инвесторов и соискателей инвестиций — хотите инвайт, читайте правила) слишком много ребят с именем Deleted Account — что происходит со всеми проектами Золота Бородача. Почему — не понятно; быть может, это спаммеры заходят в чат сразу, чтобы потом со спам-аккаунтов хараcсить участников. Решил написать быстренько бота, который удаляет этих участников с каналов и групп — @deletr_bot; но оказалось, что Телеграм Бот АПИ не дает посмотреть на список пользователей. Код я сразу выложил в открытый доступ и прикрутил CI, чтобы, как только этот метод в Телеграм Бот АПИ появился, @deletr_bot заработал бы максимально скоро.

Помимо всего прочего, в этом проекте я впервые попробовал Telegraf и был, мягко сказать, разочарован. Создалось ощущение, что ребята хоть и написали клевый фреймворк, но достаточного инпута от разработчиков реальных ботов собрать не смогли. Так, команды типа "/howdoyoudo" и "/noice" работают отлично, когда "/howdoyoudo@sobaka_bot" уже не передается нормально боту — пришлось писать костыль с регулярками (спасибо @borodutcher чату — помогли вспомнить риджекс). Написан фреймворк неплохо, пользоваться можно и нужно, но вот в группах работать он будет немного прискорбно. Что не умаляет того факта, что для Телеграм ботов я теперь буду использовать только его и контрибьютить по мере возможности.

Исходный код небезызвестного проекта Controlio. Ссылочка ведет на главный репозиторйи с серверным кодом, но там есть списочек других репозиториев: веб и iOS код плюс лендосик. Возможно, Android разработчик, который помогал нам, тоже запаблишит код в открытый доступ. На самом деле, Controlio оказался поворотным проектом в моей жизни. Я понял, что клевые продукты не делаются долго (как мы пилили этот два года), но запускаются очень быстро — за месяц-два. К счастью, опыт Controlio принес не только положительные эмоции и мудрости мне, но и помог нескольким начинающим программистам окунуть большие пальцы ног в пучину кодинга. В общем, выкладываю код "как есть" — в качестве дани тем двум годам, когда мы все вместе усердно работали над этим проектом. Может, кому-нибудь будет полезно.

Update: беру свои слова насчет Telegraf обратно, фреймворк реально бомбический. Оказалось, можно установить боту username — тогда и команды через @ он будет принимать. Обновил код в репозитории @deletr_bot. Единственное что — ребятам все-таки нужно поработать над документацией. Точно буду использовать Telegraf в следующих проектах.