Инициализация

Чтобы начать работу с модулем, Вам необходимо импортировать и инициализировать его:

const sender = require('telegraf-sender');
const bot = new Telegraf(token);
bot.use(sender);

Отправка сообщений

Текущему пользователю

ctx.msg.send(text, extra);

Пользователю с другим id

ctx.msg.sendTo(userId, text, extra);

Всплывающие уведомления

Alert

ctx.msg.alert('Пример модального окна');

Toast

ctx.msg.toast('Всплывающее уведомление');

Изменение сообщений

Для этого воспользуйтесь методом edit:

ctx.msg.edit(text, extra);

Удаление сообщений

Для этого воспользуйтесь методом del:

ctx.msg.del();

Рассылка сообщений

Обычных текстовых сообщений:

await ctx.msg.broadcast({
  users: [1, 2, 3],
  isCopy: false,
  message: {
    type: 'text',
    text: 'Текст рассылки',
    extra: { parse_mode: 'HTML', ...markup },
  },
});

Сообщений с фотографиями:

await ctx.msg.broadcast({
  users: [1, 2, 3],
  isCopy: false,
  message: {
    type: 'photo',
    
    // либо file_id уже существующего фото на серверах Telegram
    file_id: file_id,
    
    // или прямую ссылку на фото
    source: path,
    
    extra: { parse_mode: 'HTML', ...markup, caption: 'Текст рассылки' },
  },
});

Сообщений с видео:

await ctx.msg.broadcast({
  users: [1, 2, 3],
  isCopy: false,
  message: {
    type: 'video',
    
    // либо file_id уже существующего видео на серверах Telegram
    file_id: file_id,
    
    // или прямую ссылку на видео
    source: path,
    
    extra: { parse_mode: 'HTML', ...markup, caption: 'Текст рассылки' },
  },
});

Сообщений с документом (Например, гифка):

await ctx.msg.broadcast({
  users: [1, 2, 3],
  isCopy: false,
  message: {
    type: 'document',
    
    // либо file_id уже существующего документа на серверах Telegram
    file_id: file_id,
    
    // или прямую ссылку на документ (Например, гифка)
    source: path,
    
    extra: { parse_mode: 'HTML', ...markup, caption: 'Текст рассылки' },
  },
});

Если написать isCopy: true, тогда последнее отправленное пользователем сообщение будет скопировано

Информация

Рассылка сообщений с форматом 30 сообщений в секунду. Модуль разработан для библиотеки Telegraf версии 3.39.