diff options
author | Oleg Morozenkov <m@oleg.rocks> | 2018-07-23 02:35:50 +0300 |
---|---|---|
committer | Oleg Morozenkov <m@oleg.rocks> | 2018-07-23 02:35:50 +0300 |
commit | 98b8b7e4338b71ee46c4301b0bf2ae667be9a99d (patch) | |
tree | 32f8b0d32048b2d83b57773c0efa3db9600b8701 /samples/inline-keyboard/src/main.cpp | |
parent | 1dd3affe306793d2129f121c11e43c45ae8690da (diff) | |
parent | 167e3e7607e43a0f06c7f87ced94f481e6525b0e (diff) |
Merge branch 'master' into nicholascw-master
Diffstat (limited to 'samples/inline-keyboard/src/main.cpp')
-rw-r--r-- | samples/inline-keyboard/src/main.cpp | 92 |
1 files changed, 48 insertions, 44 deletions
diff --git a/samples/inline-keyboard/src/main.cpp b/samples/inline-keyboard/src/main.cpp index 440f965..0976989 100644 --- a/samples/inline-keyboard/src/main.cpp +++ b/samples/inline-keyboard/src/main.cpp @@ -1,5 +1,6 @@ -#include <signal.h> -#include <stdio.h> +#include <csignal> +#include <cstdio> +#include <cstdlib> #include <exception> #include <tgbot/tgbot.h> @@ -10,46 +11,49 @@ using namespace TgBot; bool sigintGot = false; int main() { - Bot bot("PLACE YOUR TOKEN HERE"); - - // Thanks Pietro Falessi for code - InlineKeyboardMarkup::Ptr keyboard(new InlineKeyboardMarkup); - vector<InlineKeyboardButton::Ptr> row0; - InlineKeyboardButton::Ptr checkButton(new InlineKeyboardButton); - checkButton->text = "check"; - checkButton->callbackData = "check"; - row0.push_back(checkButton); - keyboard->inlineKeyboard.push_back(row0); - - bot.getEvents().onCommand("start", [&bot, &keyboard](Message::Ptr message) { - bot.getApi().sendMessage(message->chat->id, "Hi!", false, 0, keyboard); - }); - bot.getEvents().onCommand("check", [&bot, &keyboard](Message::Ptr message) { - string response = "ok"; - bot.getApi().sendMessage(message->chat->id, response, false, 0, keyboard, "Markdown"); - }); - bot.getEvents().onCallbackQuery([&bot, &keyboard](CallbackQuery::Ptr query) { - if (StringTools::startsWith(query->data, "check")) { - string response = "ok"; - bot.getApi().sendMessage(query->message->chat->id, response, false, 0, keyboard, "Markdown"); - } - }); - - signal(SIGINT, [](int s) { - printf("SIGINT got"); - sigintGot = true; - }); - try { - printf("Bot username: %s\n", bot.getApi().getMe()->username.c_str()); - - TgLongPoll longPoll(bot); - while (!sigintGot) { - printf("Long poll started\n"); - longPoll.start(); - } - } catch (exception& e) { - printf("error: %s\n", e.what()); - } - - return 0; + string token(getenv("TOKEN")); + printf("Token: %s\n", token.c_str()); + + Bot bot(token); + + // Thanks Pietro Falessi for code + InlineKeyboardMarkup::Ptr keyboard(new InlineKeyboardMarkup); + vector<InlineKeyboardButton::Ptr> row0; + InlineKeyboardButton::Ptr checkButton(new InlineKeyboardButton); + checkButton->text = "check"; + checkButton->callbackData = "check"; + row0.push_back(checkButton); + keyboard->inlineKeyboard.push_back(row0); + + bot.getEvents().onCommand("start", [&bot, &keyboard](Message::Ptr message) { + bot.getApi().sendMessage(message->chat->id, "Hi!", false, 0, keyboard); + }); + bot.getEvents().onCommand("check", [&bot, &keyboard](Message::Ptr message) { + string response = "ok"; + bot.getApi().sendMessage(message->chat->id, response, false, 0, keyboard, "Markdown"); + }); + bot.getEvents().onCallbackQuery([&bot, &keyboard](CallbackQuery::Ptr query) { + if (StringTools::startsWith(query->data, "check")) { + string response = "ok"; + bot.getApi().sendMessage(query->message->chat->id, response, false, 0, keyboard, "Markdown"); + } + }); + + signal(SIGINT, [](int s) { + printf("SIGINT got\n"); + sigintGot = true; + }); + try { + printf("Bot username: %s\n", bot.getApi().getMe()->username.c_str()); + + TgLongPoll longPoll(bot); + while (!sigintGot) { + printf("Long poll started\n"); + longPoll.start(); + } + } catch (exception& e) { + printf("error: %s\n", e.what()); + } + + return 0; } |