Удалить сообщение

Удаляет указанное сообщение.

max_delete_message(message_id)

Параметры

Параметр Описание
message_id ID сообщения, которое необходимо удалить. Обязательный параметр.

Проверка подписки в групповом чате

Проверяет, состоит ли пользователь в групповом чате.

max_get_chat_member(chat_id, user_id)

Параметры

Параметр Описание
chat_id Идентификатор группового чата или канала в MAX.
user_id ID пользователя.

Возвращаемое значение

Если пользователь состоит в чате, функция возвращает объект с информацией о нем.

Если пользователь отсутствует в чате, функция возвращает:

None

Пример использования

test = max_get_chat_member(-123456789876, id_user)

где:

  • -123456789876 — идентификатор чата или канала, подписку на который необходимо проверить.
  • id_user — системная переменная, содержащая ID пользователя.

Ответ, если пользователь состоит в чате

{
  "last_access_time": 1773919506455,
  "is_owner": false,
  "is_admin": false,
  "join_time": 1773919506455,
  "user_id": 5629219,
  "first_name": "Tammy",
  "last_name": "Anw",
  "is_bot": false,
  "last_activity_time": 1773919503000,
  "avatar_url": "https://i.oneme.ru/i?r=BUFglOvkF6bn--g5U-BFgIkJ0mY5P8dF4T07z1RJjDqz22ee8G3r5tY7WE9sVySelj049w2aqEqPjDkS8j_urqGG",
  "full_avatar_url": "https://i.oneme.ru/i?r=BTFjO43w8Yr1OSJ4tcurq5HiKvNSlBkRpQUHL6c7ALhsGi3evqe__2qMW2oV_NMniqI",
  "name": "Tammy Anw"
}

Ответ, если пользователь отсутствует в чате

None

Иллюстрация


Добавить пользователя в групповой чат

Добавляет пользователя в указанный групповой чат.

max_add_chat_member(chat_id, user_id)

Параметры

Параметр Описание
chat_id Идентификатор группового чата в MAX.
user_id ID пользователя, которого необходимо добавить.

Удалить пользователя из группового чата

Удаляет пользователя из указанного группового чата.

max_delete_chat_member(chat_id, user_id)

Параметры

Параметр Описание
chat_id Идентификатор группового чата в MAX.
user_id ID пользователя, которого необходимо удалить.

Отправить сообщение

Отправляет текстовое сообщение пользователю.

max_send_message(
    platform_id,
    text,
    enable_markdown,
    enable_html,
    disable_link_preview,
    disable_notification,
    send_by_user_id,
    bot_account_id
)

Параметры

Параметр Описание
platform_id platform_id пользователя. Если используется параметр send_by_user_id, вместо platform_id необходимо передать user_id.
text Текст сообщения.
enable_markdown Включить поддержку Markdown. Необязательный параметр. Для включения передайте "1" или любое значение, кроме 0 или False.
enable_html Включить поддержку HTML. Необязательный параметр. Для включения передайте "1" или любое значение, кроме 0 или False.
disable_link_preview Отключить предпросмотр ссылок. Необязательный параметр. Для включения передайте "1" или любое значение, кроме 0 или False.
disable_notification Отправить сообщение без уведомления. Необязательный параметр. Для включения передайте "1" или любое значение, кроме 0 или False.
send_by_user_id Использовать user_id вместо platform_id. Необязательный параметр. Для включения передайте "1" или любое значение, кроме 0 или False.
bot_account_id ID аккаунта (бота), от имени которого будет отправлено сообщение. Необязательный параметр.

Отправить фото

Отправляет изображение пользователю.

max_send_photo(
    platform_id,
    image_url,
    caption,
    enable_markdown,
    enable_html,
    disable_link_preview,
    disable_notification,
    send_by_user_id,
    bot_account_id
)

Параметры

Параметр Описание
platform_id platform_id пользователя. Если используется параметр send_by_user_id, вместо platform_id необходимо передать user_id.
image_url URL изображения.
caption Подпись к изображению. Необязательный параметр.
enable_markdown Включить поддержку Markdown. Необязательный параметр. Для включения передайте "1" или любое значение, кроме 0 или False.
enable_html Включить поддержку HTML. Необязательный параметр. Для включения передайте "1" или любое значение, кроме 0 или False.
disable_link_preview Отключить предпросмотр ссылок. Необязательный параметр. Для включения передайте "1" или любое значение, кроме 0 или False.
disable_notification Отправить сообщение без уведомления. Необязательный параметр. Для включения передайте "1" или любое значение, кроме 0 или False.
send_by_user_id Использовать user_id вместо platform_id. Необязательный параметр. Для включения передайте "1" или любое значение, кроме 0 или False.
bot_account_id ID аккаунта (бота), от имени которого будет отправлено сообщение. Необязательный параметр.

Отправить файл

Отправляет документ пользователю.

max_send_document(
    platform_id,
    file_url,
    caption,
    enable_markdown,
    enable_html,
    disable_link_preview,
    disable_notification,
    send_by_user_id,
    bot_account_id
)

Параметры

Параметр Описание
platform_id platform_id пользователя. Если используется параметр send_by_user_id, вместо platform_id необходимо передать user_id.
file_url URL документа.
caption Подпись к документу. Необязательный параметр.
enable_markdown Включить поддержку Markdown. Необязательный параметр. Для включения передайте "1" или любое значение, кроме 0 или False.
enable_html Включить поддержку HTML. Необязательный параметр. Для включения передайте "1" или любое значение, кроме 0 или False.
disable_link_preview Отключить предпросмотр ссылок. Необязательный параметр. Для включения передайте "1" или любое значение, кроме 0 или False.
disable_notification Отправить сообщение без уведомления. Необязательный параметр. Для включения передайте "1" или любое значение, кроме 0 или False.
send_by_user_id Использовать user_id вместо platform_id. Необязательный параметр. Для включения передайте "1" или любое значение, кроме 0 или False.
bot_account_id ID аккаунта (бота), от имени которого будет отправлено сообщение. Необязательный параметр.

Как отправить Callback в MAX

Описание

max_callback(platform_id, callback_message, group_id, by_user_id)

Параметры

  • ! platform_id — идентификатор клиента MAX (chat_id). Если передан параметр by_user_id, то в platform_id указывается user_id клиента MAX.
  • ! callback_message — текст сообщения в callback.
  • group_id — идентификатор бота MAX. Указывается, если в проекте подключено несколько ботов MAX.
  • by_user_id — для поиска клиента по user_id, а не по chat_id, передайте значение "1".

Примеры

Отправка callback клиенту

max_callback('73704021', 'callback TEST123')

Отправка callback клиенту конкретного бота MAX

max_callback('73704021', 'callback TEST123', '992514570')

Отправка callback по user_id клиента

Например, при нажатии callback-кнопки, когда приходит переменная tamtam_user_id:

max_callback(tamtam_user_id, 'callback TEST123', null, 1)

Возможные ответы функции

Ответ Описание
wrong platform_id Передан некорректный platform_id.
client 73704021 not found Клиент с таким идентификатором не найден в проекте.
error. cannot be called for the current client Callback нельзя отправить самому себе.
max bot not found В проекте не найден подключённый бот MAX.

Как показывать пользователю Alert-уведомления в MAX

Описание

max_answer_callback(
    callback_id,
    notification,
    text,
    enable_markdown,
    enable_html,
    attachments,
    bot_external_id
)

Параметры

Параметр Описание
! callback_id Идентификатор нажатия callback-кнопки. Позволяет определить пользователя, нажавшего кнопку, и показать ему Alert-уведомление. Передается в переменной #{tamtam_callback_id}.
notification Текст Alert-уведомления. Обязателен, если не переданы text или attachments.
text Новый текст сообщения, к которому прикреплена кнопка. Исходное сообщение будет заменено. Обязателен, если не передан notification.
enable_markdown Если True, текст сообщения будет обработан как Markdown.
enable_html Если True, текст сообщения будет обработан как HTML. Используется только если enable_markdown не задан.
attachments Вложения для заменяемого сообщения в формате MAX (JSON-массив), включая клавиатуру с кнопками.
bot_external_id Идентификатор бота MAX, от имени которого отправляется ответ. По умолчанию используется бот текущего диалога.

Особенности работы

Функция отвечает на нажатие callback-кнопки:

  • показывает пользователю всплывающее Alert-уведомление;
  • при необходимости обновляет сообщение, к которому прикреплена кнопка.

Alert-уведомление не отображается в переписке и не попадает в историю сообщений.

Ограничение MAX: не более двух ответов в секунду в один диалог, групповой чат или канал.

Примеры

Показать только Alert-уведомление

Сообщение с кнопкой не изменяется.

max_answer_callback(tamtam_callback_id, "Заявка принята")

Показать уведомление и заменить текст сообщения

max_answer_callback(tamtam_callback_id, "Готово", "Ваш заказ оформлен")

Заменить сообщение вместе с клавиатурой без уведомления

max_answer_callback(
    tamtam_callback_id,
    null,
    "Выберите способ оплаты",
    null,
    null,
    [
        {
            "type": "inline_keyboard",
            "payload": {
                "buttons": [
                    [
                        {
                            "type": "callback",
                            "text": "Картой",
                            "payload": "pay_card"
                        }
                    ]
                ]
            }
        }
    ]
)

Возвращаемое значение

Функция возвращает ответ API MAX в формате JSON.

Пример:

{
  "success": true
}

Меню команд бота MAX

max_set_commands(commands, bot_external_id) - меню команд бота в мессенджере MAX, которое пользователь видит по кнопке со списком команд. Список заменяется целиком: команды, которых нет в переданном массиве, из меню пропадут. Максимум 32 команды.

Параметры

Параметр Описание
commands массив команд в формате JSON. Поддерживаются два вида записи: массив пар [["start", "Начать"], ["help", "Помощь"]] (как в tg_set_command) и массив объектов [{"name": "start", "description": "Начать"}]. Слеш в начале имени можно не писать, он всё равно отбрасывается. Если передать пустой массив [], все команды бота будут удалены — отдельной функции удаления у MAX нет.
bot_external_id идентификатор бота MAX, если в проекте их несколько. Если пусто, команды будут установлены боту, к которому относится текущий диалог.

Примеры

max_set_commands("[[\"start\", \"Начать заново\"], [\"help\", \"Помощь\"], [\"menu\", \"Главное меню\"]]")
max_set_commands("[{\"name\": \"start\", \"description\": \"Начать заново\"}]")
max_set_commands("[]")

— удалить все команды

Функция возвращает ответ MAX с актуальным спие больше 32 команд, вернётся too many commands, max 32, запрос при этом не отправится. Если м команду из него разобрать не удалось (ошибкав формате), вернётся incorrect param commands, а текущее меню бота останется без изменений.