Biblioteca C ++ para Telegram Bot API.
La documentación se encuentra aquí.
Simple Echo Bot que envía todo lo que recibe:
# 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 ;
}Todas las demás muestras se encuentran aquí.
Dependencias:
CurlHttpClient ). Puede instalar dependencias en Distibutivos basados en Debian con estos comandos:
sudo apt install g++ make binutils cmake libboost-system-dev libssl-dev zlib1g-dev libcurl4-openssl-devOpcionalmente, instale las dependencias para probar y documentar
sudo apt install libboost-test-dev doxygenPuede compilar e instalar la biblioteca con estos comandos:
git clone https://github.com/reo7sp/tgbot-cpp
cd tgbot-cpp
cmake .
make -j4
sudo make installAlternativamente, puede usar Docker para construir y ejecutar su bot. Establezca la imagen base de DockerFile de su suma en REO7SP/TGBOT-CPP.
Puede instalar dependencias con estos comandos:
brew install gcc cmake boost openssl zlib curlPuede compilar e instalar la biblioteca como instrucciones de Linux.
Tomado de VCPKG - Inicio rápido: Windows.
Prerrequisitos:
Primero, descargue y bootstrap vcpkg en sí; Se puede instalar en cualquier lugar, pero generalmente recomendamos usar VCPKG como un submódulo para proyectos CMake e instalarlo a nivel mundial para proyectos de Visual Studio. Recomendamos en algún lugar como C:srcvcpkg o C:devvcpkg , ya que de lo contrario puede encontrar problemas de ruta para algunos sistemas de compilación de puertos.
> git clone https://github.com/microsoft/vcpkg
> .vcpkgbootstrap-vcpkg.batPara usar VCPKG con Visual Studio, ejecute el siguiente comando (puede requerir la elevación del administrador):
> .vcpkgvcpkg integrate installPara instalar las bibliotecas para Windows X64, ejecute:
> .vcpkgvcpkg install tgbot-cpp:x64-windowsPara instalar para Windows X86, ejecute:
> .vcpkgvcpkg install tgbot-cppLa biblioteca ahora se instalará y Visual Studio debería poder encontrar la instalación de VCPKG.
Use el ejemplo cmakelists.txt con cambios:
/usr/local/include/usr/local/lib/libTgBot.a a C:/src/vcpkg/installed/x64-windows/lib/TgBot.lib o algo similar según su propia ruta de instalación. Ejemplo cmakelists.txt
Además, puede tratar este repositorio como un submódulo de su proyecto, por ejemplo, ver 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
La licencia del MIT.