Этот компонент был создан ITDevCon в рамках совместного проекта с открытым исходным кодом, разработанного Руаном Диего Ласердой Менезесом для использования и использования официального API Telegram Bot через Delphi.
Пожертвование через PAYPAL
Чтобы получать последние обновления, перейдите сюда
- Обновлено для последней версии Telegram Bot API, версии 5.4 от 5 ноября 2021 г.
- Обновлено для последней версии Telegram Bot API, версии 5.3 2021 г.
- Обновлено для последней версии Telegram Bot API, версии 5.2 2021 г.
- Обновлено для последней версии Telegram Bot API, версии 5.1 от 09 марта 2021 г.
- Был проведен новый дизайн компонента и общая реструктуризация, благодаря чему этот новый компонент больше не будет конфликтовать с другими установленными версиями.
- Обновлено для последней версии Telegram API, версии 5.0 от 24 ноября 2020 г.
Запустите свой собственный сервер API ботов
- Исходный код API бота теперь доступен по адресу Telegram-bot-api. Теперь вы можете запустить собственный сервер Bot API локально, повысив производительность своих ботов (проверьте это, чтобы узнать, принесет ли это пользу вашему проекту).
- Добавлен метод logOut, который можно использовать для выхода из облачного сервера API ботов перед локальным запуском бота. Вы должны выйти из системы бота перед его локальным запуском, иначе нет никакой гарантии, что бот получит все обновления.
- Добавлен метод close, который можно использовать для закрытия экземпляра бота перед его перемещением с одного локального сервера на другой.
Передача владения ботом
- Теперь вы можете использовать @BotFather для переноса существующих ботов в другую учетную запись Telegram.
Работа с группами
- добавить в ItgChat и TtgChat функцию LinkedChatId: Integer; расположение функции: ItgChatLocation; функция SlowModeDelay: Integer; Разрешения функции: ItgChatPermissions; функция Биография: Строка;
- Теперь метод getChat выдает еще два новых свойства.
- Новые интерфейсы и объекты ItgChatLocation и TtgChatLocation ItgChatPermissions и TtgChatPermissions
- добавить unbanChatMember only_if_banned Boolean Необязательно (ничего не делать, если пользователь не забанен)
Вебхуки
- добавить параметр в метод SetWebHook const IpAddress: String; const DropPendingUpdates: Boolean;
- добавить параметр в метод DeleteWebhook const DropPendingUpdates: Boolean;
- добавить свойство в функцию ItgWebhookInfo и TtgWebhookInfo IpAddress: String;
Другие обновления
- добавить свойство в функции ItgFile и TtgFile FileUniqueId: string;
- добавить свойство в функцию ItgAudio и TtgAudio Thumb: ItgPhotoSize; функция ИмяФайла: строка;
- добавить свойство в функции ItgVideo и TtgVideo FileName: string;
Несколько закрепленных сообщений
- Добавлена возможность закреплять сообщения в приватных чатах.
- В функцию метода UnPinChatMessage добавлен параметр MessageId(const ChatId: TtgUserLink; const MessageId: Int64): Boolean; чтобы разрешить открепление конкретного закрепленного сообщения.
- Добавлена функция метода UnPinAllChatMessages(const ChatId: TtgUserLink): Boolean; который можно использовать для открепления всех закрепленных сообщений в чате.
Файловые альбомы
- Добавлена поддержка отправки и получения аудиоальбомов и альбомов документов в методе sendMediaGroup.
Живые локации
- В интерфейс ItgLocation и класс TtgLocation добавлены поля LivePeriod, HorizontalAccuracy, Heading, ProximityAlertRadius, представляющие максимальный период, в течение которого можно обновлять текущее местоположение.
- Добавлена поддержка заголовка текущего местоположения: добавлен заголовок поля в классы TtgLocation, TtgInlineQueryResultLocation, TtgInputLocationMessageContent и параметр Heading в методы sendLocation и editMessageLiveLocation.
- В метод sendLocation добавлен параметр AllowSendingWithoutReply.
- В интерфейс ItgMessage и класс TtgMessage добавлен интерфейс ItgProximityAlertTriggered и тип TtgProximityAlertTriggered, а также поле ProximityAlertTriggered.
- В интерфейсе ItgMessage добавлена функция SenderChat: ItgChat; функция ForwardSenderName: String; функция close_alert_triggered: ItgProximityAlertTriggered;
Анонимные администраторы
- В класс TtgMessage добавлено поле SenderChat, содержащее отправителя сообщения, являющегося чатом (группой или каналом). Для обратной совместимости в неканальных чатах поле from в таких сообщениях будет содержать пользователя 777000 для сообщений, автоматически пересылаемых в дискуссионную группу, и пользователя 1087968824 (@GroupAnonymousBot) для сообщений от администраторов анонимных групп.
- В класс TtgChatMember добавлено поле IsAnonymous, которое можно использовать для распознавания анонимных администраторов чата.
- В метод продвиженияChatMember добавлен параметр IsAnonymous, который позволяет продвигать анонимных администраторов чата. Для этого сам бот должен иметь право IsAnonymous. Несмотря на то, что у ботов может быть право IsAnonymous, они никогда не будут отображаться в чате как анонимные. Боты могут использовать право только для передачи другим администраторам.
- В класс TtgMessage добавлен CustomTitle отправителя анонимного сообщения какauthor_signature.
И многое другое
- Добавлен метод CopyMessage, который отправляет копию любого сообщения. Максимальная длина вопросов опроса увеличена до 300.
- Добавлены поля google_place_id и google_place_type в классы TtgVenue, TtgInlineQueryResultVenue, TtgInputVenueMessageContent, а также необязательные параметры google_place_id и google_place_type в метод sendVenue для поддержки Google Адресов в качестве поставщика API мест.
- Добавлено полеallow_sending_without_reply в методы sendMessage, sendPhoto, sendVideo, sendAnimation, sendAudio, sendDocument, sendSticker, sendVideoNote, sendVoice, sendLocation, sendVenue, sendContact, sendPoll, sendDice, sendInvoice, sendGame, sendMediaGroup, чтобы разрешить отправку сообщений не в качестве ответа, если сообщение с ответом уже удалено.
И последний, но наименее бот
- Поддержана новая анимация футбола и игровых автоматов для случайных игр в кости. Выбирайте между различными анимациями (etDado, etDardo, etBasketball, etFootball, etSlotMachine), указав параметр emoji в методе sendDice.
- Код обновлен для последней версии Telegram API, версии 4.9 от 4 июня 2020 года.
- В объект TtgMessage добавлено новое поле ViaBot. Теперь вы можете узнать, какой бот использовался для отправки сообщения.
- Миниатюры видео с поддержкой встроенной анимации GIF и MPEG4.
- Поддержка новой баскетбольной анимации для случайных данных. Выбирайте между различными анимациями (etData, etDardos, etBasquete), указывая параметр emoji в методе sendDice.
- Добавлен Telegram Паспорт.
- Чтение Invoice, Dice, Poll, PassportData в объекте TtgMessage.
- Обновлен код последней версии Telegram API, версия 4.8 от 24 апреля 2020 года.
- Имя измененных объектов.
- Созданы новые методы для преобразования различных типов массивов строк в JSonString.
- Добавлены новые Объекты в соответствии с API
- Исправление ошибок несколькими способами
- Обновление функций с версии 3.5.5 до 4.8
- Добавлена функция SendPool (отправка опросов и викторин).
- Добавлена функция SendDice (Отправка кубика или анимированного дротика).
- Исправлена функция SendLocation.
- Исправлена функция SendVenue (отправка местоположения с текстом).
- Добавлена функция SendAnimaion (Отправка анимации).
- Добавлена функция SendMediaGroup (групповая загрузка фотографий и видео).
- Добавлен тип TtgKeyboardButtonPollType.
- Исправление в методе отправки с помощью кнопок.
- Добавлена функция SendInvoice (Отправка платежного поручения).
Руан Диего Ласерда Менезес (диелетро).
Аурино (сотрудник отдела TInjectTelegram.Emoji)
Ренат Сулейманов (Аль-Мухандис);
Бонмарио;
@ashumkin (Алексей Шумкин);
Илья Бухонин (МстрВЛТ);
Даниэле Спинетти (спинеттаро);
Библиотека для использования сетевых библиотек конечного пользователя.
Монтаж и другую информацию смотрите:
[вики-страница] https://github.com/ms301/CrossUrl/wiki [github] https://github.com/ms301/CrossUrl
Для использования необходимо установить CrossURL, доступный по адресу:
[github] https://github.com/ms301/CrossUrl
** щелкните примеры, чтобы увидеть больше... Использование или перейдите по моей прямой ссылке на примеры * См. мои примеры TDLib для использования с Object Pascal