電報ボットAPI用のC ++ライブラリ。
ドキュメントはここにあります。
受信するすべてを送信するシンプルなエコーボット:
# 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ベースのディストビーティに依存関係をインストールできます。
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 curlLinuxの指示のようにライブラリをコンパイルしてインストールできます。
VCPKGから取得 - クイックスタート:Windows。
前提条件:
まず、VCPKG自体をダウンロードしてブートストラップします。どこにでもインストールできますが、一般に、VCPKGをCmakeプロジェクトのサブモジュールとして使用し、Visual Studioプロジェクトにグローバルにインストールすることをお勧めします。 C:srcvcpkgまたはC:devvcpkgのような場所をお勧めします。
> git clone https://github.com/microsoft/vcpkg
> .vcpkgbootstrap-vcpkg.batVisual StudioでVCPKGを使用するには、次のコマンドを実行します(管理者の標高が必要になる場合があります)。
> .vcpkgvcpkg integrate installWindows X64のライブラリをインストールするには、実行してください。
> .vcpkgvcpkg install tgbot-cpp:x64-windowsWindows X86にインストールするには、実行してください。
> .vcpkgvcpkg install tgbot-cppライブラリがインストールされ、Visual StudioがVCPKGのインストールを見つけることができるはずです。
変更を備えたcmakelists.txtの例を使用します。
/usr/local/include/usr/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ライセンス。