C ++ Bibliothek für Telegramm -Bot -API.
Die Dokumentation befindet sich hier.
Einfacher Echo -Bot, der alles sendet, was er erhält:
# 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 ;
}Alle anderen Proben befinden sich hier.
Abhängigkeiten:
CurlHttpClient verwenden). Sie können Abhängigkeiten von Debian-basierten Distibutiven mit diesen Befehlen installieren:
sudo apt install g++ make binutils cmake libboost-system-dev libssl-dev zlib1g-dev libcurl4-openssl-devInstallieren Sie optional die Abhängigkeiten zum Testen und Dokumentieren
sudo apt install libboost-test-dev doxygenSie können die Bibliothek mit diesen Befehlen kompilieren und installieren:
git clone https://github.com/reo7sp/tgbot-cpp
cd tgbot-cpp
cmake .
make -j4
sudo make installAlternativ können Sie Docker verwenden, um Ihren Bot zu erstellen und auszuführen. Legen Sie das Basisbild Ihrer Dockerfile auf ReO7sp/TGBOT-CPP ein.
Sie können Abhängigkeiten mit diesen Befehlen installieren:
brew install gcc cmake boost openssl zlib curlSie können die Bibliothek wie Linux -Anweisungen kompilieren und installieren.
Start von VCPKG - Schnellstart: Windows.
Voraussetzungen:
Download und Bootstrap VCPKG selbst herunterladen und bootstrap; Es kann überall installiert werden. Im Allgemeinen empfehlen wir jedoch, VCPKG als Submodul für CMake -Projekte zu verwenden und es global für Visual Studio -Projekte zu installieren. Wir empfehlen irgendwo wie C:srcvcpkg oder C:devvcpkg , da Sie ansonsten auf Pfadprobleme für einige Port -Build -Systeme stoßen können.
> git clone https://github.com/microsoft/vcpkg
> .vcpkgbootstrap-vcpkg.batUm VCPKG mit Visual Studio zu verwenden, führen Sie den folgenden Befehl aus (kann die Erhebung von Administratoren erfordern):
> .vcpkgvcpkg integrate installUm die Bibliotheken für Windows X64 zu installieren, führen Sie aus:
> .vcpkgvcpkg install tgbot-cpp:x64-windowsUm für Windows X86 zu installieren, führen Sie aus:
> .vcpkgvcpkg install tgbot-cppDie Bibliothek wird nun installiert und Visual Studio sollte in der Lage sein, die VCPKG -Installation zu finden.
Verwenden Sie das Beispiel cmakelists.txt mit Änderungen:
/usr/local/include/usr/local/lib/libTgBot.a to C:/src/vcpkg/installed/x64-windows/lib/TgBot.lib oder etwas Simmilars gemäß Ihrem eigenen Installationspfad. Beispiel cmakelists.txt
Außerdem können Sie dieses Repository als Submodul Ihres Projekts behandeln, z. B. siehe 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
Die MIT -Lizenz.