Как сделать чтобы бот отправлял сообщение сразу
Перейти к содержимому

Как сделать чтобы бот отправлял сообщение сразу

  • автор:

Как сделать что-бы бот отправлял сообщения в заданное время?

Как сделать так что-бы бот в телеграме отправлял определенное сообщение, например ‘Привет как дела?’ в 10:00 и в 20:00?

Отслеживать
2,300 2 2 золотых знака 16 16 серебряных знаков 30 30 бронзовых знаков
задан 9 фев 2023 в 20:30
53 6 6 бронзовых знаков
используйте import schedule , и потом schedule.every().day.at(«10:00»).do(send_message_dunction)
9 фев 2023 в 22:11

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

вам нужно использовать модуль schedule, который позволяет планировать задачи по времени

import schedule import time import telebot bot = telebot.TeleBot("token") def send_message(): bot.send_message(chat_id, 'Привет, как дела?') schedule.every().day.at("10:00").do(send_message) schedule.every().day.at("20:00").do(send_message) while True: schedule.run_pending() time.sleep(1) 

мы создаём функцию send_message , которая отправляет сообщение через бота. Затем мы планируем её запуск каждый день в 10:00 и 20:00 с помощью метода schedule.every().day.at() . в конце, в цикле while мы запускаем все запланированные задачи и ждём 1 секунду.

Отслеживать
ответ дан 9 фев 2023 в 22:13
Senior Pomidor Senior Pomidor
12.7k 3 3 золотых знака 22 22 серебряных знака 42 42 бронзовых знака
Большое вам спасибо! Все работает как нужно.
10 фев 2023 в 21:02
@Nazar вы можете благодарить автора приняв вопрос и проголосовав вверх
10 фев 2023 в 22:11

  • python
  • telegram-bot
    Важное на Мете
Похожие

Подписаться на ленту

Лента вопроса

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

Дизайн сайта / логотип © 2024 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2024.4.30.8420

Как заставить бота автоматически отправлять сообщения в заданное время?

Новичок
Делаю первого бота в телеграмме для опыта. Нужно заставить его отправлять сообщения утром и вечером.
Пока выкручиваюсь через while который запускается после команды /start, но уверен что есть способы проще.

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

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

import schedule import time def job(): print("I'm working. ") schedule.every(10).minutes.do(job) schedule.every().hour.do(job) schedule.every().day.at("10:30").do(job) schedule.every().monday.do(job) schedule.every().wednesday.at("13:15").do(job) schedule.every().minute.at(":17").do(job) while True: schedule.run_pending() time.sleep(1)

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

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

С помощью крона запускать скрипт каждую минуту (или другой период времени). При запуске смотреть каким пользователям уже можно/пора отправлять сообщения.
Если уже пора, то делаем отметку в базе «идет отправка» и начинаем отправлять сообщения.
После отправки пишем в базу «отправлено».

Ответ написан более трёх лет назад
Нравится 3 4 комментария
Александр @cashncarry Автор вопроса

Спасибо за метод. У меня сейчас проблема с кодом вывода самого сообщения. Знаю такой способ :

bot.send_message(message.chat.id, ‘My message’)

где message это сообщение человека на которое я отвечаю. А как отравлять первым не знаю

Создаете таблицу в базе, фиксируете каждого нового пользователя (его chat_id и прочие данные).
При создании рассылки из базы берете chat_id

Как отправлять сообщения через бота в дискорд

Discord — это приложение для голосового и текстового общения в режиме реального времени. Это одно из самых популярных приложений для геймеров, а также для других пользователей, которые хотят быстро общаться и координироваться с другими людьми. В Discord можно создавать гильдии и серверы, где пользователи могут общаться в режиме голоса и текста. Один из способов упростить общение в Discord — использовать бота для отправки сообщений.

  1. Шаги для отправки сообщений через бота в Discord
  2. 1. Создание бота, который может отправлять сообщения в Discord
  3. 2. Получение токена и ID бота
  4. 3. Добавление бота на Discord сервер
  5. 4. Определение канала, в который бот будет отправлять сообщения
  6. 5. Создание формы со списком полей
  7. 6. Написание скрипта, который связывает форму с ботом
  8. Полезные советы и выводы

Шаги для отправки сообщений через бота в Discord

Чтобы отправить сообщение через бота в Discord, выполните следующие шаги:

  1. Создайте бота, который может отправлять сообщения в Discord.
  2. Получите токен и ID бота.
  3. Добавьте бота на свой сервер Discord.
  4. Определите канал, в который бот будет отправлять сообщения.
  5. Создайте форму со списком полей для ввода токена, ID бота, текста сообщения и ID канала Discord.
  6. Напишите скрипт, который связывает форму с ботом и отправляет сообщение.

1. Создание бота, который может отправлять сообщения в Discord

Если у вас уже есть бот, пропустите этот шаг. Если вы только начинаете работать с Discord bots, следуйте инструкциям, которые приведены ниже:

  1. Зарегистрируйте бота на https://discord.com/developers/applications.
  2. Введите название и описание бота.
  3. Укажите, каких разрешений боту будет достаточно.
  4. Создайте бота.
  5. Сохраните токен бота и ID.

2. Получение токена и ID бота

Чтобы бот мог отправлять сообщения в Discord, ему нужен токен и ID.

  1. Перейдите на страницу https://discord.com/developers/applications.
  2. Выберите вашего бота.
  3. Скопируйте токен и ID из раздела «Bot».

3. Добавление бота на Discord сервер

Чтобы бот мог отправлять сообщения в Discord, его нужно добавить на сервер.

  1. Перейдите в настройки Discord-сервера.
  2. Выберите «Настройки сервера».
  3. Нажмите на «Интеграции».
  4. Нажмите на «Добавить интеграцию».
  5. Введите токен бота и нажмите «Сохранить».

4. Определение канала, в который бот будет отправлять сообщения

Для того чтобы бот мог отправлять сообщения в Discord, вам нужно определить канал, куда будет отправлено сообщение.

  1. Откройте Discord и зайдите на ваш сервер.
  2. Нажмите на «+» рядом с названием сервера.
  3. Создайте канал для бота, например, «Bot channel».
  4. Скопируйте ID созданного канала.

5. Создание формы со списком полей

Чтобы пользователи могли отправлять сообщения через бота в Discord, нужно создать форму, которая будет содержать список полей для ввода текста и ID канала Discord.

Форма должна содержать следующие поля:

  1. Токен бота.
  2. ID бота.
  3. ID канала Discord.
  4. Текст сообщения.

6. Написание скрипта, который связывает форму с ботом

  1. Импортируйте библиотеки discord.py и requests.
  2. Создайте объект бота с помощью токена и ID.
  3. Напишите обработчик событий, который будет связывать форму с ботом и отправлять сообщение.
  4. Запустите бота.

Полезные советы и выводы

  1. Создание бота для отправки сообщений в Discord может быть полезно для работы с командами.
  2. Используйте различные библиотеки, чтобы упростить работу с ботами в Discord.
  3. Используйте официальную документацию Discord для создания ботов и работы с ними.
  4. Обязательно проверяйте корректность введенных данных и сообщайте об ошибках пользователям.

Если вы хотите отправить сообщение в канал Discord через бота, то для этого нужно перейти на страницу со специальной формой, которая используется для отправки сообщений. В этой форме необходимо ввести текст самого сообщения и ID канала, куда вы хотите его отправить. После того, как вы заполнили форму и нажали на кнопку «отправить», бот отправит ваше сообщение в указанный вами канал. Чтобы убедиться в том, что ваше сообщение было отправлено, перейдите в канал и проверьте его наличие там. Таким образом, отправка сообщений через бота в Discord достаточно проста и не требует особых знаний или навыков.

  • Вопросы
  • Как дать доступ к сообщениям боту в группе

Все права защищены © 2024

Как сделать так чтобы бот мог отправлять многострочные сообщения

я пишу телеграм бота и мне нужно чтобы бот отправлял многострочное сообщение. То есть, он отправлял список игр:

1 игра 2 игра 3 игра И т.д 

Использую библиотеку телебот
Отслеживать
задан 30 мар 2021 в 12:53
1 1 1 серебряный знак 1 1 бронзовый знак

2 ответа 2

Сортировка: Сброс на вариант по умолчанию

Если речь идёт о переносе строки, то достаточно добавить «\n» в текст.

send_message(message.chat.id, 'Игра 1\nИгра 2\nИгра 3') 

Если же речь идёт о нескольких сообщениях, то просто несколько раз прописать команду по отправке сообщения send_message().

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *