web-dev-qa-db-fra.com

Télégramme, obtention de file_id pour l'autocollant existant

J'écris un bot Telegram et je veux qu'il envoie un autocollant.

Il est dit ici , que pour envoyer un autocollant qui existe déjà sur les serveurs Telegram, nous pouvons simplement passer file_id . La chose est, je n'ai absolument aucune idée comment obtenir file_id de n'importe quel autocollant. Par exemple. comment envoyer un autocollant du pack Greater Minds? Je suppose que ce pack est sur les serveurs Telegram car ils l'incluent dans chaque application.

16
Egor Ignatenkov

Pour découvrir un sticker file_id:

  1. Envoyez l'autocollant de l'application Telegram à votre robot.

  2. Utilisez la méthode getUpdates du bot pour recevoir l'autocollant. Vous devriez voir le collant file_id dans le message.

Votre bot peut utiliser ce file_id pour envoyer le même autocollant à un autre utilisateur. Faites attention; dans le message, il y a un champ thumb, qui a aussi un file_id. Faites pas utilisez celui-ci pour envoyer l'autocollant. Ça ne marchera pas.

Une autre possibilité, dont vous savez peut-être, est que vous pouvez toujours télécharger l'image de l'autocollant dans un fichier disque, puis utiliser ce fichier comme paramètre sticker pour la méthode sendSticker, équivalent au téléchargement de la fichier.

27
Nick Lee