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

Як написати телеграм-бот зворотного зв'язку на 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()

Коментарі

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

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; де Х змінюємо на число. На мапі будуть промарковані всі будівлі з відповідної кількістю поверхів на тій частині карти яка зара...

Аналіз відео, що потрапляли в тренди дня на Youtube

Аналіз проведено на основі даних про найпопулярніші щоденні відео у різних країнах протягом кількох місяців 2017-2018 років. Джерело:   kaggle.com Mitchell J За кількістю потраплянь в топ-відео за день категорія Entertainment лідирує в усіх країнах крім Великобританії та Росії. У них лідирують Music та People & Blogs відповідно ,а Entertainment займає друге місце, що підкреслює актуальність даної категорії загалом. Загалом відео цієї категорії 106 727 рази потрапляли у топ дня протягом аналізованого періоду, що вдвічі більше ніж у найближчого конкурента. Особливо помітна її домінування у індійському та німецькому сегментах, де вони в рази переважають будь-яку із інших категорій. Розподіл країн за кількістю потраплянь відео конкретної категорії у денний топ.  Загалом найпопулярніші категорії для країн достатньо схожі. Крім вищезазначених категорія Entertainment , Music та People & Blogs в топ-3 найпопулярніших категорій входять News & Politics та Comedy. У 7 к...

Антирасистський протест у Москві 1963 року

Виявляється в СРСР теж був свій BLM. Сотні африканських студентів зібрались на Червоній площі 18 грудня 1963 року. Приводом стала смерть ганського студента Едмунда Ассаре-Аддо. Це була перша політична акція на Червоній площі, з часів протестів троцькістів у 1920-х роках. Подібні прояви непокори з боки автохтонів жорстко присікались, але в цьому випадку демонстрацію не лише не розігнали, а навпаки, вступили з ними в переговори на рівні топових урядовців. 50-60-ті роки стали періодом деколонізації Африки, що призвело до появи низки нових незалжених країн за вплив на які розгорнулась боротьба між Заходом та СРСР.  У січні 1960 опублікована указ ЦК про розширення культурних зав’язків з Африкою на південь від Сахари, а в лютому створено Університет Дружби Народів ім. Патріса Лумумби.  Для покращення інтеграції іноземних студентів було створено мережу студентських організацій, насамперед земляцтв. Однак, замість інтеграції в офіційну вузівську вертикаль африканські студенти, не знай...

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

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