MAX Bridge
MAX Bridge — это JavaScript-библиотека, которая позволяет твоему мини-приложению общаться с мессенджером MAX. Без Bridge твоё приложение — просто веб-страница в вакууме. С Bridge — полноценный участник экосистемы MAX.
Что такое MAX Bridge?
Технически Bridge — это прослойка между твоим веб-приложением и нативным API MAX. Она предоставляет JavaScript-методы для выполнения действий на стороне мессенджера: получить данные пользователя, отправить сообщение в чат, закрыть приложение и другие.
Библиотека подключается одним тегом
<script> и доступна через
глобальный объект MaxBridge. Никаких
npm-пакетов или сборщиков — работает прямо в
браузере.
Инициализация
Перед использованием Bridge нужно инициализировать. Это асинхронная операция — она устанавливает связь с нативной частью MAX и получает начальные данные:
// Создаём экземпляр Bridge
const bridge = new MaxBridge();
// Инициализируем и получаем данные
bridge.init().then(data => {
console.log('Пользователь:', data.user);
console.log('Тема:', data.theme);
}).catch(err => {
console.error('Ошибка инициализации:', err);
});
init() до любых других методов Bridge.
Я для надёжности оборачиваю всю логику приложения в
init().then(...) — тогда точно ничего
не вызовется раньше времени.
Основные методы
Получение данных пользователя
После инициализации объект
data.user содержит базовую информацию о
пользователе:
-
user.id— уникальный идентификатор пользователя в MAX user.first_name— имя-
user.last_name— фамилия (может отсутствовать) user.username— никнейм-
user.language_code— язык интерфейса (например,"ru")
Получение темы оформления
Поле data.theme сообщает, какая тема
активна у пользователя: "light" или
"dark". Это позволяет адаптировать
дизайн мини-приложения под интерфейс MAX:
bridge.init().then(data => {
const isDark = data.theme === 'dark';
document.body.classList.toggle('dark-theme', isDark);
});
Отправка данных в чат
Bridge позволяет отправить данные обратно в чат, из которого было открыто мини-приложение. Это полезно для игр, опросов и любых сценариев, где результат нужно передать боту. Подробнее о доступных методах — в разделе API.
Закрытие мини-приложения
Чтобы закрыть мини-приложение и вернуться в чат:
// Закрываем мини-приложение
bridge.close();
close().
Дополнительные возможности
Bridge также поддерживает:
- Вибрацию — тактильный отклик на действия пользователя
- Сканирование QR-кодов — открытие встроенного сканера MAX
- Запрос геолокации — с согласия пользователя
- Открытие ссылок — во встроенном браузере MAX
Конкретные сигнатуры методов и параметры смотри в официальной API-документации — я не буду дублировать то, что может измениться в следующем обновлении MAX.
Что дальше?
После того как разобрался с Bridge, самое время
подумать о безопасности. Переходи к разделу
«Валидация данных» —
там я расскажу, как проверять
initData на сервере и защищать
приложение от подделки запросов.