MAX

Автоответы

Документация: v0.29.0

Настройте правила автоответов для MAX, проверьте их без отправки и управляйте ответами только указанным тестовым аккаунтам.

max serve может отвечать на входящие сообщения по правилам, которые вы пишете в файл профиля. Сейчас автоответы работают только для тестовых аккаунтов: правило отвечает лишь тем, кто назван в списке testers. Остальным не уходит ничего, даже если правило подходит. Так правила проверяют на своём втором аккаунте, а не на живых людях.

Каждая команда подробно — commands.md.

Как включить

  1. Напишите файл правил <профиль>.replies.json в папке настроек — рядом с файлом, который max config show --json называет в configFile. Пример с одним правилом:

    {
      "testers": [{ "id": "<id тестового аккаунта>" }],
      "rules": [
        {
          "id": "away",
          "on": true,
          "do": ["reply"],
          "where": { "kinds": ["dialog"], "chats": [], "notChats": [] },
          "when": {
            "hours": { "outside": "09:00-19:00", "days": "mon-fri", "timezone": "Europe/Madrid" },
            "words": [],
            "question": false,
            "mentionsMe": false,
            "from": { "people": [], "notPeople": [], "contactsOnly": false }
          },
          "reply": { "template": "Спасибо, {firstName}! Отвечу утром.", "model": "fill-only", "asReply": true },
          "limits": { "perChat": "1/12h", "perPerson": "1/1d" }
        }
      ]
    }

    Каждое поле обязательно. Ошибка в имени поля останавливает правило и называет поле.

  2. Посмотрите, что правило ответило бы на уже сохранённые сообщения — ничего не отправляется:

    max replies test --since-time 7d
  3. Разрешите отправку и запустите сервер:

    max config set permissions.replies.send allow
    max serve

    Без allow сервер не отправляет ничего. Уровень ask здесь тоже значит «нет»: у сервера некого спросить.

Что правило не трогает никогда

  • ваши собственные сообщения, каналы, ботов;
  • сообщение, на которое уже ответили, и изменённое сообщение;
  • то, что пришло до запуска max serve: после недели простоя он не отвечает на всю неделю;
  • в группе — сообщение, где вас не упомянули и не ответили вам, если правило не называет эту группу в chats.

Лимиты perChat и perPerson обязательны у каждого правила. Два автоответчика, отвечающих друг другу, останавливаются на первом лимите.

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

  • max replies pause останавливает все правила профиля сразу, и работающий max serve тоже — перезапуск не нужен. max replies resume включает их снова.
  • max replies status — разрешена ли отправка, какие правила включены и сколько тестовых аккаунтов в списке.
  • max sends list показывает каждый автоответ с пометкой rule:<id> — каким правилом он отправлен.