Как отправить сообщение с отложенным временем в Телеграмм

Для того, чтобы написать телеграм-бота, который будет отправлять сообщение в определенное время, можно использовать библиотеку python-telegram-bot и модуль schedule.

import telegram import schedule import time # Указываем id бота и токен bot = telegram.Bot(token=’YOUR_TOKEN’) chat_id = ‘YOUR_CHAT_ID’ # Функция, которая будет отправлять сообщение def send_message(): message = ‘Сообщение, которое нужно отправить в 21:00’ bot.send_message(chat_id=chat_id, text=message) # Задаем время отправки сообщения schedule.every().day.at(«21:00»).do(send_message) # Бесконечный цикл для проверки расписания while True: schedule.run_pending() time.sleep(1)

В этом примере бот будет отправлять сообщение каждый день в 21:00 по московскому времени. Вы можете изменить текст сообщения, время отправки и другие параметры в соответствии с вашими потребностями.

Отслеживать
ответ дан 16 фев в 18:46
414 1 1 серебряный знак 11 11 бронзовых знаков

Можно более длинным, но не менее эффективным таким способом

КАК ОТПРАВИТЬ ОТЛОЖЕННОЕ СООБЩЕНИЕ В ТЕЛЕГРАМЕ.


import argparse import logging import pytz import telegram import telegram.ext import datetime MOSCOW_TZ = pytz.timezone(‘Europe/Moscow’) DAYS_OF_WEEK = (0, 1, 2, 3, 4, 5, 6) # Каждый день недели TARGET_TIME = datetime.time(hour=21, minute=0, second=0, tzinfo=MOSCOW_TZ) # Целевое время для отправки сообщения class TelegramBot: def __init__(self, token, chat_id): self.bot = telegram.Bot(token=token) self.chat_id = chat_id def send_message(self, message_text): self.bot.send_message(chat_id=self.chat_id, text=message_text) class Scheduler: def __init__(self, job_queue, target_time, days_of_week): self.job_queue = job_queue self.target_time = target_time self.days_of_week = days_of_week def schedule_job(self, job): # Запускаем задание каждый день в целевое время self.job_queue.run_daily(job, self.target_time, days=self.days_of_week) def configure_logging(): logging.basicConfig(format=’%(asctime)s — %(name)s — %(levelname)s — %(message)s’, level=logging.INFO) def parse_args(): parser = argparse.ArgumentParser() parser.add_argument(‘—bot-token’, required=True, help=’Telegram Bot API token’) parser.add_argument(‘—chat-id’, required=True, help=’Chat ID to send the message to’) return parser.parse_args() def main(): args = parse_args() # Создаем объект бота и передаем токен и идентификатор чата bot = TelegramBot(args.bot_token, args.chat_id) # Создаем очередь заданий job_queue = telegram.ext.JobQueue() # Создаем объект планировщика и передаем очередь заданий, целевое время и дни недели scheduler = Scheduler(job_queue, TARGET_TIME, DAYS_OF_WEEK) # Создаем задание для отправки сообщения def send_message_job(context): bot.send_message(‘Привет, мир!’) # Планируем задание на выполнение scheduler.schedule_job(send_message_job) # Создаем объект Updater и передаем токен, используем контекст и настраиваем очередь заданий updater = telegram.ext.Updater(token=args.bot_token, use_context=True) updater.job_queue = job_queue # Настраиваем логирование configure_logging() # Запускаем бота updater.start_polling() # Бот будет работать до остановки программы updater.idle() if __name__ == ‘__main__’: main()

Еще по теме:  ТГ бот выгрузить данные из кинопоиска

Источник: ru.stackoverflow.com

Отложенный постинг в Телеграм | Отправка сообщения БЕЗ звука | Фишки Телеграм

Что такое отложенные сообщения в Телеграм?

Приложения на вашем смартфоне порой словно живут собственной жизнью: автоматически синхронизируют контакты вашей телефонной книги, удобно подсказывают вам, кто из друзей пользуется той же социальной сетью, что и вы, сами обновляются. Одни новшества нам не нравятся, другие – просто находка. На днях мобильная версия мессенджера Telegram обновилась и получила парочку полезных опций – отложенные сообщения и облачные темы, например.

Отложенные сообщения в Телеграм

Отложенные сообщения и напоминания самому себе

Обновленный Телеграм 5.11 предлагает пользователям отправлять сообщения не прямо сейчас, а в установленное время. Как это сделать?

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

Поставив своего рода таймер отправки, вы будете уверены, что адресат получит сообщение в срок автоматически. А вы узнаете об отправке благодаря оповещению.

Кроме того, вы можете сделать напоминание самому себе в Избранном. Схема та же: вы пишете себе, например, «Встретить курьера», зажимаете стрелочку, выбираете Задать напоминание и назначаете срок отправки. В установленное время вы получите сообщение.

Напоминание самому себе в Избранном

Отложенные сообщения в Телеграм

Облачные темы Телеграм

Еще одно обновление версии 5.11 – настройка темы приложения. Вы можете кастомизировать оформление интерфейса, выбрав для тем «Моно» и «Темная» любой цвет из предложенных, либо создав свой фон во встроенном редакторе. Созданной темой вы сможете поделиться с другими пользователями, отправив им ссылку на нее. Проделать это можно в Настройках чата. Если вы отправили тему друзьям, при очередном обновлении она изменится у всех вас.

Еще по теме:  Как писать в личку в Телеграмме в группе

Облачные темы Телеграм

Отправить друзьям

Настройки приватности

В Telegram 5.11 вы можете ограничить круг людей, которые могут отыскать вас в мессенджере в момент добавления номера вашего телефона в контакты. В Настройках выберите пункт Конфиденциальность и Номер телефона. В поле вопроса «Кто видит мой номер телефона?» выберите пункты Никто или Мои контакты. Пользователи, которые уже нашли вас и знают ваш номер, будут видеть его по-прежнему, другие – нет. Ранее скрыть номер было невозможно.

Чтобы активировать эти обновления, вам нужно обновить приложение в магазине вашей операционной системы – Google Play Market для Android и App Store для iOS.

Отложенная отправка сообщения контакту в Telegram — возможно?

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

  • Вопрос задан более трёх лет назад
  • 15869 просмотров

Комментировать
Решения вопроса 0
Ответы на вопрос 4

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

Whatsapp

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

Ответ написан более трёх лет назад
Комментировать
Нравится 1 Комментировать

У телеграма на ботов политика такая, что бот не может написать человеку, пока тот не начнёт чат с этим ботом, иначе мы бы столкнулись со спамом с миллиона* различных пользовательских ботов.

Еще по теме:  Телеграм как отключить анонимные сообщения для администратора чата

* — позволил себе небольшое утрирование. Цифра в миллион взята абсолютно с потолка

Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать

pushd0w

Если вам нужно, чтобы бот отправлял отсроченные сообщения, то используйте библиотеку apscheduler.
Позволит отправлять сообщения с определенными интервалами (Часы/минуты/секунды), либо отправлять сообщения раз в день в определенное время либо другие варианты/комбинации вариантов без прерывания основной деятельности бота.

Источник: qna.habr.com

Рейтинг
( Пока оценок нет )
Загрузка ...