Библиотека C ++ для API Telegram Bot.
Документация находится здесь.
Простой эхо -бот, который отправляет все, что он получает:
# include < stdio.h >
# include < tgbot/tgbot.h >
int main () {
TgBot::Bot bot ( " PLACE YOUR TOKEN HERE " );
bot. getEvents (). onCommand ( " start " , [&bot](TgBot::Message:: Ptr message) {
bot. getApi (). sendMessage (message-> chat -> id , " Hi! " );
});
bot. getEvents (). onAnyMessage ([&bot](TgBot::Message:: Ptr message) {
printf ( " User wrote %s n " , message-> text . c_str ());
if ( StringTools::startsWith (message-> text , " /start " )) {
return ;
}
bot. getApi (). sendMessage (message-> chat -> id , " Your message is: " + message-> text );
});
try {
printf ( " Bot username: %s n " , bot. getApi (). getMe ()-> username . c_str ());
TgBot::TgLongPoll longPoll (bot);
while ( true ) {
printf ( " Long poll started n " );
longPoll. start ();
}
} catch (TgBot::TgException& e) {
printf ( " error: %s n " , e. what ());
}
return 0 ;
}Все остальные образцы расположены здесь.
Зависимости:
CurlHttpClient ). Вы можете установить зависимости от Debian Distibutiveive с этими командами:
sudo apt install g++ make binutils cmake libboost-system-dev libssl-dev zlib1g-dev libcurl4-openssl-devНеобязательно установите зависимости для тестирования и документирования
sudo apt install libboost-test-dev doxygenВы можете собрать и установить библиотеку с этими командами:
git clone https://github.com/reo7sp/tgbot-cpp
cd tgbot-cpp
cmake .
make -j4
sudo make installВ качестве альтернативы, вы можете использовать Docker для построения и запуска своего бота. Установите базовое изображение DockerFile в Reo7sp/TGBOT-CPP.
Вы можете установить зависимости с этими командами:
brew install gcc cmake boost openssl zlib curlВы можете скомпилировать и установить библиотеку, как инструкции Linux.
Взято из VCPKG - Quick Start: Windows.
Предварительные условия:
Во -первых, скачать и сами загрузить и начальную загрузку; Он может быть установлен в любом месте, но, как правило, мы рекомендуем использовать VCPKG в качестве подмодуля для проектов Cmake и установить его во всем мире для проектов Visual Studio. Мы рекомендуем где -то такое, как C:srcvcpkg или C:devvcpkg , поскольку в противном случае вы можете столкнуться с проблемами пути для некоторых систем сборки портов.
> git clone https://github.com/microsoft/vcpkg
> .vcpkgbootstrap-vcpkg.batЧтобы использовать VCPKG с Visual Studio, запустите следующую команду (может потребовать повышения администратора):
> .vcpkgvcpkg integrate installЧтобы установить библиотеки для Windows X64, запустите:
> .vcpkgvcpkg install tgbot-cpp:x64-windowsЧтобы установить для Windows X86, запустите:
> .vcpkgvcpkg install tgbot-cppБиблиотека теперь будет установлена, и Visual Studio должна иметь возможность найти установку VCPKG.
Используйте пример cmakelists.txt с изменениями:
/usr/local/include/usr/local/lib/libTgBot.a /local/lib/libtgbot.a на C:/src/vcpkg/installed/x64-windows/lib/TgBot.lib или что-то еще однозначное в соответствии с вашим собственным пути установки. Пример cmakelists.txt
Кроме того, вы можете рассматривать этот репозиторий как подмодуль вашего проекта, например, см. Echobot-Submodule.
g++ telegram_bot.cpp -o telegram_bot --std=c++14 -I/usr/local/include -lTgBot -lboost_system -lssl -lcrypto -lpthread -DTGBOT_DISABLE_NAGLES_ALGORITHM # Disable 'Nagle's algorithm'
-DTGBOT_CHANGE_SOCKET_BUFFER_SIZE # Socket Buffer Size Expansion
-DTGBOT_CHANGE_READ_BUFFER_SIZE # Read Buffer Size Expansion
Лицензия MIT.