Use saved searches to filter your results more quickly
Cancel Create saved search
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window.
Reload to refresh your session.
Как создать телеграм бота
VladimirGav/telegrambot
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Switch branches/tags
Branches Tags
Could not load branches
Nothing to show
Could not load tags
Nothing to show
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Cancel Create
- Local
- Codespaces
HTTPS GitHub CLI
Use Git or checkout with SVN using the web URL.
Work fast with our official CLI. Learn more about the CLI.
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
Latest commit message
Commit time
September 27, 2023 14:27
August 4, 2023 13:06
September 27, 2023 14:37
August 24, 2023 21:58
September 27, 2023 14:37
README.md
Как создать телеграм-бота
Возможности бота
Пишем телеграм-боту и получаем ответы от обработчика:
- Приветствие новых участников в группе. Видео https://youtu.be/atu4ERvP26c
- Удаление уведомлений о выходе участников из группы. https://youtu.be/cZ5PfQ92AWA
- Блокирование ссылок от участников в группе. https://youtu.be/z0uIJ15FPWg
- /ai — задаем любой вопрос. Отвечает ИИ OpenAI ChatGPT. Отвечая на сообщения бота можно вести диалог. Видео https://www.youtube.com/watch?v=V5s8zEvGr08
- /img — описание картинки. ИИ OpenAI рисует картинку в ответ. Видео https://youtu.be/km212I673hk
Stable Diffusion команды
- /sd_models — Получить список разрешенных моделей для бота от huggingface
- /sd — Запрос на создание изображения
AI Audio команды
- /audio — Запрос на генерацию речи(аудио) из текста
- /new_wallets 3 — Создать 3 Ethereum кошелька (Address, PrivateKey). Видео https://youtu.be/U2uyD85Ysfw
- /new_wallet 25 — Создать seed фразу из 12 слов (bip39) и к ней 25 Аккаунтов с адресами и приватными ключами. Видео СКОРО
- /new_seed 10 — Создать 10 Seed фраз из 12 слов (bip39). Видео https://youtu.be/ndNdZJOYiA4
- Любой запрос — Администратор может добавлять собственные ответы на запросы в файле telegrambotapi.php
- /user_id — отправляет id отправителя. Видео https://youtu.be/z0uIJ15FPWg
- /chat_id — отправляет id текущего чата. Видео https://youtu.be/wykA-F4fQI0
Примеры для разработчиков
- /start — Пример отправки текстового сообщения на старт бота
- тест — Пример отправки текстового сообщения
- привет , пример ответа — Пример текстового ответа на сообщение
- мелодия — Пример отправки аудио файла
- пример кнопки — Пример отправки сообщение с кнопкой
- /menu — Пример создания интерактивного меню
Example of an interactive menu
Создание бота в Telegram
Установка обработчика ответов на Windows 11
- Скачиваем zip архив репозитория VladimirGav/telegrambot на компьютер и распаковываем.
- Запускаем файл forwindows/StartBot.bat и при первом запуске вводим API ключи и все. Пока консоль запущена, она будет обрабатывать сообщения, вы можете свернуть консоль.
Установка обработчика ответов для других Windows
- Скачиваем zip архив репозитория VladimirGav/telegrambot на компьютер и распаковываем.
- Устанавливаем вручную 64-bit Git for Windows Setup из https://git-scm.com/download/win
- Устанавливаем вручную Microsoft Visual C++ Redistributable https://aka.ms/vs/17/release/vc_redist.x64.exe
- Запускаем файл forwindows/StartBotWinOther.bat и при первом запуске вводим API ключи и все. Пока консоль запущена, она будет обрабатывать сообщения, вы можете свернуть консоль.
Установка обработчика ответов на хостинг
- Загружаем папку www/examples в корень сайта.
- Загружаем папку backend за пределы корня сайта.
- Запускаем файл www/examples/telegrambotsettings.php , вводим токен бота и URL адрес (только https) к обработчику сообщений www/examples/telegrambotapi.php
Автоматическая публикация сообщений в телеграм канал
Ключи API
- Все ключи с API хранятся в папке /telegrambot/backend/settings , вы всегда можете их отредактировать.
- OpenAI API KEY вы можете получить по ссылке https://platform.openai.com/account/api-keys
Установка и подключение Stable Diffusion
- Выполните установку https://github.com/VladimirGav/stable-diffusion-vg Видео инструкция https://youtu.be/dUGForWid64
- Укажите путь к папке stable-diffusion-vg и список моделей в файле настроек Телеграм Бота.
Установка и подключение AI Audio
Видео инструкция СКОРО
- Выполните установку https://github.com/VladimirGav/ai-audio-vg Видео инструкция https://www.youtube.com/watch?v=AW3OFjy3elw
- Укажите путь к папке ai-audio-vg в файле настроек Телеграм Бота.
Персонализация (настроеки)
Возможности бота можно настроить индивидуально в файле /telegrambot/backend/settings/bot_settings.json. Файл создается автоматически, после первого успешного запуска бота.
- enableChatGPT : 1, // 1 — включить ChatGPT команду /ai; 0 — выключить
- enableOpenAiImg : 1, // 1 — включить OpenAi Img команду /img; 0 — выключить
- enableWelcome : 1, // 1 — включить приветствие новых участников; 0 — выключить
- enableGoodbye : 1, // 1 — включить удаление уведомления о выходе участника из группы; 0 — выключить
- enableLinkBlocking : 1, // 1 — включить блокирование ссылок; 0 — выключить
- enableWallets : 1, // wallets
- superUsersIds : [‘000′,’000’], // id пользователей с привилегиями
- AllowedChatIdArr : [], // Массив чатов для которых работает данный бот. Пустотой массив — нет ограничений
- waitMessage : ‘Пожалуйста, подождите’, // Текст Пожалуйста, подождите
- enableStableDiffusion : 1, // 1 Включить генерацию изображений через StableDiffusion, если установлена сборка stable-diffusion-vg
- pathStableDiffusion : ‘D:/stable-diffusion-vg’, // Путь к корню StableDiffusion
- StableDiffusionAllowedModelsArr : [0=>’stabilityai/stable-diffusion-2-1′, ‘SD1.5: ‘runwayml/stable-diffusion-v1-5’], // Массив моделей для StableDiffusion которые будут работать с huggingface.co
- enableAiAudio : 1, // 1 Включить генерацию речи из текста, если установлена сборка ai-audio-vg
- pathAiAudio : ‘D:/ai-audio-vg’, // Путь к корню ai-audio-vg
Описание файлов
- backend/core/installComposer.php — Класс для установки composer
- backend/composer/composer.json — Файл настроек для composer
- backend/modules/telegram/services/sTelegram.php — Промежуточный класс между примерами и Telegram Bot API
- www/examples/telegrambotsettings.php — Пример настройки связи между телеграм ботом и обработчиком на php
- www/examples/telegrambotapi.php — Пример обработчика сообщений бота на php
- www/examples/telegramsendchat.php — Пример отправки сообщений в канал/чат
Источник: github.com
Как добавить бота в Телеграмм
Разработчики мессенджера поощряют создание роботов, поэтому их количество растет с каждым днем. Сегодня расскажем, как найти и добавить бота в Телеграмм, а также как его использовать. Это очень полезные программы, которые смогут управлять за вас каналами или размещать в ваших группах сообщения/рассылки и пр. Ведь на поиск и выдачу информации уходит много времени, а качественный робот сделает все сам. Если же вы занимаетесь бизнесом, то программы-роботы могут стать отличным маркетинговым инструментом.
Где искать нужный сервис
Как узнать о боте подробнее?
Вся дополнительная информация описывается разработчиком на этапе создания. Для пользователя она также доступна:
- Щелкните по названию программы бота в списке вашего аккаунта.
- В верхней строке нажмите на название. Если вы пользуетесь web-версией, то нажмите по логотипу справа от строки ввода сообщений.
- Откроется окно, в котором вы увидите описание и правильное название.
Также информация появляется при старте робота.
Как в Телеграмм добавить бота?
После того, как вы узнали название ресурса, введите его в строку поиска (значок лупы). На экране появится список программ, подходящих под набранную строку. Выбирайте нужный и щелкайте на него. Теперь робот всегда будет в списке.
Чтобы начать чат, просто нажмите на него. Сообщения вводятся в строку поиска. Никакие особенных действий, как видим, чтобы добавить бота в чат Telegram предпринимать не нужно.
Как добавить бота в Телеграмм в группу
- Создайте группу Телеграмм. Для этого нажмите значок главного меню в верхнем левом углу и щелкните по нужному пункту. Укажите контакты участников и введите имя группы.
- Откройте группу и щелкните по ее названию сверху (логотип группы около строки ввода в web-версии).
- Найдите пункт «Добавить участника» (Add member для нерусифицированного мессенджера).
- В окне нажмите значок лупы и введите название добавляемого робота.
- Подтвердите согласие и программа появится в группе.
Как добавить бота в беседу разобрались. Осталось узнать, как добавить бота в канал Телеграмм. Для этого выполните следующие действия:
Теперь робот будет управлять вашим каналом и выполнять работу за вас. Итак, мы рассказали, как добавить бота в канал Телеграмм на мобильной версии. Web интерфейс очень ограничен в возможностях, здесь вы эту процедуру проделать не сможете.
Источник: telegramzy.ru
Telegram bot для Linux сервера: мониторинг, уведомления, управление
23.01.2020
VyacheslavK
CentOS, Linux
комментариев 8
В этой статье мы рассмотрим пример использования Telegram бота на сервере с Linux CentOS, покажем, как настроить простые уведомления в чат-бот для мониторинга вашего сервера, а также несколько управляющих команд.
В эпоху мобильных гаджетов, стало актуально использование различных мессенджеров не только для общения с реальными людьми, но и использование различных ботов. Например, в Telegram существует широкий функционал для бота, который можно использовать в различных целях — выдать информацию о заказе клиенту, информация по посылке у почтового оператора и, например, мониторинг собственного сервера.
Создание чат-бота в Telegram
Нажмите START. Чтобы создать нового бота, выберете в меню /newbot, введите имя бота в формате “имя_bot». После создания бота, вы получите API токен бота, который нужен будет в дальнейшей настройке.
Теперь нужно узнать user_id — это ID часа с ботом, в который он будет отправлять уведомления. Перейдите в ваш с ним чат и нажмите старт и отправить любой символ. После этого в браузере перейдите по адресу:
https://api.telegram.org/bot/getUpdates — где это API который выдал BotFather.
На скриншоте выделен ваш ID.
Итак, мы создали бота в Telegram и получили авторизационные данные.
Отправка в чат Telegram уведомлений с сервера
С помощью ранее созданного бота и полученных ID можно отсылать с сервера уведомления в Telegram чат, и таким образом получать какие-то интересные нам данные или алерты.
Для отправки сообщения в чат, нужно использовать следующий URL:
# curl -s -X POST https://api.telegram.org/bot944496485:AAEtGaGCVrQ7d26Rc3r_cqXPIhrKVokh8e4/sendMessage -d chat_id=336116180 -d text=»Доброе утро, страна»
Для чего можно использовать такие Telegram уведомления? Например, при создании резервной копии вы можете отправлять уведомления о ее создании или же отправлять ссылку на скачивание копии в чат с ботом. Вы можете отправлять себе в Telegram уведомления с информацией о сбоях в системе. Можно добавить в крон выполнение каких-либо проверок с последующей отправкой в Telegram.
Еще пример использования подобных уведомлений:
# curl -s -X POST https://api.telegram.org/bot944496485:AAEtGaGCVrQ7d26Rc3r_cqXPIhrKVokh8e4/sendMessage -d chat_id=336116180 -d text=» User $(whoami) logged into $(hostname) on $(date) from $(echo $SSH_CLIENT | awk ‘< print $1>’)» /dev/null 2>Development tools» -y
# yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel -y
# ./configure
# make
# make install
Создайте симлинк для Python:
# ln -s /usr/local/bin/python3 /usr/bin/python3
И установите ПО для самого бота:
# pip3 install python-telegram-bot —upgrade
Теперь скачайте и распакуйте к себе на сервер в каталог root/admin три файла из архива telegram_bot.zip:
Рассмотрим файл config.py. В нем нам нужно указать token(API) и ID вашего чата с ботом, а также путь до директорий с бэкапами и директории, размер которой вы будете в дальнейшем проверять:
Файл bot.sh не требует настройки, в нем лишь указываем путь до bot.py:
И самый основной файл, который собственно и позволит нам управлять сервером, это bot.py. В нем описаны функции, которые будут доступны в чате с ботом и собственно туда, мы можем добавлять свой собственный функционал. Например, в первом блоке описываются доступные команды бота в чате:
Тут описываются все функции, которые будут доступны, после ввода команды /help.
Ниже описывается сама функция, например,
#функция команады ifconfig def ifconfig(bot, update): reload(config) user = str(update.message.from_user.id) if user in config.admin: #если пользовательский id в списке admin то команда выполняется run_command(«ifconfig») bot.sendMessage(chat_id=update.message.chat_id, text=textoutput)
И эту функцию, нужно описать как команду:
ifconfig_handler = CommandHandler(‘ifconfig’, ifconfig) dispatcher.add_handler(ifconfig_handler)
То есть как видим, это выполнение стандартной функции проверки сетевых настроек ifconfig.
При знакомстве с ботом я попытался добавить собственную команду, например для проверки Apache:
# service httpd status
Но только через настройку данного файла это не сработало. Как я понял, здесь можно выполнить только команду описанную одним словом или символами. Я решил проблему создав файл apache_status.sh с содержимым:
#!/bin/bash
service httpd status
И создал на него симлинк:
# ln -s /root/admin/apache_status.sh /usr/local/sbin/apachestatus
Теперь при вызове команды apachestatus, у меня выводит статус веб-сервера apache:
В файле bot.py я заполнил все три блока, согласно других функций. Чтобы bot заработал, нужно запустить файл bot.sh. Для удобства, создадим отдельный сервис для Telegram бота. Создаем нужный файл и выставляем права:
# touch /etc/systemd/system/telegram-bot.service
# chmod 664 /etc/systemd/system/telegram-bot.service
После чего заходим в файл сервиса:
И добавляем содержимое:
[Unit] Description=Telegram bot After=network.target [Service] ExecStart=/root/admin/bot.sh [Install] WantedBy=multi-user.target
# systemctl start telegram-bot.service
# systemctl enable telegram-bot.service
# systemctl status telegram-bot.service
Теперь, если в чате с вашим ботом ввести /help, вы получите список доступных команд.
Например, в данный момент у меня на сервере остановлен веб-сервер Apache:
Запустим его на сервере и проверим статус через Telegram:
Еще несколько примеров выполнения команд:
Таким образом, вы можете выполнять мониторинг своего Linux сервера или даже частичное администрирование через Telegram, что поможет сильно сократить время на выполнение типовых действий.
Так же хотел бы заметить, что авторизация сервера с ботом происходит именно по ID и token(API) (любой другой человек, не зная ваших данных, подключиться не сможет).
На момент выпуска статьи, тестовый бот удален.
Предыдущая статья Следующая статья
Источник: winitpro.ru