Pull to refresh

Comments 17

Сколько уже на хабре уроков по созданию однотипных ботов, в том числе и на heroku. Было бы не плохо, если кто-нибудь рассказал о чем-то более трудном, чем просто эхо бот, хотя бы о боте для наложения тех же фильтров на фотографии
Я помню, как сам пытался разобраться в этом. И не смог найти урока в интернете, который упростил бы задачу, а не запутал бы и не вызвал бы проблем при попытках запуска. Написал я эту статью, потому что для новичков хотел упростить создания их первого бота. И я не делал опоры на код (по той же самой причине). Я понимаю, что профессионалам это возможно неинтересно.
Так и ваш пример ничего не объясняет и не помогает разобраться.
Ваша задача состоит из 2 частей:
1. функция наложения фильтра на фото (ее вы пишете на любом доступном вам языке)
2. настройка бота.
Так вот задача 2 совсем не представляет никакой проблемы. Основное тут вовсе не бот, а то как реализовать само наложение фильтров.
Т.е. я хочу сказать, что если вы ждете, что вас научат накладывать фильтры (условно), то вам нужно искать такую информацию вовсе не в статье про бота.
Я и сам знаю как накладывать фильтры. Я говорю о том, что если уж и писать статью о ботах, то рассказать не как делать эхо бота, а как делать нечто чуть сложнее, но зато чуть интереснее.

Пусть вместо наложения фильтров будет мини-игра на основе телеграмм бота. Мини-игра в одно сообщение. Рассказать бы как редактировать сообщения, inline кнопки, логика, работа с БД на той же heroku. Это куда интереснее
Я люблю создавать ботов для TG, VK, LINE… Больше всего люблю писать обработчики команд, умные (сейчас у меня обработчик команд умеет в роли, права и написан на PL/pgSQL а сам бот написан на Elixir). Да, тут реально есть что рассказать. Но явно не то, как запушить вебхук сервер на хероку.
Автор мог бы больше рассказать про github.com/tdlib/telegram-bot-api как он устроен и в чем преимущество. Или написать бота на чистом tdlib. Это было бы правда интересно и необычно!

А почему не на aiogram? Если уж по нормальному делать...

На личном опыте асинхронность плохо работает на хероку. Вызовы функций пропадают на 10 минут, а потом запускаются (нагрузки другими вызовами при этом нет). Так же не очень понятно, зачем пихать всюду асинхронность, если того не требует задача. Замечу, что flask принимает новые сообщения асинхронно относительно обработки этих сообщений.

Ммм… не буду значить для хостинга ботов Хероку использовать)

Простите меня старпера времен BBS-ок, но очень мне инетресно, а чем Вас всех так увлекает эта фигня с чатами сегодня? Ну в смысле возможность чатиться была еще в 93 году, а зачем и почему она стала так популярна сегодня? Почему вы ее суете в каждое прилоежние?

Скорость создания и кроссплатформенность за счёт телеграма. Если бы я хотел сделать какое-то приложение на все платформы, то как минимум затратил бы гораздо больше ресурсов. Это тема похожа на Блиц-приложения на айфоне. В том плане, что для таких мелких задач пользователь не будет ставить отдельное приложение, а боты в телеграме (и не только) просто ещё один чат. А веб в этом смысле тоже затратен, потому что для разных устройств нужна разная верстка.

На бесплатном тарифе приложение на Heroku автоматически засыпает после 30 минут бездействия, Вы как-то с этим боролись или для бота это не критично? Ещё есть принудительный перезапуск не менее 1 раза в сутки. Незасыпающее приложение съест месячный лимит за 3 недели, для увеличения лимита нужна привязанная кредитка.

Кредитку привязал, это не проблема (там нет строгой проверки на правильность введенных данных). Именно для ботов из этой статьи сервер засыпает. Ну отвечает секунд за 10, если до этого спал (не думаю, что это критично). А обойти это легко. Я просто на гитлабе поставил скрипт-пингер по расписанию каждые 20 минут.


Что касается перезапуска каждые сутки, это не критично, если сохранять данные в БД, а не в словарик… Оно перезапустится ночью, и никто не заметит.

Можно себя же пинговать изнутри. В данном случае надо запускать такую функции в отдельном потоке.

Sign up to leave a comment.

Articles