myDC.ru

Здравствуйте, гость ( Вход | Регистрация )

 

> Defend PM, API 2 | Полностью автоматическая защита ЛС от спама

Теги
Нет тегов для показа
Enyby
сообщение 21.1.2012, 14:11
Сообщение #1


Освоившийся участник
*****

Группа: Пользователи
Сообщений: 391
Регистрация: 4.11.2009
Из: Дом
Пользователь №: 4 923
Спасибо сказали: 239 раз




Название скрипта: Defend PM
Версия скрипта: 1.01
Платформа: PtokaX
Версия API: API2
Автор: Enyby

Описание: Скрипт предназначен для полностью автоматической защиты ЛС пользователей от спама. Выдает бан, при обнаружении спама.

Принципы работы скрипта:
Обычные пользователи отличаются от спамеров тем, что у обычных пользователей, если и пройдет ссылка на хаб, IP адрес или что-то подобное, то это будет разово. На этом и основана работа скрипта.
При получении ЛС оно проверяется на наличие стоп слов. Если стоп слова найдены, то список спамера пополняется очередным ником. Если ников стало больше предела уведомления операторов, то операторы уведомляются. Если больше предела предупреждений - пользователь предупреждается. Если больше либо равно пределу бана - пользователь уходит в бан.
Периодически запускается очистка, которая убирает по одному нику из списка спамера.
Таким образом идет учет количества отспамленных в интервале проверки. Чтобы спамить безнаказанно, нужно писать новым пользователям не чаще 1 раза в интервал. По умолчанию интервал 5 минут.

Прикрепленный файл  DefendPM.lua ( 4.05 килобайт ) Кол-во скачиваний: 326


P. S. Если у вас нет регистрации на этом форуме, а значит вы не можете качать вложения, то скачать этот скрипт, равно как и другие, можно по ссылке Мои скрипты.


Спасибо сказали:
Go to the top of the page
+Quote Post
2 страниц V   1 2 >  
Начать новую тему
Ответов
SKIFI
сообщение 21.1.2012, 21:26
Сообщение #2


Начинающий
*

Группа: Пользователи
Сообщений: 28
Регистрация: 20.6.2010
Из: Калуга
Пользователь №: 7 111
Спасибо сказали: 4 раза




ничего нового ты не придумал..антиреклама в личке misdoubt.gif
Go to the top of the page
+Quote Post
Enyby
сообщение 22.1.2012, 14:52
Сообщение #3


Освоившийся участник
*****

Группа: Пользователи
Сообщений: 391
Регистрация: 4.11.2009
Из: Дом
Пользователь №: 4 923
Спасибо сказали: 239 раз




Я отвечу цитатой.
Цитата
Цитата
Скажите мне, что все эти комментаторы сделали в своей жизни нового и интересного? Они вообще что-нибудь в ней создали? Пока что Я вижу, что у меня просто насрано в комментариях, больше НИ-ЧЕ-ГО!
[...]
Или эта позиция: «Ну, это Я уже видел. Это уже было. Дайте мне что-нибудь новенькое, чтобы Я поржал!» Ха-ха-ха!
Источник: http://mf0.me/videoobrascheniya/mr-freeman-part-63


Спасибо сказали:
Go to the top of the page
+Quote Post
AfLc
сообщение 22.1.2012, 22:09
Сообщение #4


Начинающий
*

Группа: Пользователи
Сообщений: 18
Регистрация: 18.5.2011
Из: Россия , Екатеринбург .
Пользователь №: 9 261
Спасибо сказали: 4 раза




Здравствуйте Вам. Можно ли сделать чтобы не только на определенные стоп слова скрипт реагировал , а вообще на сильную пм активность пользователя ?
Go to the top of the page
+Quote Post
Enyby
сообщение 22.1.2012, 22:14
Сообщение #5


Освоившийся участник
*****

Группа: Пользователи
Сообщений: 391
Регистрация: 4.11.2009
Из: Дом
Пользователь №: 4 923
Спасибо сказали: 239 раз




Можно, но такая функциональность уже встроена в хаб. Смотрите в настройках хаба флудообнаружение.

Замените функцию ToArrival на следующую:
Код
function ToArrival(tUser, sData)
    if tSpamUsers[tUser.sIP] == nil then
        tSpamUsers[tUser.sIP] = {}
    end
    if tSpamUsers[tUser.sIP][sToNick] == nil then
        tSpamUsers[tUser.sIP][sToNick] = true
        table.insert(tSpamUsers[tUser.sIP], sToNick)
    end
    local iCount = #tSpamUsers[tUser.sIP]
    local sReport = ""
    if iCount > iLimit then
        sReport = sReport.."*** Пользователь "..tUser.sNick.." с IP "..tUser.sIP.." отослал ЛС "..iCount.." разным пользователям за последние "..iClearTime.." минут. Возможно спам по ЛС. "
    end
    if iCount > iWarnLimit and iCount < iBanLimit then
        Core.SendToUser(tUser, "<"..sBot.."> *** Прекратите рассылать спам по личкам, иначе вы получите бан!")
        sReport = sReport.."Пользователь предупрежден. "
    end
    if iCount >= iBanLimit then
        BanMan.TempBanIP(tUser.sIP, iTimeBan, "Спам по ЛС", sBot, true)
        local sTimeBan = os.date("%d.%m.%Y %R", os.time() + iTimeBan*60)
        sReport = sReport.."Пользователь забанен до "..sTimeBan..". "
        local tUsers = Core.GetUsers(tUser.sIP)
        if tUsers ~= nil then
            for _, tSpamUser in pairs(tUsers) do
                Core.SendToUser(tUser, "<"..sBot.."> *** Вы были забанены до "..sTimeBan.." за спам по ЛС.")
                Core.Disconnect(tSpamUser)
            end
        end
        tSpamUsers[tUser.sIP] = nil
        sReport = sReport.."Отключено "..#tUsers.." пользователей."
    end
    if sReport ~= "" then
        Core.SendToOps("<"..sBot.."> "..sReport)
    end
end


Спасибо сказали:
Go to the top of the page
+Quote Post
AfLc
сообщение 22.1.2012, 22:20
Сообщение #6


Начинающий
*

Группа: Пользователи
Сообщений: 18
Регистрация: 18.5.2011
Из: Россия , Екатеринбург .
Пользователь №: 9 261
Спасибо сказали: 4 раза




Да , но вроде во флудообнаружение , как я помню не пишет сообщение которое использует спамер или флудер.Хотя точно не помню.У меня лички почти всегда были отключены на ynhub, а когда перешел на ptokax в лички можно отправлять было только после реги.
Go to the top of the page
+Quote Post
Enyby
сообщение 22.1.2012, 22:22
Сообщение #7


Освоившийся участник
*****

Группа: Пользователи
Сообщений: 391
Регистрация: 4.11.2009
Из: Дом
Пользователь №: 4 923
Спасибо сказали: 239 раз




Мой скрипт тоже не пишет текста сообщений. Он либо проверяет текст сообщения на слова, либо просто считает число отосланных ЛС.


Спасибо сказали:
Go to the top of the page
+Quote Post
AfLc
сообщение 22.1.2012, 22:24
Сообщение #8


Начинающий
*

Группа: Пользователи
Сообщений: 18
Регистрация: 18.5.2011
Из: Россия , Екатеринбург .
Пользователь №: 9 261
Спасибо сказали: 4 раза




Точно не увидел . Извините :( НО все таки полезный скрипт , спасибо !
Go to the top of the page
+Quote Post
Enyby
сообщение 26.1.2012, 1:29
Сообщение #9


Освоившийся участник
*****

Группа: Пользователи
Сообщений: 391
Регистрация: 4.11.2009
Из: Дом
Пользователь №: 4 923
Спасибо сказали: 239 раз




Новая версия 1.01.
Добавлено игнорирование операторов и расширен список паттернов основными доменами.

ADD:
Игнор операторов означает что операторы не проверяются этим скриптом, но если с IP оператора не оператором будет отсылаться спам, то оператора тоже забанит. Хотя это зависит от настроек профиля операторов. Но отключит от хаба это точно.
Go to the top of the page
+Quote Post
Marc
сообщение 26.1.2012, 1:47
Сообщение #10


Активный участник
***

Группа: Пользователи
Сообщений: 93
Регистрация: 25.1.2010
Пользователь №: 5 828
Спасибо сказали: 7 раз




Enyby!
А можно как-то разделить админа и операторов отдельным меню?
Я имею ввиду то, что если админу по идее можно всегда давать возможность посылать любые адреса, то операторам не всегда можно давать такую возможность....
Go to the top of the page
+Quote Post
Enyby
сообщение 26.1.2012, 1:53
Сообщение #11


Освоившийся участник
*****

Группа: Пользователи
Сообщений: 391
Регистрация: 4.11.2009
Из: Дом
Пользователь №: 4 923
Спасибо сказали: 239 раз




Замените:
Код
    if tUser.bOperator == nil then Core.GetUserData(tUser, 11) end
    if not tUser.bOperator then

На:
Код
    if tUser.iProfile ~= 3 then

где 3 - номер профиля, который нужно игнорировать.
Go to the top of the page
+Quote Post
Marc
сообщение 26.1.2012, 2:00
Сообщение #12


Активный участник
***

Группа: Пользователи
Сообщений: 93
Регистрация: 25.1.2010
Пользователь №: 5 828
Спасибо сказали: 7 раз




Enyby!

Спасибо! данное дополнение поможет админу....
Go to the top of the page
+Quote Post
Enyby
сообщение 26.1.2012, 2:02
Сообщение #13


Освоившийся участник
*****

Группа: Пользователи
Сообщений: 391
Регистрация: 4.11.2009
Из: Дом
Пользователь №: 4 923
Спасибо сказали: 239 раз




Для "спасибо" на этом форуме есть специальная кнопка внизу каждого поста. Если пост помог - нажимаете кнопку.


Спасибо сказали:
Go to the top of the page
+Quote Post
Tsd
сообщение 3.3.2012, 14:54
Сообщение #14


Продвинутый участник
****

Группа: Пользователи
Сообщений: 176
Регистрация: 11.7.2008
Пользователь №: 171
Спасибо сказали: 182 раза




Непонятна функция
function PrettyTime(iTime)

end
Go to the top of the page
+Quote Post
Enyby
сообщение 3.3.2012, 14:56
Сообщение #15


Освоившийся участник
*****

Группа: Пользователи
Сообщений: 391
Регистрация: 4.11.2009
Из: Дом
Пользователь №: 4 923
Спасибо сказали: 239 раз




Просто осталась от попыток написаний и улучшений. Не проследил, когда делал релиз. Сейчас уже пусть будет так - она никому не мешает.
Go to the top of the page
+Quote Post
Tsd
сообщение 3.3.2012, 15:00
Сообщение #16


Продвинутый участник
****

Группа: Пользователи
Сообщений: 176
Регистрация: 11.7.2008
Пользователь №: 171
Спасибо сказали: 182 раза




Понятно. Думал может какая то задержка, но вызова функции в скрипте не обнаружил.
А Вы не хотели бы "склеить" вместе все три скрипта (Hub, Chat, PM) с возможностью подключения/отключения их в конфиге ?
Go to the top of the page
+Quote Post
Enyby
сообщение 3.3.2012, 15:10
Сообщение #17


Освоившийся участник
*****

Группа: Пользователи
Сообщений: 391
Регистрация: 4.11.2009
Из: Дом
Пользователь №: 4 923
Спасибо сказали: 239 раз




В теории можно, но не вижу смысла. Будет комбайн. Труднонастраиваемый и не особо понятный. Единственное что будет лучше - один скрипт, вместо трех.

Например, некоторым админстратором нужно делать исключение для операторов только в PM скрипте, а не во всех. У других уже стоит антиреклама на личку или еще что-то и т. д.
Go to the top of the page
+Quote Post
Tsd
сообщение 3.3.2012, 15:17
Сообщение #18


Продвинутый участник
****

Группа: Пользователи
Сообщений: 176
Регистрация: 11.7.2008
Пользователь №: 171
Спасибо сказали: 182 раза




Я один скрипт и имел ввиду. А конфиг, если и большой - не беда, один раз настроить и всё. Для удобства настройки конфиг можно сделать блоками.
Go to the top of the page
+Quote Post
Enyby
сообщение 3.3.2012, 15:19
Сообщение #19


Освоившийся участник
*****

Группа: Пользователи
Сообщений: 391
Регистрация: 4.11.2009
Из: Дом
Пользователь №: 4 923
Спасибо сказали: 239 раз




Посмотрим. Если уж совсем заняться нечем будет, может и сделаю.


Спасибо сказали:
Go to the top of the page
+Quote Post
Tsd
сообщение 3.3.2012, 15:30
Сообщение #20


Продвинутый участник
****

Группа: Пользователи
Сообщений: 176
Регистрация: 11.7.2008
Пользователь №: 171
Спасибо сказали: 182 раза




Цитата(Marc @ 26.1.2012, 0:47) *
Enyby!
А можно как-то разделить админа и операторов отдельным меню?
Я имею ввиду то, что если админу по идее можно всегда давать возможность посылать любые адреса, то операторам не всегда можно давать такую возможность....

Хороши операторы, если вы им не доверяете...
Go to the top of the page
+Quote Post

2 страниц V   1 2 >
Ответить в данную темуНачать новую тему
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0

Collapse

> Похожие темы

  Тема Ответов Автор Просмотров Последнее сообщение
No New Posts Topic has attachmentsDefend Hub
API 2 | Полностью автоматическая защита хаба от активности ботов
3 Enyby 7 229 5.3.2012, 8:35 Посл. сообщение: Enyby
No New Posts Topic has attachmentsDefend Hub, RusHub edition
Полностью автоматическая защита хаба от активности ботов
6 Enyby 9 866 5.3.2012, 8:35 Посл. сообщение: Enyby
No New Posts Topic has attachmentsDefend Chat
API 2 | Полностью автоматическая защита чата от спама
5 Enyby 8 460 2.3.2012, 16:57 Посл. сообщение: Enyby
No New Posts Topic has attachmentsDefend Chat, RusHub edition
Полностью автоматическая защита чата от спама
1 Enyby 6 500 2.3.2012, 6:29 Посл. сообщение: ShadoWx
No New Posts Topic has attachmentsDefend PM, RusHub edition
Полностью автоматическая защита ЛС от спама
4 Enyby 8 440 1.3.2012, 9:17 Посл. сообщение: ShadoWx

 



RSS Сейчас: 23.11.2024, 0:24