MAX Autopost 1.11.7: почему тест писал «0/1 target» и как это починил

После настройки Token и Chat ID кнопка «Отправить тест» в MAX Autopost показывала:

Тест: Не удалось отправить ни в один target (0/1).

В логах плагина повторялась одна и та же ошибка:

HTTP 400: {"code":"proto.payload","message":"errors.send-message.channel-notify"}

Картинка, формат текста, кнопки «Читать» или «Подписаться» тут ни при чём. Падал и plain text без вложений.

Что на самом деле ломалось

Chat ID вида -77027… — это канал MAX, а не личный диалог и не группа.

В настройках плагина есть галочка «Отправлять с notify (пуш подписчикам)». Если её снять, в API уходит:

{
  "text": "...",
  "notify": false
}

По документации MAX notify=false означает отправку без пуша. На каналах MAX так делать нельзя: API отвечает errors.send-message.channel-notify и сообщение не публикуется.

Для групп и личных чатов silent-режим обычно проходит. Ограничение касается именно каналов.

Что изменилось в 1.11.7

1. Авто-retry

Если API вернул channel-notify, а в запросе был notify=false, плагин один раз повторяет отправку без поля notify. По документации MAX значение по умолчанию — true (с уведомлением). Такой запрос каналы принимают.

В логах появляется шаг:

notify_channel_retry … channel rejected notify=false; retry without notify field

Тест и обычная публикация больше не останавливаются на «0/1».

2. Понятная ошибка

Если после retry отправка всё равно не прошла, notice больше не обрывается на «0/1». Плагин пишет причину: канал отклонил silent-режим, что проверить (галочка notify и права бота-админа).

3. Подсказка в настройках

Под галочкой notify появилось короткое описание ограничения каналов. Не нужно гадать по сырому JSON из логов.

Что сделать вам

  1. Обновите плагин до 1.11.7 (автообновление из GitHub Releases или скачать ZIP).
  2. Для канала удобнее оставить notify включённым — пуш подписчикам как раз нужен.
  3. Убедитесь, что бот является администратором канала с правом публиковать сообщения.
  4. Нажмите «Отправить тест».

Если silent на канале был принципиален: у MAX это сейчас не поддерживается API. Обойти на стороне бота нельзя, только на стороне платформы.

Для тех, кто копает глубже

  • Endpoint: POST https://platform-api2.max.ru/messages?chat_id=…
  • Ошибка: errors.send-message.channel-notify
  • Триггер: body с "notify": false в канал
  • Фикс: retry без поля notify
  • Changelog: CHANGELOG.md

Поддержка: aleksey@krivoshein.site · Issues на GitHub

MAX Autopost (Free) — автопостинг записей WordPress в мессенджер MAX. MIT.

Источники и ссылки


Комментарии загружаются…