Telegram-Bot: Wie man den Benutzer anhand seiner ID (nicht seines Benutzernamens) erwähnt

9

Ich erstelle einen Telegramm-Bot und verwende die Methode sendMessage , um die Nachrichten zu senden. Es ist einfach zu erwähnen, Benutzer mit @username , Aber wie erwähnt man Benutzer, wenn sie keinen Benutzernamen haben?

Wenn Sie die telegramm app / web verwenden, können wir den Benutzer nach @integer_id (name) und das telegramm app / web wird es in anklickbaren Text umwandeln. integer_id wird automatisch generiert, wenn wir den Benutzer auswählen, nachdem Sie @ eingegeben haben.

ein anderer Hintergrund: Ich versuche forceReply zu verwenden und möchte den Nutzer als Ziel auswählen, wenn sie einen Nutzernamen haben, kann ich leicht zielen sie, indem sie sie auf dem Text auf sendMessage Methode erwähnen.

Der Bot, den ich erschaffe, ist ein "Quiz" wie ein Bot. wo jeder Spieler an der Reihe ist und der Bot ihnen die Frage schickt, wird jede Nachricht vom Bot auf einen anderen Spieler zielen.

HINWEIS: Ich deaktiviere nicht die Privacy Mode , ich will kein Telegramm, das meinen Server mit msg bombardiert, brauche ich nicht. Es hat meinen billigen, fiesen Server überlastet. Also, deaktivieren Sie es nicht eine Option.

Ich bin offen für andere Lösungen, wo der Bot den ausgewählten Spieler hören kann.

danke.

UPDATE 21/10: Ich habe mit BotSupport um ein Telegramm gesprochen, sagten sie, denn Bots können keinen Benutzer ohne Benutzernamen nennen.

In meinem Fall verwende ich weiterhin forceReply und gab auch eine kurze Nachricht an Benutzer, die keinen Benutzernamen haben, um sie einzurichten, damit sie von forceReply function profitieren können.

    
Awang Setyawan 14.10.2016, 17:03
quelle

2 Antworten

4

Laut der offiziellen Dokumentation ist es möglich, den Benutzer anhand seiner numerischen ID mit Markup zu erwähnen:

[inline mention of a user](tg://user?id=123456789)

    
Anatoly Rugalev 19.09.2017 22:38
quelle
0

Bots sind in der Lage, Benutzer anhand ihrer ID zu kennzeichnen, sie können dies jedoch nicht mithilfe der offiziellen HTTP Bot-API tun.

Update: Nicht mehr nötig, da Telegram nativen Support dafür hinzugefügt hat.

Wenn Sie sich mit MadelineProto (PHP) bei Ihrem Bots-Konto anmelden, können Sie diesen "Link" verwenden, um jemanden mit seiner ID zu erwähnen mit parse_mode auf Markdown gesetzt

%Vor%     
Jonas Fowl 20.04.2017 20:07
quelle

Tags und Links

yii\base\ErrorException
Copied! Copy Stacktrace Search Stackoverflow Search Google Error

PHP Core Warningyii\base\ErrorException

PHP Startup: Unable to load dynamic library 'mongodb.so' (tried: /usr/lib64/php/modules/mongodb.so (/usr/lib64/php/modules/mongodb.so: cannot open shared object file: No such file or directory), /usr/lib64/php/modules/mongodb.so.so (/usr/lib64/php/modules/mongodb.so.so: cannot open shared object file: No such file or directory))

$_GET = [
    'id' => '312508',
    'url' => 'telegram-bot-how-to-mention-user-by-its-id-not-its-username',
];

$_SESSION = [
    '__flash' => [],
];