Я полагаю, что столкнулся с ошибкой, но это должен подтвердить кто-то, кто разбирается в теме.
В нашем сообществе участникам приходится отправлять множество личных сообщений в определённые периоды месяца. Чтобы учесть это, мы увеличили параметр max personal messages per day (максимальное количество личных сообщений в день) со стандартных 20 до 50 — уровня, который, по нашему мнению, достаточен для их потребностей (мы осознаём проблемы с возможным спамом, но решаем их другими способами).
Однако наши участники блокируются после отправки всего 20 сообщений из-за другого ограничения:
Я понимаю, что технически сообщения во многом похожи на темы, но всё же не ожидал такого поведения после изменения настройки для личных сообщений, особенно учитывая, что для создания тем в день существует отдельное ограничение:
Согласно нашим тестам, ограничение max personal messages per day не применяется к количеству ответов, то есть фактически оно ограничивает количество новых «тем сообщений» в день. В связи с этим эти два параметра, похоже, вступают в противоречие.
Должно ли ограничение max topics per day применяться также к «темам сообщений»? Если да, то для чего тогда нужен параметр max personal messages per day? Если нет… это ошибка?
limit_private_messages_per_day проверяет, является ли тема личным сообщением, тогда как limit_topics_per_day не проверяет, является ли она обычной (не личной) темой.
Думаю, достаточно добавить return unless regular? в начало limit_topics_per_day.
Попробую это подтвердить и к концу недели подготовлю pull request!
Я согласен со всем сказанным, но, думаю, нам стоит добавить настройку сайта
максимальное количество личных тем в день
@sam, не мог бы ты взяться за это на следующей неделе? Предполагаю, что это несложно. Мне не нравится идея о том, что количество личных тем, которые пользователь может создать за день, сейчас фактически не ограничено.
Это должно быть ограничено параметром max_personal_messages_per_day. Возможно, название этого параметра потребуется изменить для большей ясности, но, насколько я понимаю, он ограничивает создание новых тем личных сообщений, а не ответов. Именно это я и хотел проверить при создании теста, который был добавлен в PR.
Я не думаю, что у нас есть глобальный параметр максимального количества ответов в день для тем или личных сообщений.
Подтверждено! Пользователь, с которым я проводил тестирование, был ограничен в скорости при создании новых личных сообщений, но не при ответе на существующие.
Что касается текста описания, текущее описание настройки «максимальное количество личных сообщений в день» выглядит так:
Максимальное количество сообщений, которое пользователи могут создавать в день.
Как вам такой вариант:
Максимальное количество новых личных сообщений, которое пользователи могут создавать в день.
или
Максимальное количество личных сообщений, которое пользователи могут создавать начинать в день.