如何使用Telegram机器人聊天API获取用户图片/化身?

如何使用Telegram机器人聊天API获取用户图片/化身?,telegram,telegram-bot,avatar,php-telegram-bot,Telegram,Telegram Bot,Avatar,Php Telegram Bot,没有照片id,所以有没有办法获得用户的头像?我没有找到任何php代码,但是这个nodejs片段对我有效,所以我把它放在这里让你了解它的工作原理 创建一个机器人(开始在电报中与@botfather聊天) 创建bot完成后,它将为您提供一个用于httpapi $npm安装--保存节点电报bot api 在node\u modules文件夹旁边创建一个js文件(例如:server.js) 将这些代码放入server.js文件中,然后使用$node server.js const Telegra

没有照片id,所以有没有办法获得用户的头像?

我没有找到任何
php
代码,但是这个
nodejs
片段对我有效,所以我把它放在这里让你了解它的工作原理

  • 创建一个机器人(开始在电报中与@botfather聊天)
  • 创建bot完成后,它将为您提供一个用于
    httpapi
  • $npm安装--保存节点电报bot api
  • node\u modules
    文件夹旁边创建一个
    js
    文件(例如:
    server.js
  • 将这些代码放入
    server.js
    文件中,然后使用
    $node server.js

        const TelegramBot = require('node-telegram-bot-api');
        // replace the value below with the Telegram token you receive from @BotFather  
        const token = 'XXXX35XXXX:XXXX7DCYw5IsY6DHcwXXXXXXXXX';
        // Create a bot that uses 'polling' to fetch new updates    
        const bot = new TelegramBot(token, {
            polling: true
        });
        // Matches "/echo [whatever]"    
        bot.onText(/\/echo (.+)/, (msg, match) => {
            // 'msg' is the received Message from Telegram    
            // 'match' is the result of executing the regexp above on the text content    
            // of the message    
    
            const chatId = msg.chat.id;
            const resp = match[1]; // the captured "whatever"    
    
            // send back the matched "whatever" to the chat    
            bot.sendMessage(chatId, resp);
        });
        // Listen for any kind of message. There are different kinds of  
        // messages.  
        bot.on('message', (msg) => {
            const chatId = msg.chat.id;
            var user_profile = bot.getUserProfilePhotos(msg.from.id);
            user_profile.then(function (res) {
                var file_id = res.photos[0][0].file_id;
                var file = bot.getFile(file_id);
                file.then(function (result) {
                    var file_path = result.file_path;
                    var photo_url = `https://api.telegram.org/file/bot${token}/${file_path}`
                    bot.sendMessage(chatId, photo_url);
                });
            });
        });