limitation period
vlab97 opened this issue · 8 comments
Problem details
It happens that the bot incorrectly sets other dates. in the config file, a period of 1 day is set, and it blocks for 1 year, forever, and so on. Is it possible to set an additional check for the limitation period?
Steps to reproduce
1 entering the chat of a new member
2 imposition by the bot of an incorrect period for blocking actions
Expected behavior
There should have been a 1 day limit.
Actual behavior
The screenshot has a 365 day limit.
Project version
1.7.0
Platform
Microsoft Windows
OS version
Windows 10
Python version
.Exe
Installation type
EXE installer
Logs
No response
Did you used /restrict 1
?
Did you used /restrict 1?
No. Automatic restriction for new chat participants is used.
Can we switch to Russian? 😁
ecasbot.json
"bantime": 86400,
Can we switch to Russian?
OK.
"bantime": 86400,
Если никнейм пользователя набирает больше баллов, чем указано в nickgoal, делённое на 2, то его аккаунт ограничивается на 366 дней (максимум для Telegram Bot API).
Т.е. можно просто nickgoal
изменить с 100 до 200 например, либо использовать любое другое желаемое значение.
Can we switch to Russian?
OK.
"bantime": 86400,
Если никнейм пользователя набирает больше баллов, чем указано в nickgoal, делённое на 2, то его аккаунт ограничивается на 366 дней (максимум для Telegram Bot API).
Т.е. можно просто
nickgoal
изменить с 100 до 200 например, либо использовать любое другое желаемое значение.
В консоли ник набрал 50 баллов
INFO:ecasbot:Новый пользователь Игорь (-) вступил в чат - - (-). Баллы: 50.
nickgoal был выставлен на 100, по вашему совету увеличу значение в 2 раза. А дальше посмотрим. Спасибо
Просто странно, что даже по логу ник набрал 50/100 баллов и ушел в максимальную блокировку по сроку
Просто странно, что даже по логу ник набрал 50/100 баллов и ушел в максимальную блокировку по сроку
Там алгоритм такой: если аккаунт набирает полный nickgoal
(100 по умолчанию) или больше, то бот его сразу банит и выкидывает из чата, а если только половину (от 50 до 99 по умолчанию), то просто ограничивает на 366 дней, т.к. считает подозрительным.
Спасибо. Так же заметил, что бот не регистрирует отправленные команды от имени чата, как админа. То есть если админ анонимен, то команды /mute и прочее не работают для него.
То есть если админ анонимен, то команды /mute и прочее не работают для него.
Логично ибо через Telegram Bot API нельзя определить администратора, который инициировал данное действие. Это можно достаточно легко исправить если в функцию проверки действий добавить и собственный ID чата, но нужно проверить для начала не будет ли это являться угрозой безопасности. Создал новый тикет #165 по данной проблеме.