Перейти до основного вмісту

Як написати телеграм-бот зворотного зв'язку на Python

В мережі є багато уроків по написання ботів для телеграму. Але вони або зовсім прості, які просто повторюють надіслане повідомлення, або , які потребують значного досвіду в програмуванні. Давайте спробуємо написати щось проміжне з ухилом в простий рівень – телеграм бот для зворотнього зв’язку.

В самому телеграмі існує низка чат-ботів які пропонують на їх базі створити власний бот зворотнього в’язку. Часто навіть безкоштовно. Але це рішення не підходить для якихось конфіденційних даних. Та й загалом, віддавати свої переписки у чужі ріки – не найкраща ідея. 

1. Експортуємо бібліотеку telebot і вставляємо токен свого бота, отриманій в BotFather замість TOKEN

import telebot

bot = telebot.TeleBot('TOKEN')


2 Додаємо стартове повідомлення

@bot.message_handler(commands=['start'])

def start_message(message):

    bot.send_message(message.chat.id, 'Вітаємо. Введіть ваше повідомлення.')


3 Налаштовуємо прийом повідомлень. Бот може надсилати повідомлення в чат або вам в бесіду. Для цього замініть CHAT.ID на відповідне значення. Як дізнатись ID написано тут. Для варіанту з чатом - треба додати бота в чат, для особистого - запустити бота.

def send_text(message):

    bot.send_message(CHAT_ID, message.text)

    bot.send_message(CHAT_ID, message.chat.first_name)

    bot.send_message(CHAT_ID, message.chat.username)

Налаштувати що саме бот буде надсилати можна змінюючи атрибути message Повністю код виглядає так



import telebot

bot = telebot.TeleBot('TOKEN')

@bot.message_handler(commands=['start'])

def start_message(message):

bot.send_message(message.chat.id, 'Вітаємо. Введіть ваше повідомлення.')

@bot.message_handler(content_types=['text'])

def send_text(message):

bot.send_message(CHAT_ID, message.text)

bot.send_message(CHAT_ID, message.chat.first_name)

bot.send_message(CHAT_ID, message.chat.username)

bot.send_message(message.chat.id, 'Дякуємо. Для відправки повторного повідомлення натисніть /start')

bot.polling()

Коментарі

Популярні дописи з цього блогу

Умови євроінтеграції України у контексті охорони здоров'я (громадського здоров'я)

Гармонізацію українського законодавства з європейським забезпечує Закон України Про Загальнодержавну програму адаптації законодавства України до законодавства Європейського Союзу та Угода про асоціацію між Україною та Європейським Союзом . Згідно розділу 5 Закону охорона здоров'я та життя людей, тварин і рослин входить до пріоритетних сфер в яких має проводитись адаптація законодавства. Підписавши Угоду з ЄС, Україна взяла на себе зобов’язання до 2026 року оновити національне законодавство у сфері громадського здоров’я. Перелік заходів необхідний для гармонізації українського та європейського законодавства у сфері громадського здоров’я викладено у главі 22 та у Додатку XLІ Угоди. Основні цілі можна умовно розділити 3 кластери. 1 Зниження кількості серцево-судинних захворювань за допомогою комплексного підходу боротьби з причинами їх виникнення: - розробка Єдиної стратегії у сфері харчування, фізичної активності, та ментального здоров’я, яка серед іншого визначає індикатори...

GeoINT за висотними будинками

З'ясовуємо точку пуску ракет  31 липня було опубліковано чергове відео обстрілу України. Відео зняте вночі і поганої якості, але чітко видно високу будівлю яка може служити хорошим орієнтиром. Висотні будівлі  у конкретному місті можна шукати як мінімум двома способами 1 Skyscrapercity.com Це ресурс про висотні будинки і хмарочоси. Ентузіасти зі всього світу обмінюються тут інформацією та систематизують її.  Про Білгород теж є окрема тема . В ній зібрано список всіх будівель вищі за 15 поверхів з лінками на фото. Поклацуємо їх всі і шукаємо схожі за обрисами. 2 overpass-turbo.eu Це ресурс на основі openstreetmaps на якому можна фільтрувати будівлі на карті за різними форматами. Переходимо на нього,  і в спеціальному полі вводимо код  [out:json][timeout:25]; (   nwr["building:levels"=Х]({{bbox}}); ); out body; >; out skel qt; де Х змінюємо на число. На мапі будуть промарковані всі будівлі з відповідної кількістю поверхів на тій частині карти яка зара...

Як дізнатись ID в Telegram

ID це ідентифікаційний номер користувача, каналу або чату. Щоб правильно розпізнати юзера та відобразити його дані, система використовує цей код. Його змінити неможливо, навіть якщо людина змінила всі свої дані у профілі. Номер надається раз і назавжди, тому по ньому легко знайти людину і це є одним з найважливіших етапів при OSINTi телеграм-акаунту. Крім того ID чатів і каналів необхідні для налаштування ботів. Найчастіше для визначення ID радять використовувати спеціальні боти. Наприклад @userinfobot чи @CheckID_AIDbot Але боти не завжди коректно працюють із чатами і каналами, а якщо у користувача стоять максимальні налаштування приватності, то бот не зможе дістати його ID. Крім того, ставити себе в залежність від сторонніх ботів, які невідомо хто розробив, якщо є набагато простіший спосіб. Заходите на веб версію телеграм Логінетесь в свій аккаунт Заходите в діалог з людиною ID вам потрібно дізнатись Дивитесь в адресний рядок – в самому кінці там будуть цифри – от вони це і є ID. Пра...

Мертві душі не гудуть

 Дві смуги світла фар розрізали темряви нічної дороги. Срібляста Тойота самотньо котила порожнім шосе. ‒ А у нас точно все вийде? ‒ знервовано, вже вкотре повторював одне й те саме запитання різними словами молодий чоловік в дорогому костюмі. ‒ Ну а як це, може не вийти? - самовпевнено посміхався водій. Сивий, в старому потертому одязі він міг би бути батьком Молодого який їхав з сином копати картоплю на дачу. Але він був його босом. Чи краще сказати наставником. Сіра футболка і брудні джинси були дещо більшими за його розміри. Весь одяг, включно з білизною, були зняті з неопізнаного небіжчика у морзі. Тіло чоловіка років тридцяти знайшли тиждень тому в покинутому заводському приміщенні, і воно саме стало в пригоді. Молодий вдягати таке вбрання категорично відмовився, вдалось лише умовити його вдягнути хрестик знятий з того ж бідолахи. Тепер він раз по раз пересмикував його, накручував ланцюжок на палець, водив подушечками пальців по барельєфу розп’яття. Чи то набравшись тепла від ...

Декомунізація в Полтаві. Коротке резюме

Create pie charts Google вже почав вносити на карти нові назви полтавських вулиць, що в сучасному світі є головним критерієм легітимізації. І оскільки головні пристрасті заспокоїлись можна тверезо оцінити результати декомунізації. Не будемо зараз зупинятись на ідеологічних питаннях. Звісно, особисто мені, неприємно, що визначальні для української історії постаті Кирила Осьмака, Василя Симоненко, Брія Горліс-Горського чи Петра Болбочан отримали малесенькі вулиці, а Міхновського взагалі проігнорували. Також дивно, що за компанію з націоналістами на задвірки міста відправили й Лева Вайнгорта, який аж ніяк не є контраверсійною фігурою для полтавців. Але це виключно суб’єктивна думка, тому краще зупинитися на кількох концептуальних моментах. По-перше дивним видається відмова від Котляревського району на користь Шевченківського. Адже Котляревський, на відміну від Кобзаря є чітким ідентифікатором Полтави по всій Україні. На території району знаходяться його сімейна садиба та могила тож...