web-dev-qa-db-fra.com

Télégramme bot: Comment mentionner un utilisateur par son identifiant (pas son nom d'utilisateur)

Je crée un bot télégramme et utilise la méthode sendMessage pour envoyer les messages . Il est facile de mentionner un utilisateur en utilisant @username, mais comment mentionner un utilisateur alors qu'il n'a pas de nom d'utilisateur?

Si vous utilisez l'application télégramme/web, nous pouvons mentionner l'utilisateur par @integer_id (name), et télégramme app/web le convertira en texte cliquable. integer_id sera généré automatiquement lors de la sélection de l'utilisateur, après avoir tapé @.

un autre arrière-plan: J'essaie d’utiliser forceReply et je veux cibler l’utilisateur, s’ils ont un nom d’utilisateur, je peux facilement les cibler, en les mentionnant dans le texte de la méthode sendMessage.

le bot que je crée est un "quiz" comme bot. Lorsque chaque joueur doit jouer son rôle et que le bot leur envoie la question, chaque message envoyé par ce dernier cible un joueur différent.

REMARQUE: je ne désactive pas le Privacy Mode, je ne veux pas que les télégrammes bombardent mon serveur avec des msg inutiles. il surchargeait mon serveur méchant pas cher. donc, le désactiver n'est pas une option.

Je suis ouvert à toute autre solution, où le bot peut écouter le lecteur sélectionné.

merci.

MISE À JOUR 21/10: J'ai parlé à BotSupport pour un télégramme, ont-ils dit, pour le moment, les robots ne peuvent pas mentionner un utilisateur sans nom d'utilisateur.

donc dans mon cas, je continue toujours à utiliser forceReply, et aussi, j'ai donné un court message à un utilisateur qui n'a pas de nom d'utilisateur pour le configurer, afin qu'il puisse obtenir le bénéfice de la fonction forceReply.

13
Awang Setyawan

Les robots peuvent identifier les utilisateurs par leur identifiant. Ils ne peuvent simplement pas le faire en utilisant l'API officielle HTTP Bot.

Mise à jour: plus nécessaire, car Telegram a ajouté un support natif pour cela.

Si vous vous connectez à votre compte bots avec MadelineProto (PHP), vous pouvez utiliser ce "lien" pour mentionner quelqu'un par son ID avec parse_mode défini sur markdown


 [Daniil Gentili] (mention: @danogentili) 

0
Jonas Fowl