Перейти к контенту

Что нового в Telegram Bot API 8.0?

Новости Иван Ашихмин 2058

Вышло масштабное обновление Telegram Bot API 8.0, которое стало одним из крупнейших за последнее время. Оно добавило сразу несколько революционных возможностей для Mini Apps и ботов, включая платные подписки, полноэкранный режим, и многое другое. Подробности в посте.

Что нового в Telegram Bot API 8.0?
Новости Иван Ашихмин 2058

Telegram Bot API 8.0 приносит множество возможностей для улучшения работы Mini Apps и ботов, включая поддержку подписок, управление полноэкранным режимом, добавление приложений на главный экран и многое другое. В этой статье рассмотрим ключевые изменения и их применение.

 

1. Звёздные подписки: новый уровень монетизации

Теперь боты могут предлагать платные подписки, используя Telegram Stars. Это позволяет разработчикам добавлять уровни доступа к контенту и функциям.

 

Новые возможности:

  • Периодические счета: новый аргумент subscription_period в методе createInvoiceLink позволяет создавать ссылки для регулярной оплаты.
  • Бизнес-счета: новый аргумент business_connection_id в методе createInvoiceLink добавляет поддержку выставления счетов от имени бизнес-аккаунтов.
  • Новые поля в платежах: добавлены новые поляsubscription_expiration_date, is_recurring и is_first_recurring в класс SuccessfulPayment.
  • Управление подписками: новый метод editUserStarSubscription позволяет изменять параметры подписки.
  • Поддержка подписок: новое поле subscription_period добавлено в класс TransactionPartnerUser.

 

2. Полноэкранный режим для Mini Apps

Теперь Mini Apps могут запускаться в полноэкранном режиме как в портретной, так и в альбомной ориентации, что идеально подходит для игр, просмотра видео и создания более захватывающих интерфейсов.

 

Подробности:

  • Управление полноэкранным режимом: новые методы requestFullscreen и exitFullscreen в классе WebApp позволяют активировать и выходить из полноэкранного режима.
  • Учет безопасных зон экрана: новые поля safeAreaInset и contentSafeAreaInset добавлены в класс WebApp, чтобы содержимое Mini App корректно отображалось на устройствах с вырезами или закругленными краями.
  • Новые события для управления интерфейсом: новые события activated, deactivated, safeAreaChanged, fullscreenChanged и fullscreenFailed обеспечивают обработку изменений состояния Mini App.
  • Также в класс WebApp были добавлены поля isActive и isFullscreen.

 

3. Быстрый доступ с главного экрана

Mini Apps могут создавать ярлыки на главном экране устройства, что упрощает доступ к приложениям и ускоряет взаимодействие.

 

Добавленные функции:

  • Создание ярлыков: новый метод addToHomeScreen в классе WebApp позволяет пользователям добавлять Mini App на главный экран.
  • Проверка поддержки: новый метод checkHomeScreenStatus в классе WebApp помогает определить, можно ли создать ярлык на текущем устройстве.
  • События для мониторинга: событие homeScreenAdded подтверждает успешное добавление ярлыка, а homeScreenChecked фиксирует проверку совместимости.

 

4. Поддержка статусов эмодзи

Mini Apps могут предлагать пользователям установить статус с эмодзи, связанный с приложением, или синхронизировать его с другими сервисами.

 

Новые возможности:

  • Установка статуса через бота: новый метод setUserEmojiStatus в классе WebApp позволяет ботам обновлять статус эмодзи при разрешении пользователя.
  • Синхронизация в Mini Apps: новый метод setEmojiStatus в классе WebApp позволяет пользователю подтвердить изменение статуса через интерфейс приложения.
  • Запрос разрешения: новый метод requestEmojiStatusAccess в классе WebApp позволяет Mini Apps получить право на изменение статуса через метод Bot API setUserEmojiStatus.
  • События эмодзи статусов: новые события emojiStatusSet, emojiStatusFailed и emojiStatusAccessRequested позволяют отслеживать процесс установки эмодзи статуса.

 

5. Шеринг медиа и загрузка файлов

Mini Apps получили возможность делиться контентом из приложения напрямую в Telegram-чаты или постить в сторис.

 

Новые функции:

  • Подготовка сообщений: новый класс PreparedInlineMessage и метод savePreparedInlineMessage позволяют ботам предлогать пользователю отправить сообщение из Mini App используя метод shareMessage.
  • Шеринг в чаты: новый метод shareMessage в классе WebApp позволяет отправить медиа или текст из Mini App в чат Telegram.
  • Загрузка файлов: новый метод downloadFile в классе WebApp добавляет поддержку скачивания файлов с отображением встроенного всплывающего окна.
  • События отслеживания отправки сообщения: добавлены новые события shareMessageSentshareMessageFailed и fileDownloadRequested для управления состоянием отправки сообщения.

 

6. Геолокация

Mini Apps могут запросить доступ к геолокации пользователей, что открывает новые возможности для игр, карт и сервисов на основе местоположения.

 

Новые возможности:

  • Менеджер геолокации: новое поле LocationManager добавлено в класс WebApp для обработки запросов геоданных.
  • События: новое событие locationManagerUpdated фиксирует изменения геолокации, а locationRequested позволяет запросить местоположение пользователя.

 

7. Отслеживание движения устройства

Теперь Mini Apps могут обрабатывать данные о движении устройства, улучшая взаимодействие с VR, AR и другими интерактивными сценариями.

 

Новые функции:

  • Сенсоры устройства: новые поля Accelerometer, Gyroscope и DeviceOrientation добавлены в класс WebApp
  • Управление ориентацией: новые методы lockOrientation и unlockOrientation в классе WebApp позволяют управлять ориентацией экрана.
  • События сенсоров: новые события accelerometerStarted, accelerometerStopped, accelerometerChanged, accelerometerFailed, deviceOrientationStarted, deviceOrientationStopped, deviceOrientationChanged, deviceOrientationFailed, gyroscopeStarted, gyroscopeStopped, gyroscopeChanged и gyroscopeFailed фиксируют изменения показаний сенсоров.

 

8. Подарки через Telegram Stars

Боты могут отправлять пользователям подарки за Telegram Stars, добавляя новый способ взаимодействия.

 

Подробности:

  • Каталог подарков: новые классы Gift и Gifts, а также метод getAvailableGifts позволяют получать доступ к доступным подаркам.
  • Отправка подарков: новый метод sendGift добавляет возможность отправлять выбранные подарки пользователям.
  • Отображение в транзакции: добавлено новое поле gift в классе TransactionPartnerUser для отображения подарка в транзакции пользователя.

 

9. Кастомизация загрузочного экрана

Mini Apps теперь могут настраивать внешний вид загрузочного экрана, включая цвета и иконки для светлой и темной тем.

Эти настройки доступны в @BotFather через: 
Bot Settings > Configure Mini App > Enable Mini App

 

10. Аппаратные оптимизации

MIni App, работающие на Android, теперь могут получать базовую информацию об аппаратном обеспечении устройства, что позволяет им оптимизировать работу пользователя в зависимости от возможностей устройства.

Это включает в себя: информацию об операционной системе, приложении и SDK соответствующих версий, а также о модели устройства и классе производительности.

 

Прочие изменения

  • Добавлено поле photo_url в класс WebAppUser для доступа к аватару пользователя.
  • Новые опции для отладки Mini Apps на устройствах iOS.
  • Третьи стороны (например, разработчики MIni App), которые получают или обрабатывают данные от имени MIni App, теперь могут проверять их, не зная токена бота приложения.
  • Сообщения с видео, отправляемые в крупные группы и каналы, могут быть автоматически отложены до завершения перекодирования (вступает в силу с 1 декабря 2024 года).

 

Обновление выглядит внушительно! С нетерпением ждём обновления библиотеки AIOgram с поддержкой новых функций.

Аватар автора

Автор

Иван Ашихмин

Программист, фрилансер и автор гайдов. Занимаюсь разработкой ботов, сайтов и не только.

Войдите, чтобы оставить комментарий.

Комментариев пока нет.