### fb::TextEdit Class Definition Source: https://github.com/gyverlibs/fastbot2/blob/main/docs/1.main.md Defines the `fb::TextEdit` class, used for editing text messages. It provides constructors for initializing with text, message ID, and chat ID. It includes `messageID` and inherits message-related functionalities such as chat ID, mode, preview, and inline menu settings. ```cpp TextEdit(); TextEdit(const String& text, uint32_t messageID, Value chatID); // id сообщения uint32_t messageID; using Message::chatID; using Message::mode; using Message::preview; using Message::setInlineMenu; using Message::text; using Message::json; ``` -------------------------------- ### APIDOC: fb::QueryRead Class Methods Source: https://github.com/gyverlibs/fastbot2/blob/main/docs/1.main.md API documentation for the `fb::QueryRead` class, outlining its methods for retrieving various pieces of information related to a callback query. This includes the callback ID, associated data, the sender's user information, and the original message. ```APIDOC fb::QueryRead: id(): Text // callback id data(): Text // callback data from(): UserRead // отправитель коллбэка (callback sender) message(): MessageRead // сообщение (message) ``` -------------------------------- ### FastBot2: Configure Bot Properties (C++) Source: https://github.com/gyverlibs/fastbot2/blob/main/docs/1.main.md Functions to manage various bot-level settings such as the chat description, custom commands, bot's name, and overall bot description. These methods allow dynamic updates to the bot's public profile and command interface. ```C++ fb::Result setChatDescription(Value chatID, Text description, bool wait = true); fb::Result setMyCommands(const fb::MyCommands& commands, bool wait = true); fb::Result deleteMyCommands(bool wait = true); fb::Result setMyName(const Text& name, bool wait = true); fb::Result setMyDescription(const Text& description, bool wait = true); ``` -------------------------------- ### fb::LocationStop Class Definition Source: https://github.com/gyverlibs/fastbot2/blob/main/docs/1.main.md Defines the `fb::LocationStop` class, used for stopping live location messages. It provides constructors for initializing with message ID and chat ID. It includes `messageID` and inherits message-related functionalities like chat ID and inline menu settings. ```cpp LocationStop(); LocationStop(uint32_t messageID, Value chatID); // id сообщения uint32_t messageID; using Message::chatID; using Message::setInlineMenu; using Message::json; ``` -------------------------------- ### fb::MenuEdit Class Definition Source: https://github.com/gyverlibs/fastbot2/blob/main/docs/1.main.md Defines the `fb::MenuEdit` class, used for editing message menus. It provides constructors for initializing with message ID, chat ID, and an optional inline menu. It includes `messageID` and inherits message-related functionalities like chat ID and inline menu settings. ```cpp MenuEdit(); MenuEdit(uint32_t messageID, Value chatID); MenuEdit(uint32_t messageID, Value chatID, InlineMenu& menu); // id сообщения uint32_t messageID; using Message::chatID; using Message::setInlineMenu; using Message::json; ``` -------------------------------- ### fb::FileEdit Class Definition Source: https://github.com/gyverlibs/fastbot2/blob/main/docs/1.main.md Defines the `fb::FileEdit` class, used for editing files. It provides constructors for initializing with file name, type, and either a file reference, byte array, or URL ID. It also includes `messageID` and inherits file and message-related functionalities like caption and chat ID. ```cpp FileEdit(Text name, Type type, File& file); FileEdit(Text name, Type type, uint8_t* bytes, size_t length, bool progmem = false); // document by url - GIF, PDF and ZIP // https://core.telegram.org/bots/api#sending-files FileEdit(Text name, Type type, Text urlid); // id сообщения uint32_t messageID; using File::caption; using File::chatID; using File::multipart; using Message::setInlineMenu; using Message::json; ``` -------------------------------- ### FastBot2: Send Raw API Commands (C++) Source: https://github.com/gyverlibs/fastbot2/blob/main/docs/1.main.md Advanced functions for directly sending commands to the Telegram Bot API. This includes sending commands with or without JSON parameters, and methods for building and sending command packets for more complex interactions. ```C++ Result sendCommand(const __FlashStringHelper* cmd, const String& json, bool wait = true); Result sendCommand(const __FlashStringHelper* cmd, bool wait = true); Packet beginPacket(const __FlashStringHelper* cmd); Result sendPacket(Packet& packet, bool wait = true, bool* sent = nullptr); ``` -------------------------------- ### FastBot2 Class Constructor (C++) Source: https://github.com/gyverlibs/fastbot2/blob/main/docs/1.main.md The default constructor for the FastBot2 class, specifically designed for ESP8266/ESP32 microcontrollers. This class inherits functionality from FastBot2Client. ```C++ FastBot2(); ``` -------------------------------- ### fb::Location Class Definition Source: https://github.com/gyverlibs/fastbot2/blob/main/docs/1.main.md Defines the `fb::Location` class, used for representing geographical location data. It includes constructors for initialization with latitude, longitude, and chat ID, along with member variables for location details like accuracy, live period, heading, and proximity alert radius. It also inherits message-related functionalities. ```cpp Location(); Location(float latitude, float longitude, Value chatID); using Message::chatID; using Message::notification; using Message::protect; using Message::removeMenu; using Message::reply; using Message::setInlineMenu; using Message::setMenu; using Message::threadID; using Message::json; // широта float latitude; // долгота float longitude; // точность в метрах, 0-1500 float horizontalAccuracy = NAN; // период обновления локации в секундах 60.. 86400 uint32_t livePeriod = 0; // направление в градусах, 1-360 uint16_t heading = 0; // Максимальное расстояние в метрах для оповещений о приближении к другому участнику чата uint32_t proximityAlertRadius = 0; ``` -------------------------------- ### fb::CaptionEdit Class Definition Source: https://github.com/gyverlibs/fastbot2/blob/main/docs/1.main.md Defines the `fb::CaptionEdit` class, used for editing message captions. It provides constructors for initializing with caption text, message ID, and chat ID. It includes `caption` and `messageID` members, and inherits message-related functionalities such as chat ID, mode, and inline menu settings. ```cpp CaptionEdit(); CaptionEdit(const String& caption, uint32_t messageID, Value chatID); // заголовок String caption; // id сообщения uint32_t messageID; using Message::chatID; using Message::mode; using Message::setInlineMenu; using Message::json; ``` -------------------------------- ### fb::LocationEdit Class Definition Source: https://github.com/gyverlibs/fastbot2/blob/main/docs/1.main.md Defines the `fb::LocationEdit` class, used for editing live location messages. It provides constructors for initializing with latitude, longitude, message ID, and chat ID. It includes members for location details like accuracy, heading, and proximity alert radius, and inherits message-related functionalities. ```cpp LocationEdit(); LocationEdit(float latitude, float longitude, uint32_t messageID, Value chatID); // широта float latitude; // долгота float longitude; // id сообщения uint32_t messageID; // точность в метрах, 0-1500 float horizontalAccuracy = NAN; // направление в градусах, 1-360 uint16_t heading = 0; // Максимальное расстояние в метрах для оповещений о приближении к другому участнику чата uint32_t proximityAlertRadius = 0; using Message::chatID; using Message::setInlineMenu; using Message::json; ``` -------------------------------- ### FastBot2: Manage Pinned Messages (C++) Source: https://github.com/gyverlibs/fastbot2/blob/main/docs/1.main.md API methods for controlling pinned messages within a chat. This includes pinning a specific message, unpinning a specific message, and unpinning all messages in a given chat. ```C++ fb::Result pinChatMessage(Value chatID, Value messageID, bool notify = true, bool wait = true); fb::Result unpinChatMessage(Value chatID, Value messageID, bool wait = true); fb::Result unpinAllChatMessages(Value chatID, bool wait = true); ``` -------------------------------- ### fb::Updates Class Definition and Types Source: https://github.com/gyverlibs/fastbot2/blob/main/docs/1.main.md Defines the `fb::Updates` class and its associated update types. The class provides methods to manage which types of updates are processed, allowing for setting, clearing, and checking specific update flags. The `Type` enum lists all possible update categories. ```cpp // fb::Updates::Type Message EditedMessage ChannelPost EditedChannelPost BusinessConnection BusinessMessage EditedBusinessMessage DeletedBusinessMessages MessageReaction MessageReactionCount InlineQuery ChosenInlineResult CallbackQuery ShippingQuery PreCheckoutQuery Poll PollAnswer MyChatMember ChatMember ChatJoinRequest ChatBoost RemovedChatBoost ``` ```cpp // установить void set(uint32_t nmods); // очистить void clear(uint32_t nmods); // включить все void setAll(); // очистить все void clearAll(); // прочитать по типу bool read(Type m); // прочитать по индексу bool read(uint8_t idx); ``` -------------------------------- ### C++: Check Premium Status Function Source: https://github.com/gyverlibs/fastbot2/blob/main/docs/1.main.md Defines a C++ function signature for checking if a user or entity possesses premium status. This function is designed to return a boolean value indicating the premium status. ```cpp bool isPremium(); ``` -------------------------------- ### fb::Poll Polling Types Source: https://github.com/gyverlibs/fastbot2/blob/main/docs/1.main.md Defines the different polling types available for `fb::Poll`. These types dictate the polling mechanism and recommended period for updates: `Sync` (synchronous), `Async` (asynchronous), and `Long` (asynchronous long polling). ```cpp Sync // синхронный (рекомендуемый период > 3500 мс) Async // асинхронный (рекомендуемый период > 3500 мс) Long // асинхронный long polling (рекомендуемый период > 20000 мс) ``` -------------------------------- ### FastBot2: Edit Chat Messages (C++) Source: https://github.com/gyverlibs/fastbot2/blob/main/docs/1.main.md Functions for modifying existing messages in a chat. This includes editing message text, captions for media, inline keyboard markups, and live location messages. A separate function is provided to stop live location updates. ```C++ fb::Result editText(const fb::TextEdit& m, bool wait = true); fb::Result editCaption(const fb::CaptionEdit& m, bool wait = true); fb::Result editMenu(const fb::MenuEdit& m, bool wait = true); fb::Result editLocation(const fb::LocationEdit& m, bool wait = true); fb::Result stopLocation(const fb::LocationStop& m, bool wait = true); ``` -------------------------------- ### FastBot2: Delete Chat Messages (C++) Source: https://github.com/gyverlibs/fastbot2/blob/main/docs/1.main.md API methods for removing messages from a chat. This includes deleting a single message by its ID and deleting multiple messages using an array of message IDs. ```C++ fb::Result deleteMessage(Value chatID, Value messageID, bool wait = true); fb::Result deleteMessages(Value chatID, uint32_t* messageIDs, uint16_t amount, bool wait = true); ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.