8
Die user object hat keine photo_id, also gibt es einen Weg, um den Avatar des Benutzers zu erhalten?Wie bekomme ich das Benutzerbild/Avatar über die Bot-Chat-API von Telegram?
Die user object hat keine photo_id, also gibt es einen Weg, um den Avatar des Benutzers zu erhalten?Wie bekomme ich das Benutzerbild/Avatar über die Bot-Chat-API von Telegram?
Ich habe keine php
Code gefunden, aber diese nodejs
Schnipsel arbeitete für mich, damit ich Ihnen dies auf die Idee, wie es funktioniert.
HTTP API
js
Datei neben dem node_modules
Ordner (zB: server.js
)diese Codes in der server.js
Datei setzen und es dann laufen mit $ 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);
});
});
});