Начало тлг с telegraf

const telegraf = new Telegraf(token, [options])

telegraf.use(…middleware) — Регистрирует промежуточное ПО.

telegraf.on(updateTypes, …middleware) — Регистрирует ПО промежуточного слоя для обработки заданного типа обновления.

telegraf.hears(triggers, …middleware) — Регистрирует промежуточное ПО для обработки текстовых сообщений.

telegraf.command(commands, …middleware) — Обработка команд.

telegraf.start(…middleware) — Обработчик команды /start.

telegraf.help(…middleware) — Обработчик команды /help.

telegraf.settings(…middleware) — Обработчик команды /settings.

telegraf.entity(entity, …middleware) — Обработка сущностей.

telegraf.mention(username, …middleware) — Упоминание обработки.

telegraf.phone(number, …middleware) — Работа с номером телефона.

telegraf.hashtag(hashtag, …middleware) — Обработка хэштегов.

telegraf.cashtag(cashtag, …middleware) — Обработка денежных кэштегов.

telegraf.action(triggers, …middleware) — Регистрирует ПО промежуточного слоя для обработки string/string[]/RegEx/RegEx[] действий.

telegraf.inlineQuery(triggers, …middleware) — Регистрирует ПО промежуточного слоя для обработки действий с выражениями string/string[]/RegEx/RegEx[].

telegraf.gameQuery(…middleware) — Регистрирует промежуточное ПО для обработки callback_data действий с игровым запросом.

telegraf.launch(options) => Promise — Запуск бота в режиме опроса или веб-перехватчика.

telegraf.startPolling([timeout], [limit], [allowedUpdates], [stopCallback])

ПарамТипПо умолчаниюОписание
[timeout]number30Время ожидания опроса в секундах
[limit]number100Ограничивает количество извлекаемых обновлений
[allowedUpdates]string[]/string/nullнулевойПеречислите типы обновлений, которые вы хотите, чтобы ваш бот получал
[stopCallback]functionнулевойОбратный вызов остановки опроса

telegraf.startWebhook(hookPath, [tlsOptions], port, [host]) — Начните слушать @ https://host:port/webhookPath для звонков Telegram.

ParamTypeDescription
hookPathstringWebhook url path
[tlsOptions]objectTLS server options. Pass null to use http
portnumberPort number
[host]stringHostname

telegraf.stop([callback]) => Promise — Остановить Webhook и опрос

telegraf.webhookCallback(webhookPath) => Function — Возвращает функцию обратного вызова, подходящую для метода http[s].createServer() для обработки запроса. Вы также можете использовать эту функцию обратного вызова для монтирования вашего приложения телеграфа в приложении Connect/Express.

telegraf.handleUpdate(rawUpdate, [webhookResponse]) — Обработка необработанного обновления Telegram. Если вы используете централизованный сервер веб-перехватчиков, очередь и т. д.

Telegraf.compose(middlewares) => function — Compose middlewares возвращает полностью действительное промежуточное ПО, состоящее из всех переданных.

function[]Массив промежуточного программного обеспечения

Telegraf.mount(updateTypes, …middleware) => function — Создает промежуточное ПО для обработки предоставленных типов обновлений.

Telegraf.hears(triggers, …middleware) => function — Создает промежуточное ПО для обработки текстовых сообщений с регулярными выражениями.

ПарамТипОписание
triggersstring/string[]/RegEx/RegEx[]/Function/Function[]Триггеры
обработчикfunctionОбработчик

Telegraf.action(triggers, …middleware) => function — Создает промежуточное ПО для обработки callbackQuery данных с помощью регулярных выражений.

ПарамТипОписание
триггерыstring/string[]/RegEx/RegEx[]/Function/Function[]Триггеры
обработчикfunctionОбработчик

Telegraf.inlineQuery(triggers, …middleware) => function — Создает промежуточное ПО для обработки inlineQuery данных с помощью регулярных выражений.

ПарамТипОписание
триггерыstring/string[]/RegEx/RegEx[]/Function/Function[]Триггеры
обработчикfunctionОбработчик

Telegraf.passThru() => function — Генерирует проход через промежуточное ПО.

Telegraf.safePassThru() => function — Создает безопасную версию промежуточного программного обеспечения для прохода.

Telegraf.optional(test, …middleware) => function — Генерирует дополнительное промежуточное ПО.

Telegraf.acl(userId, …middleware) => function — Создает промежуточное ПО только для указанных пользователей.

ПарамТипОписание
ID пользователяstring/string[]ID пользователя
промежуточное ПОfunctionпромежуточное ПО

Telegraf.drop(test) => function — Генерирует промежуточное ПО drop.

Telegraf.filter(test) => function — Генерирует промежуточное ПО фильтра.

Telegraf.branch(test, trueMiddleware, falseMiddleware) => function — Создает промежуточное ПО для ветвей.

Telegraf.email(triggers, …middleware) => function — Создает промежуточное ПО для обработки сообщений с email сущностью.

ПарамТипОписание
triggersstring/string[]/RegEx/RegEx[]/Function/Function[]Триггеры
обработчикfunctionОбработчик

Telegraf.hashtag(triggers, …middleware) => function — Создает промежуточное ПО для обработки сообщений с hashtag сущностью.

Telegraf.cashtag(triggers, …middleware) => function — Создает промежуточное ПО для обработки сообщений с cashtag сущностью.

Telegraf.url(triggers, …middleware) => function — Создает промежуточное ПО для обработки сообщений с urlсущностью.

Telegraf.phone(triggers, …middleware) => function — Создает промежуточное ПО для обработки сообщений с phone сущностью.

Telegraf.textLink(triggers, …middleware) => function — Создает промежуточное ПО для обработки сообщений с text_link сущностью.

Telegraf.textMention(triggers, …middleware) => function — Создает промежуточное ПО для обработки сообщений с text_mention сущностью.

//////////////////////////////////////////////////////////////////////////////////

telegram.webhookReply = [bool] — Используйте это свойство для управления reply via webhook функцией.

telegram.answerCbQuery(callbackQueryId, text, [showAlert], [extra]) => Promise — Используйте этот метод для отправки ответов на запросы обратного вызова, отправленные с встроенных клавиатур . Ответ будет отображаться пользователю в виде уведомления в верхней части экрана чата или в виде предупреждения. В случае успеха возвращается True .

ПарамТипОписание
callbackQueryIdstringИдентификатор запроса
[text]stringТекст уведомления
[showAlert]boolПоказывать предупреждение вместо уведомления
[extra]objectДополнительные параметры (url, cache_time)

telegram.answerGameQuery(callbackQueryId, url) => Promise — Используйте этот метод для отправки ответов на игровой запрос.

telegram.answerShippingQuery(shippingQueryId, ok, shippingOptions, [errorMessage]) => Promise — Используйте этот метод для отправки ответов на запрос о доставке.

telegram.answerPreCheckoutQuery(preCheckoutQueryId, ok, [errorMessage]) => Promise — Используйте этот метод для отправки ответов на запрос о доставке.

ПарамТипОписание
preCheckoutQueryIdstringИдентификатор запроса на доставку
OkboolУкажите True, если все в порядке (товар в наличии и т.д.)
[сообщение об ошибке]stringСообщение об ошибке в удобочитаемой форме

telegram.answerInlineQuery(inlineQueryId, results, [extra]) => Promise — Используйте этот метод для отправки ответов на встроенный запрос.

telegram.createNewStickerSet(ownerId, name, title, stickerData, [isMasks]) => Promise — Используйте этот метод для создания нового набора наклеек, принадлежащего пользователю. Созданный таким образом набор наклеек сможет редактировать бот. Вы должны использовать ровно одно из полей png_sticker , tgs_sticker или webm_sticker . Возвращает True в случае успеха.

telegram.deleteChatStickerSet(chatId) => Promise — Используйте этот метод, чтобы удалить групповой набор наклеек из супергруппы. Чтобы это работало, бот должен быть администратором в чате и иметь соответствующие права администратора. Используйте поле can_set_sticker_set , которое необязательно возвращается в запросах getChat , чтобы проверить, может ли бот использовать этот метод. Возвращает True в случае успеха.

telegram.deleteMessage(chatId, messageId) => Promise — Используйте этот метод для удаления сообщения, в том числе служебного, со следующими ограничениями:
– Сообщение может быть удалено только в том случае, если оно было отправлено менее 48 часов назад.
– Сообщение с кубиками в приватном чате можно удалить только в том случае, если оно было отправлено более 24 часов назад.
– Боты могут удалять исходящие сообщения в приватных чатах, группах и супергруппах.
– Боты могут удалять входящие сообщения в приватных чатах.
– Боты с разрешениями can_post_messages могут удалять исходящие сообщения в каналах.
– Если бот является администратором группы, он может удалить там любое сообщение.
– Если у бота есть разрешение can_delete_messages в супергруппе или канале, он может удалить там любое сообщение.
Возвращает True при успехе.

telegram.setStickerSetThumb(name, userId, [thumb]) => Promise — Используйте этот метод, чтобы установить миниатюру набора наклеек. Анимированные миниатюры можно установить только для наборов анимированных стикеров. Миниатюры видео можно установить только для наборов видеостикеров. Возвращает True в случае успеха.

telegram.deleteStickerFromSet(stickerId) => Promise — Используйте этот метод, чтобы удалить стикер из набора, созданного ботом. Возвращает True в случае успеха.

telegram.editMessageCaption(chatId, messageId, inlineMessageId, caption, [extra]) => Promise — Используйте этот метод для редактирования заголовков сообщений, отправленных ботом или через бота.

telegram.editMessageMedia(chatId, messageId, inlineMessageId, media, [extra]) => Promise — Используйте этот метод для редактирования медиа сообщений, отправленных ботом или через бота.

telegram.editMessageLiveLocation(latitude, longitude, chatId, messageId, inlineMessageId, [markup]) => Promise — Используйте этот метод для редактирования сообщений о местоположении в реальном времени. Местоположение можно редактировать до тех пор, пока не истечет срок действия его live_period или пока редактирование не будет явно отключено вызовом stopMessageLiveLocation . В случае успеха, если отредактированное сообщение не является встроенным сообщением, возвращается отредактированное сообщение , в противном случае возвращается True .

telegram.editMessageReplyMarkup(chatId, messageId, inlineMessageId, markup, [extra]) => Promise — Используйте этот метод, чтобы редактировать только разметку ответов сообщений, отправленных ботом или через бота.

telegram.editMessageText(chatId, messageId, inlineMessageId, text, [extra]) => Promise — Используйте этот метод для редактирования текстовых сообщений, отправленных ботом или через бота.

telegram.forwardMessage(chatId, fromChatId, messageId, [extra]) => Promise — Пересылает сообщение.

telegram.sendCopy(chatId, message, [extra]) => Promise — Отправляет копию сообщения.

telegram.getWebhookInfo() => Promise — Используйте этот метод, чтобы получить текущий статус веб-перехватчика. Не требует параметров. В случае успеха возвращает объект WebhookInfo. Если бот использует getUpdates, он вернет объект с пустым полем URL.

telegram.getChat(chatId) => Promise — Используйте этот метод для получения актуальной информации о чате (текущее имя пользователя для разговоров один на один, текущее имя пользователя, группы или канала и т. д.). Возвращает объект чата в случае успеха.

telegram.getChatAdministrators(chatId) => Promise — Используйте этот метод, чтобы получить список администраторов в чате, которые не являются ботами. Возвращает массив объектов ChatMember .

telegram.setGameScore(userId, score, inlineMessageId, chatId, messageId, [editMessage], [force]) => Promise — Используйте этот метод, чтобы установить счет указанного пользователя в игровом сообщении. В случае успеха, если сообщение не является встроенным сообщением, возвращается Message , в противном случае возвращается True . Возвращает ошибку, если новая оценка не превышает текущую оценку пользователя в чате и force равно False .

telegram.getGameHighScores(userId, inlineMessageId, chatId, messageId) => Promise —

Используйте этот метод для получения данных для таблиц рекордов. Возвращает счет указанного пользователя и нескольких его соседей в игре. Возвращает массив объектов GameHighScore .

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

telegram.getChatMember(chatId, userId) => Promise —

Используйте этот метод для получения информации об участнике чата. Возвращает объект ChatMember в случае успеха.

ПараметрТипНеобходимыйОписание
chat_idЦелое число или строкаДаУникальный идентификатор целевого чата или имя пользователя целевой супергруппы или канала (в формате @channelusername)
ID пользователяЦелое числоДаУникальный идентификатор целевого пользователя

telegram.getChatMembersCount(chatId) => Promise — Используйте этот метод, чтобы получить количество участников в чате.

telegram.getFile(fileId) => Promise —

Используйте этот метод, чтобы получить основную информацию о файле и подготовить его к загрузке. На данный момент боты могут загружать файлы размером до 20 МБ. В случае успеха возвращается объект File . Файл потом можно скачать по ссылке https://api.telegram.org/file/bot<token>/<file_path>, откуда <file_path>взято из ответа. Гарантируется, что ссылка будет действительна не менее 1 часа. Когда срок действия ссылки истекает, можно запросить новую, снова вызвав getFile .

ПараметрТипНеобходимыйОписание
file_idНитьДаИдентификатор файла для получения информации о

Примечание. Эта функция может не сохранить исходное имя файла и тип MIME. Вы должны сохранить MIME-тип и имя файла (если доступно) при получении объекта File.

telegram.getFileLink(fileId) => Promise — Возвращает ссылку на файл.

telegram.getMe() => Promise — Простой метод проверки токена аутентификации вашего бота. Не требует параметров. Возвращает основную информацию о боте в виде объекта User .

telegram.getMyCommands() => Promise — Используйте этот метод, чтобы получить текущий список команд бота для данной области и языка пользователя. Возвращает массив объектов BotCommand . Если команды не заданы, возвращается пустой список.

telegram.getStickerSet(name) => Promise — Используйте этот метод, чтобы получить набор наклеек.

telegram.getUserProfilePhotos(userId, [offset], [limit]) => Promise —

Используйте этот метод, чтобы получить список изображений профиля для пользователя. Возвращает объект UserProfilePhotos .

ПараметрТипНеобходимыйОписание
user_idЦелое числоДаУникальный идентификатор целевого пользователя
offsetЦелое числоПо желаниюПорядковый номер первой возвращаемой фотографии. По умолчанию возвращаются все фотографии.
limitЦелое числоПо желаниюОграничивает количество извлекаемых фотографий. Принимаются значения от 1 до 100. По умолчанию 100.

telegram.setChatPermissions(chatId, permissions) => Promise — Используйте этот метод, чтобы установить разрешения чата по умолчанию для всех участников.

telegram.kickChatMember(chatId, userId, [extra]) => Promise — Используйте этот метод, чтобы исключить пользователя из группы или супергруппы.

telegram.restrictChatMember(chatId, userId, [extra]) => Promise — Используйте этот метод, чтобы ограничить пользователя в супергруппе.

telegram.promoteChatMember(chatId, userId, [extra]) => Promise — Используйте этот метод для повышения или понижения пользователя в супергруппе или канале.

telegram.setChatAdministratorCustomTitle(chatId, userId, [extra]) => Promise — Новый пользовательский титул для администратора; 0-16 символов, эмодзи не разрешены.

telegram.exportChatInviteLink(chatId) => Promise —

Используйте этот метод для создания новой основной ссылки-приглашения для чата; любая ранее созданная первичная ссылка аннулируется. Чтобы это работало, бот должен быть администратором в чате и иметь соответствующие права администратора. Возвращает новую ссылку-приглашение в виде строки в случае успеха.

ПараметрТипНеобходимыйОписание
chat_idЦелое число или строкаДаУникальный идентификатор целевого чата или имя пользователя целевого канала (в формате @channelusername)

telegram.setChatPhoto(chatId, photo) => Promise —

Используйте этот метод, чтобы установить новую фотографию профиля для чата. Фотографии нельзя изменить для приватных чатов. Чтобы это работало, бот должен быть администратором в чате и иметь соответствующие права администратора. Возвращает True в случае успеха.

ПараметрТипНеобходимыйОписание
chat_idЦелое число или строкаДаУникальный идентификатор целевого чата или имя пользователя целевого канала (в формате @channelusername)
ФотоВходной файлДаНовое фото чата, загруженное с помощью multipart/form-data

telegram.deleteChatPhoto(chatId) => Promise —

Используйте этот метод, чтобы удалить фотографию чата. Фотографии нельзя изменить для приватных чатов. Чтобы это работало, бот должен быть администратором в чате и иметь соответствующие права администратора. Возвращает True в случае успеха.

ПараметрТипНеобходимыйОписание
chat_idЦелое число или строкаДаУникальный идентификатор целевого чата или имя пользователя целевого канала (в формате @channelusername)

telegram.setChatTitle(chatId, title) => Promise —

Используйте этот метод, чтобы изменить название чата. Названия не могут быть изменены для приватных чатов. Чтобы это работало, бот должен быть администратором в чате и иметь соответствующие права администратора. Возвращает True в случае успеха.

ПараметрТипНеобходимыйОписание
chat_idЦелое число или строкаДаУникальный идентификатор целевого чата или имя пользователя целевого канала (в формате @channelusername)
titleStringДаНовое название чата, 1-255 символов

telegram.setChatDescription(chatId, description) => Promise —

Используйте этот метод, чтобы изменить название чата. Названия не могут быть изменены для приватных чатов. Чтобы это работало, бот должен быть администратором в чате и иметь соответствующие права администратора. Возвращает True в случае успеха.

ПараметрТипНеобходимыйОписание
chat_idЦелое число или StringДаУникальный идентификатор целевого чата или имя пользователя целевого канала (в формате @channelusername)
descriptionStringДаНовое название чата, 1-255 символов

telegram.setChatStickerSet(chatId, stickerSetName) => Promise —

Используйте этот метод, чтобы установить новый набор наклеек группы для супергруппы. Чтобы это работало, бот должен быть администратором в чате и иметь соответствующие права администратора. Используйте поле can_set_sticker_set , которое необязательно возвращается в запросах getChat , чтобы проверить, может ли бот использовать этот метод. Возвращает True в случае успеха.

ПараметрТипНеобходимыйОписание
chat_idЦелое число или строкаДаУникальный идентификатор целевого чата или имя пользователя целевой супергруппы (в формате @supergroupusername)
sticker_set_nameStringДаНазвание набора наклеек, который будет установлен в качестве группового набора наклеек

telegram.pinChatMessage(chatId, messageId, [extra]) => Promise —

Используйте этот метод, чтобы добавить сообщение в список закрепленных сообщений в чате. Если чат не является приватным, бот должен быть администратором в чате, чтобы это работало, и должен иметь права администратора «can_pin_messages» в супергруппе или права администратора «can_edit_messages» в канале. Возвращает True в случае успеха.

ПараметрТипНеобходимыйОписание
chat_idЦелое число или строкаДаУникальный идентификатор целевого чата или имя пользователя целевого канала (в формате @channelusername)
message_idЦелое числоДаИдентификатор сообщения для закрепления
disable_notificationлогическийПо желаниюПередайте True , если нет необходимости отправлять уведомление всем участникам чата о новом закрепленном сообщении. Уведомления всегда отключены в каналах и приватных чатах.

telegram.unpinChatMessage(chatId) => Promise —

Используйте этот метод, чтобы удалить сообщение из списка закрепленных сообщений в чате. Если чат не является приватным, бот должен быть администратором в чате, чтобы это работало, и должен иметь права администратора «can_pin_messages» в супергруппе или права администратора «can_edit_messages» в канале. Возвращает True в случае успеха.

ПараметрТипНеобходимыйОписание
chat_idЦелое число или строкаДаУникальный идентификатор целевого чата или имя пользователя целевого канала (в формате @channelusername)
message_idЦелое числоПо желаниюИдентификатор сообщения, которое нужно открепить. Если не указано, самое последнее закрепленное сообщение (по дате отправки) будет откреплено.

telegram.leaveChat(chatId) => Promise —

Используйте этот метод, чтобы ваш бот покинул группу, супергруппу или канал. Возвращает True в случае успеха.

ПараметрТипНеобходимыйОписание
chat_idЦелое число или строкаДаУникальный идентификатор целевого чата или имя пользователя целевой супергруппы или канала (в формате @channelusername)

telegram.deleteWebhook() => Promise —

Используйте этот метод, чтобы удалить интеграцию с веб-перехватчиком, если вы решите вернуться к getUpdates . Возвращает True в случае успеха.

ПараметрТипНеобходимыйОписание
drop_pending_updatesлогическийПо желаниюПередайте True , чтобы удалить все ожидающие обновления

telegram.sendAudio(chatId, audio, [extra]) => Promise —

Используйте этот метод для отправки аудиофайлов, если вы хотите, чтобы клиенты Telegram отображали их в музыкальном проигрывателе. Ваш звук должен быть в формате .MP3 или .M4A. В случае успеха возвращается отправленное сообщение . В настоящее время боты могут отправлять аудиофайлы размером до 50 МБ, это ограничение может быть изменено в будущем.

Вместо этого для отправки голосовых сообщений используйте метод sendVoice .

ПараметрТипНеобходимыйОписание
chat_idЦелое число
или строка
ДаУникальный идентификатор целевого чата или имя пользователя целевого канала (в формате @channelusername)
audioВходной файл 
или строка
ДаАудиофайл для отправки. Передайте file_id в виде строки, чтобы отправить аудиофайл, существующий на серверах Telegram (рекомендуется), передайте URL-адрес HTTP в виде строки, чтобы Telegram мог получить аудиофайл из Интернета, или загрузите новый, используя multipart/form-data. Подробнее об отправке файлов »
captionНитьПо желаниюАудиозаголовок, 0-1024 символа после разбора сущностей
parse_modeНитьПо желаниюРежим разбора сущностей в аудиозаголовке. Дополнительные сведения см. в параметрах форматирования .
caption_entitiesМассив 
MessageEntity
По желаниюСериализованный в формате JSON список специальных сущностей, появляющихся в заголовке, который можно указать вместо parse_mode.
durationЦелое числоПо желаниюПродолжительность звука в секундах
исполнительНитьПо желаниюИсполнитель
заглавиеНитьПо желаниюНазвание трека
thumbВходной файл 
или строка
По желаниюМиниатюра отправленного файла; можно игнорировать, если генерация миниатюр для файла поддерживается на стороне сервера. Миниатюра должна быть в формате JPEG и иметь размер не более 200 КБ. Ширина и высота эскиза не должны превышать 320. Игнорируется, если файл загружен не с помощью multipart/form-data. Миниатюры нельзя использовать повторно, их можно загружать только как новый файл, поэтому вы можете передать «attach://<file_attach_name>», если миниатюра была загружена с использованием multipart/form-data в <file_attach_name>. Подробнее об отправке файлов »
disable_notificationлогическийПо желаниюОтправляет сообщение молча . Пользователи получат уведомление без звука.
protect_contentлогическийПо желаниюЗащищает содержимое отправленного сообщения от пересылки и сохранения
answer_to_message_idЦелое числоПо желаниюЕсли сообщение является ответом, ID исходного сообщения
allow_sending_without_replyлогическийПо желаниюПередайте True , если сообщение должно быть отправлено, даже если указанное сообщение с ответом не найдено.
answer_markupInlineKeyboardMarkup 
или 
ReplyKeyboardMarkup 
или 
ReplyKeyboardRemove 
или 
ForceReply
По желаниюДополнительные возможности интерфейса. Сериализованный в формате JSON объект для встроенной клавиатуры , настраиваемой клавиатуры для ответов , инструкции по удалению клавиатуры для ответов или принудительному ответу пользователя.

telegram.sendGame(chatId, gameName, [extra]) => Promise — Отправляет игру.

telegram.sendChatAction(chatId, action) => Promise — Отправляет действие чата.

telegram.sendContact(chatId, phoneNumber, firstName, [extra]) => Promise — Используйте этот метод для отправки телефонных контактов. В случае успеха возвращается отправленное сообщение .

ParameterTypeRequiredDescription
chat_idInteger or StringYesУникальный идентификатор целевого чата или имя пользователя целевого канала (в формате 
@channelusername)
phone_numberStringYesТелефон контакта
first_nameStringYesИмя контакта
last_nameStringOptionalФамилия контакта
vcardStringOptionalДополнительные данные о контакте в виде 
vCard , 0-2048 байт
disable_notificationBooleanOptionalОтправляет сообщение 
молча . 
Пользователи получат уведомление без звука.
protect_contentBooleanOptionalЗащищает содержимое отправленного сообщения от пересылки и сохранения
reply_to_message_idIntegerOptionalЕсли сообщение является ответом, ID исходного сообщения
allow_sending_without_replyBooleanOptionalПередайте 
True , если сообщение должно быть отправлено, даже если указанное сообщение с ответом не найдено.
reply_markupInlineKeyboardMarkup 
or 
ReplyKeyboardMarkup 
or 
ReplyKeyboardRemove 
or ForceReply
OptionalДополнительные возможности интерфейса. 
Сериализованный в формате JSON объект для 
встроенной клавиатуры , 
настраиваемой клавиатуры для ответов , инструкции по удалению клавиатуры для ответов или принудительному ответу пользователя.

telegram.sendDice(chatId, [extra]) => Promise — Используйте этот метод, чтобы отправить анимированный эмодзи, который будет отображать случайное значение. В случае успеха возвращается отправленное сообщение .

telegram.sendDocument(chatId, doc, [extra]) => Promise —

Используйте этот метод для отправки общих файлов. В случае успеха возвращается отправленное сообщение . В настоящее время боты могут отправлять файлы любого типа размером до 50 МБ, это ограничение может быть изменено в будущем.

ПараметрТипНеобх.Описание
chat_idЦелое число или строкаДаУникальный идентификатор целевого чата или имя пользователя целевого канала (в формате @channelusername)
documentВходной файл 
или строка
ДаФайл для отправки. Передайте file_id в виде строки, чтобы отправить файл, существующий на серверах Telegram (рекомендуется), передайте URL-адрес HTTP в виде строки, чтобы Telegram мог получить файл из Интернета, или загрузите новый, используя multipart/form-data. Подробнее об отправке файлов »
thumbВходной файл или строкаНетМиниатюра отправленного файла; можно игнорировать, если генерация миниатюр для файла поддерживается на стороне сервера. Миниатюра должна быть в формате JPEG и иметь размер не более 200 КБ. Ширина и высота эскиза не должны превышать 320. Игнорируется, если файл загружен не с помощью multipart/form-data. Миниатюры нельзя использовать повторно, их можно загружать только как новый файл, поэтому вы можете передать «attach://<file_attach_name>», если миниатюра была загружена с использованием multipart/form-data в <file_attach_name>. Подробнее об отправке файлов »
captionStringНетЗаголовок документа (также может использоваться при повторной отправке документов по file_id ), 0-1024 символа после разбора сущностей
parse_modeStringНетРежим разбора сущностей в заголовке документа. Дополнительные сведения см. в параметрах форматирования .
caption_entitiesМассив 
MessageEntity
НетСериализованный в формате JSON список специальных сущностей, появляющихся в заголовке, который можно указать вместо parse_mode.
disable_content_type_detectionлогическийНетОтключает автоматическое определение типа контента на стороне сервера для файлов, загруженных с помощью multipart/form-data.
disable_notificationлогическийНетОтправляет сообщение молча . Пользователи получат уведомление без звука.
protect_contentлогическийНетЗащищает содержимое отправленного сообщения от пересылки и сохранения
reply_to_message_idЦелое числоНетЕсли сообщение является ответом, ID исходного сообщения
allow_sending_without_replyлогическийНетПередайте True , если сообщение должно быть отправлено, даже если указанное сообщение с ответом не найдено.
reply_markupInlineKeyboardMarkup 
или 
ReplyKeyboardMarkup 
или 
ReplyKeyboardRemove 
или 
ForceReply
НетДополнительные возможности интерфейса. Сериализованный в формате JSON объект для встроенной клавиатуры , настраиваемой клавиатуры для ответов , инструкции по удалению клавиатуры для ответов или принудительному ответу пользователя.

telegram.sendLocation(chatId, latitude, longitude, [extra]) => Promise — Используйте этот метод для отправки точки на карту. В случае успеха возвращается отправленное сообщение .

ПараметрТипНеобх.Описание
chat_idЦелое число или строкаДаУникальный идентификатор целевого чата или имя пользователя целевого канала (в формате @channelusername)
latitudeFloat numberДаШирота местоположения
longitudeFloat numberДаДолгота местоположения
horizontal_accuracyFloat numberOptionalРадиус неопределенности местоположения, измеряемый в метрах; 0-1500
live_periodЦелое числоOptionalПериод в секундах, в течение которого будет обновляться местоположение (см. Live Locations , должно быть от 60 до 86400.
headingЦелое числоOptionalДля живых местоположений — направление, в котором движется пользователь, в градусах. Должно быть от 1 до 360, если указано.
proximity_alert_radiusЦелое числоOptionalДля живых местоположений максимальное расстояние для предупреждений о приближении к другому участнику чата в метрах. Должно быть от 1 до 100000, если указано.
disable_notificationлогическийOptionalОтправляет сообщение молча . Пользователи получат уведомление без звука.
protect_contentлогическийOptionalЗащищает содержимое отправленного сообщения от пересылки и сохранения
reply_to_message_idЦелое числоOptionalЕсли сообщение является ответом, ID исходного сообщения
allow_sending_without_replyлогическийOptionalПередайте True , если сообщение должно быть отправлено, даже если указанное сообщение с ответом не найдено.
reply_markupInlineKeyboardMarkup 
или 
ReplyKeyboardMarkup 
или 
ReplyKeyboardRemove 
или 
ForceReply
OptionalДополнительные возможности интерфейса. Сериализованный в формате JSON объект для встроенной клавиатуры , настраиваемой клавиатуры для ответов , инструкции по удалению клавиатуры для ответов или принудительному ответу пользователя.

telegram.sendMessage(chatId, text, [extra]) => Promise —

Используйте этот метод для отправки текстовых сообщений. В случае успеха возвращается отправленное сообщение .

ПараметрТипНеобх.Описание
chat_idЦелое число или строкаДаУникальный идентификатор целевого чата или имя пользователя целевого канала (в формате @channelusername)
textStringДаТекст отправляемого сообщения, 1-4096 символов после разбора сущностей
parse_modeStringOptionalРежим разбора сущностей в тексте сообщения. Дополнительные сведения см. в параметрах форматирования .
entitiesМассив MessageEntityOptionalСериализованный в формате JSON список специальных сущностей, которые появляются в тексте сообщения, который можно указать вместо parse_mode.
disable_web_page_previewлогическийOptionalОтключает предварительный просмотр ссылок в этом сообщении
disable_notificationлогическийOptionalОтправляет сообщение молча . Пользователи получат уведомление без звука.
protect_contentлогическийOptionalЗащищает содержимое отправленного сообщения от пересылки и сохранения
reply_to_message_idЦелое числоOptionalЕсли сообщение является ответом, ID исходного сообщения
allow_sending_without_replyлогическийOptionalПередайте True , если сообщение должно быть отправлено, даже если указанное сообщение с ответом не найдено.
reply_markupInlineKeyboardMarkup 
или 
ReplyKeyboardMarkup 
или 
ReplyKeyboardRemove 
или 
ForceReply
OptionalДополнительные возможности интерфейса. Сериализованный в формате JSON объект для встроенной клавиатуры , настраиваемой клавиатуры для ответов , инструкции по удалению клавиатуры для ответов или принудительному ответу пользователя.

telegram.sendPhoto(chatId, photo, [extra]) => Promise — Используйте этот метод для отправки фотографий. В случае успеха возвращается отправленное сообщение .

ParameterTypeRequiredDescription
chat_idInteger or StringYesУникальный идентификатор целевого чата или имя пользователя целевого канала (в формате 
@channelusername)
photoInputFile or StringYesФото для отправки. 
Передайте file_id в виде строки, чтобы отправить фотографию, которая существует на серверах Telegram (рекомендуется), передайте URL-адрес HTTP в виде строки, чтобы Telegram мог получить фотографию из Интернета, или загрузите новую фотографию, используя multipart/form-data. 
Фотография должна быть размером не более 10 МБ. 
Суммарная ширина и высота фотографии не должны превышать 10000. 
Соотношение ширины и высоты должно быть не более 20. 
Подробнее об отправке файлов »
captionStringOptionalПодпись к фотографии (также может использоваться при повторной отправке фотографий по 
file_id ), 0-1024 символа после разбора сущностей
parse_modeStringOptionalРежим разбора сущностей в подписи к фото. 
Дополнительные сведения см. в 
параметрах форматирования .
caption_entitiesArray of MessageEntityOptionalСериализованный в формате JSON список специальных сущностей, появляющихся в заголовке, который можно указать вместо 
parse_mode.
disable_notificationBooleanOptionalОтправляет сообщение 
молча . 
Пользователи получат уведомление без звука.
protect_contentBooleanOptionalЗащищает содержимое отправленного сообщения от пересылки и сохранения
reply_to_message_idIntegerOptionalЕсли сообщение является ответом, ID исходного сообщения
allow_sending_without_replyBooleanOptionalПередайте 
True , если сообщение должно быть отправлено, даже если указанное сообщение с ответом не найдено.
reply_markupInlineKeyboardMarkup 
or 
ReplyKeyboardMarkup 
or 
ReplyKeyboardRemove 
or ForceReply
OptionalДополнительные возможности интерфейса. 
Сериализованный в формате JSON объект для 
встроенной клавиатуры , 
настраиваемой клавиатуры для ответов , инструкции по удалению клавиатуры для ответов или принудительному ответу пользователя.

telegram.sendMediaGroup(chatId, media, [extra]) => Promise — Отправляет медиа альбом.

telegram.sendSticker(chatId, sticker, [extra]) => Promise — Отправляет наклейку.

telegram.setStickerPositionInSet(sticker, position) => Promise — Используйте этот метод, чтобы переместить наклейку в наборе, созданном ботом, в определенную позицию.

telegram.sendVenue(chatId, latitude, longitude, title, address, [extra]) => Promise — Отправляет информацию о месте проведения.

telegram.sendInvoice(chatId, invoice) => Promise — Отправляет счет.

telegram.sendVideo(chatId, video, [extra]) => Promise — Отправляет видео.

telegram.sendAnimation(chatId, animation, [extra]) => Promise — Отправляет видео.

telegram.sendVideoNote(chatId, video, [extra]) => Promise — Отправляет круглое видео.

telegram.sendVoice(chatId, voice, [extra]) => Promise — Посылает голос.

telegram.sendPoll(chatId, question, options, [extra]) => Promise — Отправляет анонимный опрос.

telegram.setMyCommands(commands) => Promise — Используйте этот метод, чтобы изменить список команд бота.

telegram.sendQuiz(chatId, question, options, [extra]) => Promise — Отправляет викторину.

telegram.stopPoll(chatId, messageId, [extra]) => Promise — Останавливает анонимный опрос.

telegram.stopMessageLiveLocation(chatId, messageId, inlineMessageId, [markup]) => Promise — Используйте этот метод, чтобы прекратить обновление сообщения о местоположении в реальном времени, отправленного ботом или через бота (для встроенных ботов), до истечения срока действия live_period.

telegram.uploadStickerFile(ownerId, stickerFile) => Promise — Используйте этот метод, чтобы загрузить файл .png со стикером для последующего использования в методах createNewStickerSet и addStickerToSet.

telegram.setWebhook(url, [cert], [maxConnections], [allowedUpdates]) => Promise —

Используйте этот метод, чтобы указать URL-адрес и получать входящие обновления через исходящий веб-перехватчик. Всякий раз, когда для бота появляется обновление, мы отправляем HTTPS-запрос POST на указанный URL-адрес, содержащий обновление в формате JSON . В случае неудачного запроса мы откажемся после разумного количества попыток. Возвращает True в случае успеха.

Если вы хотите убедиться, что вебхук был установлен вами, вы можете указать секретные данные в параметре secret_token . Если указано, запрос будет содержать заголовок «X-Telegram-Bot-Api-Secret-Token» с секретным токеном в качестве содержимого.

telegram.unbanChatMember(chatId, userId) => Promise — Используйте этот метод, чтобы разблокировать ранее исключенного пользователя в супергруппе.

telegram.setPassportDataErrors(errors) => Promise — Информирует пользователя о том, что некоторые из предоставленных им элементов Telegram Passport содержат ошибки. Пользователь не сможет повторно отправить вам свой Паспорт, пока ошибки не будут исправлены (содержимое поля, для которого вы вернули ошибку, должно измениться).

//—————————————————————————————–

Подсказки по сценам