2017-03-23 2 views
1
bot.onText(/(.+)$/, function (msg, match) { 
    const opts = { 
    reply_markup: { 
     inline_keyboard: [ 
     [ 
      { 
      text: 'Edit Text', 
      callback_data: 'edit' 
      } 
     ] 
     ] 
    } 
    }; 
    bot.sendMessage(msg.from.id, 'Original Text', opts); 
}); 

bot.on("callback_query", function(callbackQuery) { 
    // 'callbackQuery' is of type CallbackQuery 
    console.log(callbackQuery); 
}); 

Ich habe nach einer Antwort auf diese Frage gesucht, alle verfügbaren Ressourcen auf Callback versucht. als Solche Telegram bot inline keyboard via Node.JS Telegram inline keyboard and keyboard How can create menu for telegram bot in bot father?Inline-Tastaturklick ruft Callback_Query nicht auf Warum?

+0

Ihr Code sieht gut aus und funktioniert gut in meiner Sandbox. –

+0

Hey @ stdob-- Gibt es einen besonderen Schritt? Muss der Bot bereitgestellt werden, um die Abfrage zu testen? – User1911

+0

Nichts besonderes: Token zur Verfügung stellen und starten ... –

Antwort

0

Wie wäre es damit so versuchen?

bot.on('callback_query', function onCallbackQuery(callbackQuery) { 
     const action = callbackQuery.data; 
     const msg = callbackQuery.message; 
     // do your stuff 
     if (action === 'adress') { 
     // do something if callback data is "adress", you can have multiple if statements for various cases 
     } 
}); 

So habe ich es funktioniert, hoffe es hilft!

+0

Nein, es funktioniert nicht. Muss in BotFather eine spezielle Konfiguration vorgenommen werden? – User1911

+0

@Smit Traurig das zu hören. Ich bin mir sicher, dass absolut keine Einrichtung in BotFather vorgenommen werden muss. Haben Sie versucht, das Beispiel von [diese Seite in den Dokumenten?] (Https://github.com/yagop/node-telegram-bot-api/blob/master/examples/polling.js) auszuführen. Sind Sie sicher, dass es das gibt? Kein Problem mit Ihrem Polling/WebHook Setup? Es könnte auch der Fall sein: Soweit ich weiß, ist dieses Zeug verantwortlich für das Feedback, das der Bot erhält. – Monochrome

+0

@Smit Auch im Kommentarbereich für die ursprüngliche Frage (wo ich jetzt leider nicht kommentieren kann) haben Sie gefragt, ob der Bot auf einem Server bereitgestellt werden soll. Und die Antwort ist nein, es ist nicht erforderlich. Sie können Callback-Abfragen, die den Bot auf Ihrem Computer ausführen, absolut verarbeiten. – Monochrome

Verwandte Themen