На чем лучше писать бота telegram

GeekBrains

25 лучших библиотек для написания Telegram чатботов в 2020 году

Bots Club

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

Любопытные факты

  • Мы нашли целых три библиотеки Telebot на разных языках, которые не связаны друг с другом
  • Во всех популярных языках обязательно есть одна популярная, но слабо документированная библиотека, и одна хорошо документированная, но отстающая в популярности
  • В Bots Club всегда будут рады вашим ботам, поэтому не забудьте опубликовать их после релиза! 😉

.Net остаётся крайне популярным для разработки устойчивых финансовых приложений. Но и у его поклонников нашлось время для создания крайне популярной библиотеки .NET Client for Telegram Bot API. Более 1,4 тыс звёзд на GitHub и более 3,5 тыс проектов на её основе.

C++ не является мейнстримным языком для написания чатботов, однако и здесь можно найти свои жемчужины.

  • Например, tgbot-cpp от российского разработчика Олега Морозенкова, ныне поддерживаемую 27 контрибуторами и имеющую 361 звезду на GitHub;
  • или LibTelegram из Великобритании от программиста slowriot, чуть менее популярную, но лучше документированную

Elixir

Разработчики активно набирающего популярность Elixir создали две прекрасные библиотеки для работы с чатботами:

    от японского разработчика Yu Zhang, уже сплотила вокруг себя 34 контрибуторов и заслужила 293 звезды на GitHub от бразильца João Ferreira хорошо документирована и уже отмечена 113 звёздами

Энтузиасты языка Go также не остались в стороне от разработки чатботов для Telegram.

    имеет более 2,3 тыс звёзд на GitHub благодаря усилиям 70 контрибуторов.

  • Однако ему на пятки наступает Telebot от Ian P Badtrousers, обретший свою армию поклонников, имеющий более 1,4 тыс звёзд и подробную документацию.

Haskell

Мы смогли найти одну достойную библиотеку для этого языка: telegram-api от klappvisor, к разработке которой уже подключились 18 других разработчиков.

Java — один из старейших языков, на базе которого работают миллиарды устройств и приложений. Несмотря на появление модных альтернатив, построенных на базе JVM (таких, как Scala и Kotlin), ванильный Java по-прежнему остаётся популярным.

  • Самым популярным решением для построения Telegram ботов на Java является Telegram Bot Java Library от испанского разработчика Ruben Bermudez. Более 2 тысяч звёзд и 616 форков на GitHub.
  • Стоит также обратить внимание на немного менее популярную, но при этом хорошо документированную библиотеку Java Telegram Bot API от Стаса Паршина, используемую сотнями разработчиков и имеющую 680 звёзд на GitHub.

Kotlin

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

Лучшим решением для написания своего бота для Telegram на Kotlin на данный момент является библиотека Kotlin Telegram Bot от испанского разработчика Iván Martín. Более двухсот звёзд на GitHub и 20 контрибуторов.

Отдельного упоминания заслуживает решение Telegraff от российского разработчика Руслана Молчанова с 93 звёздами на GitHub.

Node JS

Node JS приобрёл большую популярность среди разработчиков из-за своей простоты и обилия библиотек.

  • Лучшим фреймворком на Node JS заслуженно считается Telegram Bot API от испанского разработчика Yago. Пройдя долгий путь с 2015 года, эта библиотека получила более 4,5 тысяч звёзд на GitHub, поддерживается 67 контрибуторами и используется более, чем 5,000 разработчиков.
  • Также замечательным решением является telegraf от Виталия Домникова и Сергея Совы, с более чем 3,6к звёздами и 6,5к проектами, реализованных на нём.

Наверное, ни один язык не вызывает такого горячего обсуждения, как PHP. Поэтому неудивительно, что PHP разработчики также приложили усилия к созданию качественных библиотек для построения чатботов. Мы рекомендуем обратить внимание на следующие:

    от Avtandil Kikabidze и Armando Lüscher, с более, чем 2,3 тыс. звёзд на GitHub и используемый в сотнях проектов от Irfaq Syed: 1,7 тыс. звёзд и 27 контрибуторов от Camilo Sperberg с 610 звёздами и крепкой поддержкой сообщества , развиваемый сообществом из 26 разработчиков и получивший уже 614 звёзд

Python

Python стал крайне модным в последнее время, особенно в среде аналитиков. Благодаря этому, появилось множество решений, облегчающих работу разработчиков. Остановимся на лучших из них.

    имеет более 11,5 тысяч звёзд на GitHub, используется тысячами разработчиков и активно поддерживается сообществом (141 контрибутор).

  • Также профессиональные разработчики оценят AIOGram с почти тысячей звёзд и более 60 контрибуторами

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

  • Если вы его поклонник, то вам стоит обратить внимание на telegram-bot-ruby, библиотеку от Александра Типугина, имеющую почти тысячу звёзд на GitHub и используемую в более, чем 1300 проектах.
  • Также, возможно, вас заинтересует Telegram::Bot от Макса Меленьтева, с очень подробной документацией.

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

Если вы решили создать своего бота на Rust, то лучшим выбором для вас будут следующие библиотеки:

    от мультинацональной команды разработчиков, с почти 500 звёздами на GitHub

  • Чуть менее популярная, но лучше документированная teloxide
  • Наконец, молодая, но набирающая популярность Telebot от разработчика Lorenz

Scala

Scala крайне любим разработчиками систем для обработки больших массивов данных. И со свойственной им основательностью они создали Canoe (от Юрия Слинкина), прекрасную библиотеку для быстрой разработки сценариев чатбота.

Также рекомендуем обратить внимание на bot4s от Alfono Peterssen, набравшего 300 звёзд на GitHub.

Swift

Несмотря на свою ориентированность прежде всего на iOS-разработку, Swift-разработчики могут также порадовать нас своими библиотеками для чатботов.

  • К примеру, Telegram Bot SDK от разработчика Rapier, объединившего вокруг себя 10 единомышленников и получившего почти 250 звёзд на GitHub.
  • Или чуть менее популярный Telegrammer от Гиви Патаридзе, которому помогают ещё 4 контрибутора.

Знаете ли вы другие библиотеки, достойные упоминания? Напишите о них в комментариях!

О Bots Club

Мир чатботов Telegram богат, прекрасен, но крайне непрозрачен. Вы не доверяете ботам, а их разработчики не знают, как им завоевать ваше доверие.

В Bots Club мы создаём уютное место для общения и позволяем пользователям открыть для себя этот мир: задать вопросы разработчикам, поучаствовать в акциях, оставить отзыв и многое другое.

Bots Club — место, где люди находят себе ботов.

Подпишитесь на нас в социальных сетях и следите за новостями в нашем канале Telegram.

Написать телеграмм бота за 20 минут, это просто

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

Интересно. Значит можно сделать телеграм бота связанного с гугл таблицей?

Не буду критиковать. Но вот вопрос, а зачем это нужно?

Vds можно арендовать за 2$, на нём можно раскатать питон, ноду, пых и подключить какой-нибудь готовый плагин для бота. В итоге можно будет творить всё что угодно, не оглядываясь на гугл-таблицы.

Юникодия v0.1 — моя энциклопедия символов

Я ещё студентом хотел сделать энциклопедию символов Юникода. И за всё это время, пока я хотел, Юникод разросся с 49 тысяч символов до 140 тысяч.

Но всё-таки я сделал, хоть и не до конца, и получилась такая себе замена Таблицы символов Windows. Вот результат 4,5 месяцев работы одного человека в нерабочее время.

Юникодия v0.1 — моя энциклопедия символов Unicode, Windows, Программа, Длиннопост, Шрифт, Разработка, Приложение, Программирование, Таблица

Сами понимаете, ни один шрифт не покроет всего Юникода. Кто-то предлагает комплект из трёх шрифтов, покрывающий весь Юникод 13 — но этот комплект коммерческий, и качество я не проверял. А нам, опенсорсникам, приходится искать — и хорошо, что Гугл сделал проект Noto (внимание, шрифты лучше брать прямо с их Гитхаба).

Но не Noto единым: на арабский, сирийский и ККЯ (китайский, корейский, японский) они просто забили, и они давно и безнадёжно неполные. Лаосский, готский и один из грузинских алфавитов — неканоничные глифы. Венгерские руны — просто жестоко глючат. Так что поиск шрифтов был сложным делом.

Да, вот ссылка на программу. Она бесплатная и открытая, пока только для Windows.

Программа на данный момент может немного. Она покрывает всю базовую и 2-ю плоскость Юникода, изрядный кусок 1-й и примерно половину 3-й. Позволяет простейшую навигацию по этому хозяйству, копирует символы в буфер, даёт небольшую информацию по письменностям, блокам и разным терминам — вот и всё.

Название самое лобовое: Юникод+энциклопедия → Юникодия.

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

Юникодия v0.1 — моя энциклопедия символов Unicode, Windows, Программа, Длиннопост, Шрифт, Разработка, Приложение, Программирование, Таблица

Но потом подумал, что это уж слишком. У меня уже были мысли каким-то образом разделить письменности на Европу, Азию, Тихий океан, Америку, Африку и международные — так что возникла идея собрать букву U из разноцветных кубиков.

Юникодия v0.1 — моя энциклопедия символов Unicode, Windows, Программа, Длиннопост, Шрифт, Разработка, Приложение, Программирование, Таблица

Эти кубики и дали идею навигации по трёмстам блокам. Азию, как видите, я дополнительно разделил на ККЯ и остальное.

ККЯ — это примерно ¾ Юникода, и ткни куда-то в середину таблицы — попадёшь в иероглиф. Потому все ККЯ, кроме часто нужных катаканы и хираганы (японских язбук), изначально свёрнуты.

Юникодия v0.1 — моя энциклопедия символов Unicode, Windows, Программа, Длиннопост, Шрифт, Разработка, Приложение, Программирование, Таблица

Почему настольная программа? Во-первых, я настольный программист. Во-вторых, выяснилось, что веб-версии крайне тормознутые, что делу показа здоровенной таблицы не способствует. В-третьих, появилась интересная задача, исполнимая только в настольном варианте: есть символ — какие системные шрифты его поддерживают?

Что будет дальше? Показ как можно большего куска Юникода — и точно всех не-ККЯ. (Кстати, индийскую письменность нандинагари за неимением шрифта я сам как-то коряво начёркал.) Поиск, как без него — пока он «засерен», но это первое, что будет работать. Некий рубрикатор для эмодзи. Может, какие-то утилиты для китайских иероглифов — но без посторонней помощи я этого не сделаю. Утилита для показа разных начертаний жестового письма Валери Саттон — я уже знаю, какая, это просто не было приоритетом версии 0.1.

Вот «моргалы выколю» на жестовом письме Саттон.

Юникодия v0.1 — моя энциклопедия символов Unicode, Windows, Программа, Длиннопост, Шрифт, Разработка, Приложение, Программирование, Таблица

Есть ли аналоги? Наш самый первый аналог — Таблица символов Windows. Правда, она ограничена одной задачей — поиском в шрифтах того или иного символа. А со здоровенным Юникодом часта другая задача — найти, есть ли в каком-то системном шрифте редкий символ.

Во-вторых, бесчисленное множество веб-версий баз Юникода. Их и показывать не стоит — они унылы как смерть, и ничего нового не привносят: пользуются системными шрифтами, не содержат никакой собственной информации.

Unicode-table.com — внимание, без адблокера не соваться. Автор сделал большую работу, но всё ещё много автоматических переводов и мало нетривиальной информации, к тому же сайт около года не обновляется. На самом деле мы с его автором сотрудничаем: я деру данные у него, он у меня.

BabelMap — бесплатная программа с моей же философией. Она несколько меньше, так как не тащит полные шрифты. Зато автор китаевед, и есть неплохой поиск по иероглифам.

Для чего я выложил здесь? Для пиара, как без него. Во-вторых, только пользователи подскажут, как улучшить интерфейс, какая нужна функциональность и какие неточности в описаниях.

Спасибо за внимание!

Юникодия v0.1 — моя энциклопедия символов Unicode, Windows, Программа, Длиннопост, Шрифт, Разработка, Приложение, Программирование, Таблица

А на них вся ИНДУСтрия и держится

А на них вся ИНДУСтрия и держится IT юмор, IT, Туториал, Джун, Программирование

Новый тест TelegramTV бота

Доброго времени суток.

Появилось немного свободного времени. И я решил посвятить это время своему хобби. "Говнокодингу". Уверен так назовут мой код, гуру.

А именно доработкой своего TelegramTV бота: @t_tv_bot (текущая версия)

Что я сделал в новой версии на данный момент:

— Взял за основу базы каналов всем нам известный сервис iPTV, чье имя нельзя произносить в слух. Более 1000 каналов.

— Добавил возможность подгрузить весь список каналов по команде /playlist

— Добавил возможность посмотреть список доступных групп каналов по команде /groups

— Добавил возможность подгрузить список каналов только нужной группы

— Добавил поиск нужного канала в базе по названию

Ссылка на тестовый TelegramTV bot: @ttvdemo_bot

Приглашаю всех протестить мое творение и высказать свои мнения.

По ограничениям на данный момент.

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

Ссылки на потоки во время теста временные, поэтому копировать, воровать и прочее бесполезно. Не тратьте время.

С нетерпением жду комментарии

Новый тест TelegramTV бота Телевидение, Бот, Программирование, Программист, Python, Telegram, Telegram бот

Выброс из головы , достойный на новый проект . Часть #2 Наверное конец .

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

Работает — палкой и смекалкой , но все же , возможно когда-нибудь пригодится человечеству ( вероятность = 0 )

Остановились в прошлой части мы на том , что извлекли видео и отдельно звуковую дорожку .

Проблема сразу меня атаковала и отняла 4 часа моего времени на её решение ( диванные эксперты справились бы за 1 минуту но я еще молод и глуп что бы просить помощи у великих .. )
Так вот , аудиофайл с youtube скачивается хоть и как mp3 файл , но mimetype у него webm , для этого пришлось скачать еще 3 файла с ffmpeg и закинуть в мою директорию указав в python .

import speech_recognition as sr

from os import path

from pydub import AudioSegment

с помощью библиотеки AudioSegment я импортирую исходный трек
sound = AudioSegment.from_file(namefile+".mp3")
beginning = sound + 1
Прибавляю 1db громкости ## мне помогло немного повысить точность распознания , если криво распознает убрать .

И теперь, сохраняет файл в wav формате со всеми изменениями .
beginning.export("outputfile.wav", format="wav")

Далее переходим к блоку распознания и так :

Импортируем библиотеки , да где то выше я уже импортировал их , но НУЖНО БОЛЬШЕ ИМПОРТОВ .
import speech_recognition
from speech_recognition import *

Берем наш файл и объявляем объект

with sr.AudioFile(‘outputfile.wav’) as source:

audio = r.record(source) чтение объекта ( аудиофайла)

print(type(audio)) выводим тип аудиофайла , удостоверяемся что он объект своими глазами

massslov = [] — сюда будут выводиться слова которые нашел sphinx

out = r.recognize_sphinx(audio, language="en-US")

## далее идут исключения если ничего не нашел или невозможно найти .

print("Sphinx could not understand audio")

except sr.RequestError as e:

print("Sphinx error; <0>".format(e))

print("— %s seconds —" % (time.time() — start_time)) ## считаю сколько времени займет процедура

Кстати, процедура не быстрая , 2 минутный трек читает около 80 сек . (На моём пеньке , у вас может будет быстрее)

print(massslov) ## выводим массив найденных слов

Выброс из головы , достойный на новый проект . Часть #2 Наверное конец . Python, Программирование, Google, Нейронные сети, Google Translate, Перевод, Видео, Длиннопост

Давайте переведём эти слова

Использовать будем библиотеку deep_translator

from deep_translator import GoogleTranslator

translated = GoogleTranslator(source=’auto’, target=’ru’).translate(to_translate)

И на выходе получаем это :

Выброс из головы , достойный на новый проект . Часть #2 Наверное конец . Python, Программирование, Google, Нейронные сети, Google Translate, Перевод, Видео, Длиннопост

Получится что-то похожее на текст . Похожее на перевод .

Далее нужно этот текст озвучить :

Используем библиотеку gtts

from gtts import gTTS ## импортируем библиотеку

import os ## системные утилиты будет для сохранения нужна

text = translated ## говорим что текст для озвучки хранится в переменной translated

language = ‘ru’ # язык русский

speech = gTTS(text = text, lang = language, slow = False) ## с параметрами не игрался , возможно можно настроить более тонко , мне лень было честно , со slow можно играться , если в видео говорят быстро ставим True , а если нет — False.

speech.save ("text.mp3") ## сохраняем в text.mp3 в нашей директории

И так ,есть видео , есть mp3 файл с переводом , давайте совместим видео с аудиодорожкой .

Используем библиотеку mhmovie

from mhmovie import * ## импортируем библиотеку

GeekBrains

m = Movie(namefile+".mpeg") # указываем видеофайл

mu = Music(‘text.mp3’) # указываем звуковой файл

final = m+mu #соединить звук и видео

final.save (namefile+"film.mp4") ## сохраняем результат

и на выходе получаем ролик с переводом , открываем и наслаждаемся .. ( ржем с перевода ) мне стыдно 🙁

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

Все остальное допилю ,

Берем видео (Английская болтовня )

А получаем вот что :

Выброс из головы , достойный на новый проект . Часть #1

Сидел как-то смотрел я Youtube и подумал, вот бы была бы возможность взять англоязычный ролик, вытащить его, отделить от ролика звуковую дорожку, в помощь python и любого распознавателя речи (а их много) вытащить массив слов для перевода.

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

Выброс из головы , достойный на новый проект . Часть #1 YouTube, Python, Программирование, Google, Google Translate, Text-To-Speech, Видео, Длиннопост

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

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

И так, как хороший ленивый программист игнорируем тз, а список требований сокращаем в 100 раз для своего удобства. В целом нам требуется :

1.Скачать видео из Youtube по URL

2.Отделить видео от аудио и сохранить 2 файла в одну папку

3.Вытащить текст из аудио

5.Из текста создать новую дорожку

6.Наложить переведенную дорожку на оригинальную дорожку ( оригинальную немного приглушить что бы лучше было слышно перевод )

7.Наложить звук обратно на видео

8.Наслаждаться ОТМЕННЫМ переводом .

Выброс из головы , достойный на новый проект . Часть #1 YouTube, Python, Программирование, Google, Google Translate, Text-To-Speech, Видео, Длиннопост

Создаем py файл, и начинаем калякать.

Для того, чтобы скачать видео нам требуется библиотека "youtube_dl" следственно импортируем её.

import os ## Требуется для os.path и поиска пути директории

import youtube_dl # импортирую библиотеку

result = ydl.extract_info( ##извлекаем информацию о видеофайле из ссылки

download=False ## Скачать информацию True False

if ‘entries’ in result:

# Если плейлист или список

И так на выходе получаем словарь, в котором начинаем рыться и искать URL на видео.

После копания в данном словаре я нашел что видео и звуковая дорожка находятся отдельно. Прекрасно, тогда скачиваем всё!

Поиск ключа и его значений:

slovar = video.keys() # выводим все ключи словаря

videos = video[‘formats’][6][‘url’] ## URL видео было в списке "formats"

audios = video[‘formats’][3][‘url’] ## URL аудио было в списке "formats"

Скачивать решил через WGET библиотеку.

Получаю два загруженных файла в папке, один видео, второй звук.

Получаем пути этих файлов:

path_vid = os.path.join(os.getcwd(), ‘yt_vid.mpeg’) ## Путь до видеофайла

path_audio = os.path.join(os.getcwd(), ‘yt_sound.mp3’) ## Путь до аудиофайла

Теперь перехожу к обработке . Но уже в следующем посте .

D-функции в гугл таблицах (GS7)

Давненько не писал, дорогие комрады + задолжал чатланам-подписчикам пост про парсер на питоне. Все будет, в ближайшее время возобновлю написание постов.

Сейчас решил поделиться недавним своим открытием.

Мне этого функционала оч не хватало и с его открытием моя жизнь табличкодела станет чуть проще. Речь пойдет о D-функциях.

Это аналоги обычных функций sum, count, counta, product и т.д. с тем лишь отличием, что с данными оно себя ведет как с базой данных и сам синтаксис функций похож на упрощенные SQL-запросы.

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

Покажу на примере:

Есть таблица с данными. Назову ее целиком DATA:

D-функции в гугл таблицах (GS7) Google, Таблица, Электронные таблицы, Длиннопост

Теперь попробуем с помощью D-функции dcounta (БСЧЁТА в русской версии) получить кол-во продаж у второго сейла:

D-функции в гугл таблицах (GS7) Google, Таблица, Электронные таблицы, Длиннопост

Первый аргумент — таблица, с которой мы будем работать. Может быть задана и как a1:c6.

Второй — столбец, с которым мы работаем.

Третий — пачка массивов с условиями. Сейчас подробнее расскажу как работают условия здесь.

Для этого попробую получить сумму всех продаж первого сейла после 10.06:

D-функции в гугл таблицах (GS7) Google, Таблица, Электронные таблицы, Длиннопост

Здесь я в явном виде записал массив с условиями. Они пишутся вертикально — сверху имя столбца с условием, снизу — само условие.

Можно записать это внутри формулы. Чтобы задать массив в формуле нужно вписать значения в фигурные скобки. Для добавления строки нужно использовать ; а для столбца , (\ в русской версии таблиц):

D-функции в гугл таблицах (GS7) Google, Таблица, Электронные таблицы, Длиннопост

И сама формула будет выглядеть:

D-функции в гугл таблицах (GS7) Google, Таблица, Электронные таблицы, Длиннопост

Про функционал написал. Где это лучше всего использовать — при импорте данных из других таблиц. Предположим, что мне нужно вытащить сумму всех продаж конкретного сейла в другую таблицу. Как это я делал раньше — писал фильтр с двумя импортами внутри (показывать буду в рамках одной таблицы, дабы не плодить):

D-функции в гугл таблицах (GS7) Google, Таблица, Электронные таблицы, Длиннопост

И теперь вариант с dsum:

D-функции в гугл таблицах (GS7) Google, Таблица, Электронные таблицы, Длиннопост

Проще и писать такие функции и читать формулы с этими функциями, т.к. столбцы заданы не их диапазонами, а с помощью их имен.

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

Ссылка на таблицу:

Ссылка на документацию:

Геннадий Короткевич стал чемпионом Google Code Jam в 6-й раз подряд

Белорус Геннадий Короткевич, ныне обучающийся в ИТМО, 9 августа в 6-й раз подряд стал победителем престижнейшего чемпионата мира по программированию — Google Code Jam.

Геннадий Короткевич стал чемпионом Google Code Jam в 6-й раз подряд Программирование, Спортивное программирование, Google, Республика Беларусь, ИТМО, Соревнования

На фото Геннадий Короткевич в центре, держит сертификат.

Новый Telegram бот для электронных книг

Вашему вниманию хотел бы представить своего бота для поиска и скачивания электронных книг в Телеграм https://t.me/boookovka_bot .
На написание своего бота меня побудила потребность быстрого поиска различной технической литературы. Я сам работаю программистом в одной из Екатеринбургских компаний, увлекаюсь машинным обучением, немного электроникой и конечно, люблю читать художественную литературу. Вначале нашел бота Флибуста, неплохой бот, достаточно много популярных книг, но почти нет книг по IT тематике. Такие книги я ищу на рутрекере, и выкачиваю торрентом. Это хорошо, когда ты работаешь с компьютера или ноутбука. Но часто я еду в дороге и смотрю лекции, где рекомендуют ту или иную книгу. Хотелось бы сразу найти ее и посмотреть содежание, предисловие. А так как я любитель Телеграм из-за его удобства и возможностей создания своих ботов для автоматизации повседневных задач, то решил почему бы не склепать робота, который содержит пополняемую базу книг, интересных мне тем, и который быстро бы смог найти и скачать необходимую книгу?
Сказано — сделано, я начал с парсера для рутрекера, по пути изучая python либу scrapy. Наполнив базу magnet-линками, я принялся писать бота, который выполнял бы хотя бы функцию поиска.

Новый Telegram бот для электронных книг Telegram бот, Программирование, Golang, Postgresql, Книги, Длиннопост

На реализацию поиска ушло примерно полдня, я воспользовался обычным полнотекстовым поиском в postgresql. Далее, я на неделю ушёл в свою постоянную работу, попутно в фоне обдумывая план, как выкачивать книги. Идея оказалась примитивна. Обычно тяжелые долгие задачи нужно прятать в "фон", то есть когда боту приходит команда "скачай книгу X", бот ставит задание в очередь задач, откуда ее забирает фоновый процесс, и начинает выполнять задание. Так же и у меня, единственноая проблема была — как оповестить бота и клиента, что книга скачалась?
На этот счет у меня была уже своя реализация шины событий, тем более и брокер у меня уже был для фоновых задач rabbitmq. Теперь когда фоновый процесс скачает файл, он отправляет в шину событие в виде json-сообщения о том, что скачал и кто просил скачать, в свою очередь тот, кто подписан на события шины сообщений, а пока это только бот, парсит сообщение из шины и отдает файл клиенту.

Чат-боты Telegram как источник пассивного дохода от $2 300 до $15 000 в месяц

Гости недавней передачи Олега Артишука поделились инсайтами создания чат-ботов в Telegram. Самое ценное из интервью мы собрали в этой статье. Из неё вы узнаете сколько стоит разработка и продвижение чат-ботов, как на них зарабатывать и какие перспективы развития у этого направления бизнеса в Telegram.

В беседе принимали участие:

  • Дмитрий Зайцев — визионер Telega.in, автор канала «Активный пиар»;
  • Вадим Курило — интернет-предприниматель, автор Telegram-канала «Трафик и клики»;
  • Корнелий Найда — основатель Telegram-сервисов Channely и @crosser_bot;
  • Матвей Грамович – основатель и CEO проекта Zodier;
  • Сергей Цветаев — основатель сервиса для аналитики Telegram-каналов Telemetr;
  • Алексей Корнелюк — автор Telegram-канала «Книги на миллион».

Особенности чат-ботов Telegram
Дмитрий Зайцев рассказал о том, что Telegram не дает возможности видеть аудиторию чат-ботов. По этой причине, даже сам владелец бота не знает, сколько у него активных подписчиков и в каких гео. Соответственно, потенциальный рекламодатель не может из сторонних сервисов получить релевантную статистику чат-бота и оценить адекватность стоимости рекламы. Технически только владелец бота может получить минимальную информацию с сервера, на котором он размещен.

В 2021 году, как считает Дмитрий, ожидается решение проблемы с доступом к статистике ботов со стороны Telegram. Это будет сильным драйвером роста числа чат-ботов, поскольку даст возможность для формирования рынка их купли-продажи.

Согласен с мнением коллеги Корнелий Найда — он говорит, что проблема доступа к информации действительно тормозит развитие монетизации чат-ботов. При этом Корнелий не столь оптимистичен по поводу того, что Telegram предоставит доступ к подробной информации о боте. По его мнению, технически дать доступ к статистике возможно только раскрыв те данные, которые овнеры чат-ботов не захотят выносить на всеобщее обозрение.

Как продвигают чат-боты?
Сегодня основной способ продвижения бота — это создание его с какой-то полезной функцией, затем «вброс» в различные комьюнити, в которых он наберёт первых подписчиков. Далее аудитория набирается путём «сарафанного радио».

Успешность боту, по мнению Дмитрия Зайцева, может гарантировать аудитория не менее чем в несколько сотен тысяч подписчиков. Привлечь такое количество людей в чат-бот будет достаточно дорого, поэтому в платное продвижение вкладываются, как правило, только на старте, в отличие от тех же Telegram-каналов.

О специфике разработки и продвижения на примере чат-бота для сервиса знакомств Zodier
В рекламное продвижение созданного компанией Матвея Грамовича чат-бота было вложено $1 000. В качестве источников трафика использовали Instagram и Telegram-каналы. Второй источник показал лучшие результаты, поскольку сократилась воронка — фактически лили с «телеги на телегу».

Рекламу Матвей заказал единоразово, сразу после запуска бота. После этого стабильное ежемесячное увеличение аудитории в 1,5 раза поддерживается без денежных вложений в продвижение. Спустя год после запуска чат-бота, он продолжает тем же темпом наращивать подписчиков и сегодня его аудитория превышает 150 000 человек.

Разработка чат-бота заняла у команды Грамовича 3 недели и не потребовала значительных вложений. Однако, когда количество подписчиков бота перевалило за 10 000 человек, ребята столкнулись с необходимостью проводить технические доработки. Причиной стало то, что архитектура чат-бота не была рассчитана на такую активность аудитории и он стал сильно «тормозить» — команда не успевала обрабатывать заявки подписчиков.

Чат-бот Zodier команда практически полностью переделала и его функционалу стало доступно обработка действия сразу многих пользователей. Кроме того, бот предоставляет конечную пользу продвигаемого продукта (знакомства). Такие доработки обошлись компании в $200 000.

Как продвигать Telegram-каналы посредством чат-ботов
Принцип продвижения каналов через чат-боты, озвученный Вадимом Курило, следующий: создаётся полезный бот и юзер, пытаясь его активировать, получает сообщение о необходимости быть подписанным на такой-то канал. Например, бот, созданный для мониторинга цен на товары, активируется при подписке на канал, который продвигает товары с AliExpress.

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

В озвученной выше модели продвижения есть такая «плюшка»: если контент не понравился пользователю, то он отпишется с канала. При этом, скорее всего, о забудет о боте, который не шлёт ему уведомления, но продолжает оставаться активным. Таким образом, чат-бот можно использовать для массовой рассылки, информация из которой может заинтересовать отписавшихся с канала юзеров.

Стоимость разработки чат-бота
Среднюю стоимость разработки простого по функционалу чат-бота, который будет сателлитом Telegram-канала, Вадим Курило оценивает в $180-$300.

Разработка чат-бота в Telegram, по мнению Дмитрия Зайцева, совсем несложная задача для человека, который имеет навыки html-кодирования и может создать, например, простой сайт-визитку.

Если есть необходимость в создании какого-либо сложно функционального чат-бота, то для этого существуют как тематические фриланс-чаты в самом Telegram, так и компании, профессионально занимающиеся их разработкой. Дмитрий утверждает, что предел стоимости чат-бота Telegram — это $310. Всё, что выше этого ценника, будет напрасной тратой денег.

Модели монетизации чат-бота в Telegram
Основное назначение чат-ботов — это автоматизация какого либо процесса, уверен Корнелий Найда. Соответственно, зарабатывать на чат-ботах возможно только с помощью рекламы. Тут есть два способа — либо описанный выше вариант, когда бот является сателлитом Telegram-канала и занимается сбором подписчиков для него. Второй вариант — это запускать рекламу прям в боте, но для этого он должен быть интересным и иметь аудиторию в несколько тысяч подписчиков.

Пример монетизации «кино-бота» от Вадима Курило: создан чат-бот Telegram, который присылает пользователям новинки кино индустрии с возможностью просмотра фильма по ссылке. Ссылка ведёт на сайт гемблинг-партнерки, где есть раздел с фильмами, для просмотра которых необходимо зарегистрироваться. После регистрации юзер вместе с фильмами также получает периодические рассылки с акциями от партнерской сети (бонусы к первому депозиту и т.п.).

Из 1 000 пользователей, зарегистрированных для просмотра фильмов, около 20 становятся игроками казино. На первый взгляд, конверсия из общего трафика сайта в игроки 2% слишком мала. При этом стоит учитывать, что поток киноманов достаточно большой, и за короткий срок удалось раскачать аудиторию бота до 30 000 пользователей. Финансовыми результатами Вадим не поделился, поскольку ещё не получал выплат по RevShare, но эта схема показала свою работоспособность.

Прямых моделей монетизации чат-ботов не существует — так считает Дмитрий Зайцев. По его мнению, бот является инструментом для привлечения трафика, но не самостоятельным источником заработка. В качестве примера Дмитрий привел популярные некоторое время назад боты для скачивания видео из TikTok без водяного знака. Для работы с ботом требовалось подписаться на канал. Посредством таких ботов в каналы привлекли по несколько сот тысяч подписчиков.

Способ монетизации чат-бота от автора Telegram-канала «Книги на миллион»
Алексей Корнелюк создал свою методику по развитию голоса. Учитывая, что курсы ассоциируются у многих людей с инфоцыганством, Алексей решил создать Telegram-бота, реализовав в нем обучение своей методике улучшения голоса в виде игры.

В чат-боте Корнелюка, который называется «Gromich», есть 5 бесплатных уровней обучения, возможность записи своего голоса до и после прохождения игры и оценка результатов изменений. Начиная с 6 уровня, пользователю необходимо внести разовую оплату в размере $40.

В месяц чат-бот «Gromich» приносит Алексею около $2 300, причем без каких-либо вложений в его администрирование или продвижение.

Корнелюк также запускал чат-боты Telegram и в других тематиках. Команда Алексея пробовала делать боты по «харизме», «саммари», «биохаккингу», «логическому мышлению», но все они оказались неудачными в плане монетизации.

Очевидно, что сегодня Telegram-каналы являются более прибыльным бизнесом для Алексея, так как приносит десятки тысяч долларов — мы рассказывали о его кейсах в одной из своих статей.

ТОП-3 бота для администратора Telegram-канала
Сергей Цветаев поделился тремя ботами, полезными для владельцев/администраторов Telegram-каналов:

  1. Telemetr — отслеживает детальную статистику канала;
  2. FleepBot — бот-сервис, позволяющий создавать ботов для отложенного постинга или для обратной связи;
  3. Crosser_Bot — позволяет проводить анализ подписчиков чатов и каналов, защищать от наплыва ботов.

О последнем боте в списке рассказал его создатель Корнелий Найда. Первоначальная версия Crosser_Bot была создана на Python — это был обычный сайт, располагающейся на стороннем сервере. Бот давал возможность подключить к нему канал, посмотреть контент-план, запланировать публикацию, отредактировать и т.п.

Нехватка экспертизы членов команды Корнелия стало причиной того, что многие технические параметры не были учтены при первоначальной разработке чат-бота. При этом Crosser_Bot, ввиду отсутствия конкурентов, набирал популярность и стал перманентно глючить при большой нагрузке. В итоге команда решила полностью переписать его.

Обновленную бета-версию предложили протестировать уже существующим подписчикам бесплатно. После успешных тестов запустили новый Crosser_Bot на широкую аудиторию по подписке, стоимость которой составила $5-$9 за один канал.

Корнелий Найда признался, что после запуска обновленной версии бота им продолжительное время никто не занимался. В результате этого, функционал Crosser_Bot отстал как от новых возможностей Telegram, так и от быстро растущих конкурентов.

Полгода назад команда сделала очередные доработки чат-бота по улучшению его функционала. На сегодняшний день бот зарабатывает $15 000 в месяц. При этом в боте 40 000 каналов на аналитике и около 20 000 уникальных пользователей.

Рынок купли-продажи чат-ботов
Рынка чат-ботов сегодня не существует, уверен Вадим Курило. Причиной тому является то, что боты, как инструмент Telegram, появились относительно недавно и многие пользователи мессенджера/владельцы каналов просто не понимают принципы их работы, и преимущества.

Вадим условно разделяет всех чат-ботов Telegram на две категории. Одна часть несет в себе какую-то полезную составляющую, (например, бот мониторинга прогноза погоды). Цель второй категории — привлечение подписчиков в каналы. Даже при одинаковом количестве подписчиков в чат-ботах из разных условных категорий, число активной органической аудитории будет в разы отличаться в них. А поскольку детальную статистику по ботам получить невозможно, то и критериев для оценки их стоимости нет.

Чат-боты не представляют покупательского интереса сами по себе. Интерес вызывают те данные, которые бот собирает, считает Корнелий Найда.

Но продажа (читай слив) того массива данных, которые содержит в себе, например, Crosser_Bot, не представляет интереса для команды Корнелия. На авторитете сохранности данных в боте и дальнейшего улучшения функционала заработать можно гораздо больше, считает Найда.

Перспективы развития чат-ботов
Корнелий Найда уверен, что с развитием Telegram потребность в чат-ботах будет расти, равно как и суммы заработка на них.

Вадим Курило высказал мнение насчет опасений по поводу закрытия чат-ботов как таковых, поскольку изначально они были придуманы как инструмент для дополнительного сервиса, а их штампуют с нулевым функционалом только с целью сбора трафика. Вадим считает, что боты продолжат свое существование в Telegram, поскольку «трафикосборники» живут непродолжительное время, а полезные чат-боты будут развиваться. Их развитию и улучшению будет способствовать конкуренция — владельцы будут стараться выделить свой сервис на фоне других.

Дмитрий Зайцев разделяет точку зрения Вадима — он уверен в перспективности качественных чат-ботов и в том, что растущая конкуренция будет естественным образом убивать «мусорные» боты. Кстати, о жесткой конкуренции в Telegram мы уже писали в одной из своих статей.

Заключение
Сегодня чат-боты в Telegram являются уникальным инструментом, как для сбора трафика на каналы, так и для построения самостоятельного полезного сервиса в экосистеме Telegram.

Учитывая, что чат-боты как явление находятся на начальном этапе развития, их создание — отличная идея для построения своего бизнеса в Telegram.

Финансы — Телеграм-канал Партнеркина. Вся актуалочка в одном месте. Подписывайся и будь в курсе событий индустрии.

GeekBrains

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *