📜  Node.js Bot.sendDocument() 方法(1)

📅  最后修改于: 2023-12-03 15:03:12.161000             🧑  作者: Mango

Node.js Bot.sendDocument() 方法介绍

在 Node.js 中使用 Telegram Bot API 发送文档,你可以使用 Bot.sendDocument() 方法。这个方法可以将本地的文档文件或者通过 URL 获取的文件上传到 Telegram 服务器,并发送到指定的聊天室或者群组中。

语法
bot.sendDocument(chatId, document[, options])
参数
  • chatId: 发送文档的聊天室或者群组的 ID。可以是数字或者字符串形式。
  • document: 要发送的文档,可以是本地文件的路径或者 URL。
  • options (可选): 一个包含可选属性的对象:
    • caption: 文档的描述。
    • replyMarkup: 可选的、针对这条发送文档消息的用户的回复的额外接口。
返回值

这个方法返回一个 Promise 对象,当消息发送成功后,它会被解决为 Message 对象。当消息发送失败时,Promise 对象会被拒绝。

示例

以下示例演示了如何使用 Bot.sendDocument() 方法发送本地的文档:

const TelegramBot = require('node-telegram-bot-api');
const bot = new TelegramBot('TOKEN');

bot.sendDocument(chatId, '/path/to/document.pdf', { caption: '这是一个文档' })
  .then((res) => {
    console.log('文档发送成功', res);
  })
  .catch((err) => {
    console.log('文档发送失败', err);
  });

以下示例演示了如何使用 Bot.sendDocument() 方法发送通过 URL 获取的文档:

const TelegramBot = require('node-telegram-bot-api');
const bot = new TelegramBot('TOKEN');

bot.sendDocument(chatId, 'https://example.com/document.pdf', { caption: '这是一个文档' })
  .then((res) => {
    console.log('文档发送成功', res);
  })
  .catch((err) => {
    console.log('文档发送失败', err);
  });

注意:在使用 Bot.sendDocument() 方法发送 URL 的时候,需要保证 URL 是公开可访问的。否则,Telegram 服务器将无法下载这个文件,并且发送文档消息会失败。