Как стать автором
Обновить

Комментарии 81

Я написал себе домашнего бота для скачивания видео с ютуба в папку на nas. Откуда старенький tv (ютуба на нем нет вменяемого) по dlna проигрывает. Оказалось довольно удобно, со смартфона или планшета ссылку просто боту кидаешь и он выкачивает и сообщает о действиях.

А долго выкачивает? Вообще крутое решение проблемы отсутствия ютуба на тв)

Вообще, приложение YT на конкретном ТВ достаточно отвратно работает во многих случаях. Если ролик для просмотра больше десятка минут, очень хочется иметь мух отдельно - котлеты отдельно, т.е. - иметь ролик отдельно от приложения, от YT, от их идиотских рекомендаций, от рекламы...

Так что бот для роликов кажется отличной идеей.

я уже забыл что такое реклама в YT, поскольку в РФ ее отключили. Но смотрю его, правда, на телефоне, а не телеке

В среднем меньше минуты. Глянул, 750Мб ролик около 1 минуты. (yt_dlp.YoutubeDL({'format': 'best', 'paths':...) Написано на Python, используется модуль yt_dlp, обмен с telegram bot api на requests без сложностей. Скрипт как демон просто запущен.

Правда быстро! Очень интересный способ. Спасибо, что поделились!

Крутое решение это подключить тв как монитор.

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

Да. Использую и планирую расширить уже существующую интеграцию бота с календарём

НЛО прилетело и опубликовало эту надпись здесь

Ой не. Перебор для меня) радует что в остальные источники кроме телеги мне пишут очень мало

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

По первому пункту - если без пересылки в телеграм, для скачивания файлов с сервера есть такая замечательная штука как scp )

Ну вот мне неудобно показалось запоминать путь, потом в отдельной вкладке вставлять его в команду scp.

Или есть другой способ?

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

ну в моем способе я уже нахожусь в папке через ssh и уже прям в этой папке через TAB файл автокомпличу

Я себе сделал бота, который собирает мемы из групп в ВК, которые я смотрел, и постит мне в ТГ (т.к. из вк ушел). Тоже удобная штука, все в одном месте и в больших количествах.
Если интересно, то вот - https://t.me/nueraul, но юмор у меня специфический :)

То есть что угодно, что посмотрели, сразу идет в телегу или только лайкнутое?

Нет, просто я выбрал группы в ВК, которые смотрел. Дальше просто утром бот проходится по всем группам из списка, сохраняет мемы, дальше считает отношение лайков к просмотрам, выкидывает 20% худших, остальное постит в телеграмм

я такое делал себе когда из вк ливнул. думал в тг нету норм мемов. оказалось это в вк нет норм мемов )

Поделись ссылкой на гит пожалуйста

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

Разве не 20?

Может увеличили, но все-равно очень мало, если пробовать постоянно экспериментировать.

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

Вопрос: где живут боты? На чем вы их крутите? Ведь они должны быть доступны 24/7

На серверах разных. Часть ботов на сервере в офисе, часть на арендованной VPS

Лень, конечно, двигатель прогресса. Я также в конфе по совместным играм тг с друзьями написал бота чтобы по тегу @all он как в слаке тегал всех, чтобы не перечислять по одному никнейму всех людей)

это похоже гениально! Спасибо за идею)

А есть какое-то решение, отличное от тг-клиента на питоне, который имеет доступ к методу получения участников группы?

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

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

Почему бы не использовать некого "прокси" бота для личных ботов дабы не так быстро расходовать лимит на них и не засорять список чатов? Да, нужно будет обдумать как сделать более удобную навигацию и переключение контекста в некоторых случаях, но у bot API полно методов позволяющих сделать это без вреда для опыта использования.

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

Тогда можно просто одного бота использовать, с переключением контекста )

Ради эксперемента написал бота который рассказывает каждый час анекдоты и выдает умную цитату из книги)

https://t.me/chats_translator_bot - переводчик для чатов, говоришь боту с кем говорить будешь, и он пересылает все сообщения с переводом на язык получателя и обратно

Я тоже погоду/пробки "мониторил" через бота (так было быстрее, чем открывать на телефоне страничку яндекса).
Только я заморочился - специально вырезал рекламу и ненужные элементы странички:

ого! я забил на рекламу

А можно чуть подробнее как именно вы скриншот формировали?

const browser = await puppeteer.launch(launchOptions)
const page = await browser.newPage()

// set viewport and user agent (just in case for nice viewing)
await page.setViewport({ width: 1400, height: 700 })
await page.setUserAgent('Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36')

// go to the target web
let url = 'ссылка с уже настроенным маршрутом в яндекс картах'
await page.goto(url)
const path = './route.jpg'

await page.screenshot({
    path
  })
if (!messageId) {
    const message = await bot.telegram.sendPhoto(userId, {
      source: res.path
    }, {
      caption: res.timeStr
    })
    messageId = message.message_id
    return message
  } else {
    // const message1 = await bot.telegram.editMessageCaption(userId, messageId, null, res.timeStr)
    const message2 = await bot.telegram.editMessageMedia(userId, messageId, null, {
      type: 'photo',
      media: {
        source: res.path
      },
      caption: res.timeStr + '\n\n' + (new Date().toISOString())
    })
    console.log('edited', message2)
  }

Вот так

Puppeteer под NodeJS. Заюзаю, как раз в одной задачке надо рендерить картинку, думаю так будет проще всего.

Спасибо большое, подписан везде, удачи.

Телеграм-боты прекрасны тем, что позволяют забыть(и)ть про базовый фронт и углубиться в то, что ты хочешь. Очень много времени экономишь и получаешь вполне себе приемлемый результат

А ещё кроссплатформенность! Вообще тема!

НЛО прилетело и опубликовало эту надпись здесь

Фронт просто не имеет типовых решений которые можно накидать на коленке. Даже готовые либы фронтовые это монстры. Нет этой декларативности, одна императивщина.

Сам восхищаюсь тем, что можно делать удобный для себя интерфейс, не делая интерфейс:) В этом плане телеграм, конечно, порадовал сильно!

Дополню список своим ботом: Позволяет создавать issue в репозиториях GitHub-организации и назначать исполнителя: https://github.com/annndruha/issue-github-telegram-bot

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

Отличный вариант!)

Заинтересовал amorevbot (личный секретарь). Каким образом создаются изолированные треды? Каждый тред = диалог с отдельным ботом?

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

У меня в боте так логи сделаны Ж)

Ого, не знал про такой функционал телеги. Спасибо!

Я сейчас в расширении функционала, чтобы он темы создавал. Как раз 5 минут назад гуглил ест ли лимит на темы. Если лимита нет, то было бы очень удобно

По заголовку ожидал, чтоб будет код ботов, а не просто "идеи"

У меня есть своя компания-галера, где мы пишем разные проекты (в том числе ботов) на аутсорсе.

=)

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

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

Если про "отправку уведомлений", то большинство сервисов и crm имеет встроенный функционал отправки оповещений на почту. Их можно перекидывать в телегу вот этим ботом:

https://vb64.github.io/telegram.email.notify/docs/ru/guide.html

Ага. Это вообще базовое использование телеграма

Я написал себе довольно специфичного телеграм-бота - справочник биологических добавок. Кидаешь в бота список добавок, а он говорит, описание, какие побочки, что безопасно.

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

О круто! Я думал себе бота написать, который будет считать КБЖу по фото еды. Голосом наговариваю что я сьел, chatGPT считает кбжу, Yargy parser выдергивает значения и сохраняет:)

Но чет пока дальше "думал написать" не ушел

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

Я немного не в теме. Что значит "разметить датасет"? Спасибо что поделились идеей бота

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

Не думал о таком способе) Но вопрос — можно ли настроить чтобы определенный чат только сохранялся в телефон в галерею отдельную? Я нашел только так, чтобы прям все закачивалось, а мне такое не надо)

Раньше можно было. От своих сохранять, от общих чатов нет

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

При бесконечной загрузке он фото пережимает, кажется

Я для семьи завел бота который работает через home assistant. Когда дома никого нет, бот шлёт замеченное движение с камер. В обычной ситуации получаю уведомления о превышении уровня CO2, температуры и другие. Боту можно писать сообщения, они пересылаются Алисе, можно управлять устройствами, но есть некоторые команды, которые обрабатываются отдельно. Например могу кинуть магнет ссылку на торрент фильма, и бот поставит его на загрузку через transmission. После скачивания оповестит, можно смотреть через plex.

У меня в разработке подобный бот с камерами для офиса и дома.

А как понимаете, что дома никого нет? по wifi? или руками в режим охраны переводите?

И еще вопрос как регаете движение? onvif или motion и подобное?

Я не тот, кому писали, но задача у меня такая же была

В моем случае для детекта движений используются датчики движения и их дополняют камеры(onvif у меня не принципиален, главное rtsp), которые вынесены в frigate, откуда уже, через mqtt, падают события движения или детекта присутствия в homeassistant. В homeassistant датчики просто группируются.

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

Присутствие в доме по wifi и bt девайсам(включая часы, телефоны, пека) + датчики движения + возможность ручной установки режима. Костыльная схема - после детектирования открытия двери в течение 10 минут принудительно проверяется наличие движения и wifi клиенты семьи.

А для чего это реализовывать в боте, когда у самого HomeAssistant прекрасное приложение со всеми уведомлениями, автоматизациями? Сам пользуюсь, была идея написать бота к нему, но потом понял, что все, что мне нужно уже реализовано в их приложении

тоже увлекся ботами:

  • имеется бот, который парсит несколько торрент трекеров по rss, некоторые граблю bs4 и скидывает каждый час новые раздачи в виде ссылок и описаний

  • бот, который коннектится к камерам на даче, снимает короткие ролики каждый час, просто поглазеть ( дачу + квартиру в одну сеть wireguard'ом связал)

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

  • бот скриншотер погоды

  • анекдотер (спарсил какой то сайт с анекдотами , почитываю)

  • видеодаунлоадер , тоже на yt_dlp

  • торрент даунлоадер на libtorrent as lt

  • email to телеграм транслятор

  • оповещатель о перезагрузках роутеров на openwrt, и еще пару команд: статистика активности, юзеры активные, перезагрузка сервиса wireguard (подвисает иногда)

  • есть еще грабитель двух популярных сайтов, парсит все короткие видео и все mp3 и в разные каналы заливает

  • есть еще docx to голос - синтезирует документы docx

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

Спасибо за такой шикарный список идей:)

А как сделали, чтобы камеры стучались при движении? onvif или что то другое?

в моих камерах есть в прошивке опция alarm server туда прописал ip и порт

Подскажите, а есть ссылки на гит-репы? Хотел бы посмотреть моменты реализации отправки данных ботом по крону с одновременным чтением из чата.

По крону прикреплял ссылку на мой пост с кодом прямо в статье - https://amorev.ru/rezervnoe-kopirovanie-v-telegram/

Про одновременное чтение из чата не совсем понял о чем речь, если честно

Описание ботов конечно интересно, но хотелось бы еще и исходники увидеть чтобы у себя интересное поднять ;)

Да. Меня уже много кто просил описать. Решил в тг канале опрос провести к какому боту описание сделать техническое детальное - https://t.me/gmoreva/376

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории