小编har*_*uke的帖子

如何使用 Telegraf API 发送本地存储的照片?

我是这个的初学者。

我正在尝试使用Telegraf API开发 Telegram 机器人。当用户发送某个命令(在我的情况下'/details <number>':)并且机器人必须使用本地存储在机器人文件夹中的特定照片(基于用户键入的数字)时,我被卡住了。

我设法使用 Telegram-bot-api 实现了它,但由于 API 还没有完成,我切换到 Telegraf。我试图理解 Telegraf 的官方文档,但我无法完全理解它。

查看官方示例并将其复制到一个新项目显然有效。

我在本地存储照片时遇到了问题,甚至无法理解“bot.command”此时的工作原理。

这个有效: bot.command('text', ({replyWithPhoto}) => replyWithPhoto(url: <url>)); 当用户输入:'/text' 时,他会根据 URL 取回照片。我以为本地存储的照片是一样的,但事实并非如此..

var filePath = "./assets/monsters/"+monsterList[2].name+"/sample.png";
bot.command('text', ({replyWithPhoto}) => replyWithPhoto(filePath));
Run Code Online (Sandbox Code Playgroud)

文件路径我确定它是正确的。

现在的代码:

bot.on('text', function(ctx){
   var chat_id = ctx.from.id;
   var text = ctx.message.text;

   var index = 0;
   var commandDetails="";
   if (text/includes("/details ")){
      try{
       var split = text.split(' ');
       index = Number(split[1]);
       commandDetails = '/details'+index.toString();
      }catch(e){}
   }

   switch(text){

      case: 'bla bla bla';break; …
Run Code Online (Sandbox Code Playgroud)

javascript node.js telegram-bot telegraf

3
推荐指数
1
解决办法
4232
查看次数

标签 统计

javascript ×1

node.js ×1

telegraf ×1

telegram-bot ×1