diff options
author | aunsane <aunsane@gmail.com> | 2018-04-27 21:33:17 +0300 |
---|---|---|
committer | aunsane <aunsane@gmail.com> | 2018-04-27 21:33:17 +0300 |
commit | e1ec72eab6d00b3ba38e5932bc88920f103b6e4a (patch) | |
tree | 999de2725a83e30fbbf6576200525d4ef0c5fe38 /protocols/Telegram/tdlib/td/example/cpp/tdjson_example.cpp | |
parent | b9ce1d4d98525490ca1a38e2d9fd4f3369adb3e0 (diff) |
Telegram: initial commit
- tdlib moved to telegram dir
Diffstat (limited to 'protocols/Telegram/tdlib/td/example/cpp/tdjson_example.cpp')
-rw-r--r-- | protocols/Telegram/tdlib/td/example/cpp/tdjson_example.cpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/protocols/Telegram/tdlib/td/example/cpp/tdjson_example.cpp b/protocols/Telegram/tdlib/td/example/cpp/tdjson_example.cpp new file mode 100644 index 0000000000..6787b37f86 --- /dev/null +++ b/protocols/Telegram/tdlib/td/example/cpp/tdjson_example.cpp @@ -0,0 +1,33 @@ +// +// Copyright Aliaksei Levin (levlam@telegram.org), Arseny Smirnov (arseny30@gmail.com) 2014-2018 +// +// Distributed under the Boost Software License, Version 1.0. (See accompanying +// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) +// +#include <iostream> +#include <td/telegram/td_json_client.h> + +// Basic example of TDLib JSON interface usage. +// Native interface should be preferred instead in C++, so here is only an example of +// the main event cycle, which should be essentially the same for all languages. + +int main() { + void *client = td_json_client_create(); + // somehow share the client with other threads, which will be able to send requests via td_json_client_send + + const double WAIT_TIMEOUT = 10.0; // seconds + while (true) { + const char *result = td_json_client_receive(client, WAIT_TIMEOUT); + if (result != nullptr) { + // parse the result as JSON object and process it as an incoming update or an answer to a previously sent request + + // if (result is UpdateAuthorizationState with authorizationStateClosed) { + // break; + // } + + std::cout << result << std::endl; + } + } + + td_json_client_destroy(client); +} |