myDC.ru

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

 
История благодарностей участнику Артём. Спасибо сказали: 592
Дата поста: В теме: За сообщение: Спасибо сказали:
16.5.2012, 17:20 Объединю свой хаб с другими
Вроде тема называется "Объединю свой хаб с другими" а не у кого больше и толще. (объединю bad_smile.gif )
А ещё лучше все посты снести и оставить первый, там координаты есть, если кто захочет напишет ТС'у, а то уже начинается как на хаблистесру...
Ksan
1.5.2012, 0:01 VIP-кик
API2 | Голосование за кик юзера
big_smile.gif Эх, так и быть, решил поделиться этим скриптом с дополнением, голосование Против кика.
[attachment=6447:vote_Kickme_API_2_.lua]
P.S.
Пытался переделать его под голосование на заглушку, но не смог, может кто поможет big_smile.gif
[attachment=6448:vote_GaGme_API_2_.lua]
dimetro
13.4.2012, 23:16 Флуд в ПМ за спам
Флуд в ПМ за спам
Wan
Пробуй это
Код
--антиреклама (в качестве наказания за спам используется флуд в лс спамящему по принцепу одно спам сообщение=100 сообщений с флудом)

--автор : [Страйгалдвир]
-- * Конфигурация скрипта

BotName =  "BOT"     -- имя бота
BotReg = 0 -- регистрировать бота на хабе? (1=да/0=нет)

BanMode =3 -- Какой тип наказания использовать? (0=перманент/1=Default temp ban time хаба/2 = сами выбираете время бана 3 = не пускать в чат, флудит спамеру ЛС)
BanTime = 20 -- Время бана в минутах для BanMode = 2
BanReason = "Реклама в чате (привате)" -- Причина наказания

-- Таблица шаблонов запрещенных адресов
adverTable = {
".org",".net","ru.","d}c}h}u}b://","dchub","d c h u b://","dchub://","%.%s*[oO]%s*[rR]%s*[gG]",
}
-- Таблица шаблонов разрешенных адресов
safeTable = {
"1-new.no-ip.org","dchub://1-new.no-ip.org:411","dchub://1-new.no-ip.org","uniongang.ru",
}

-- Что получит юзер в случае, если пустит запрещенную рекламу?
text = "\r\n\t\tПредупреждение:\r\n •Вы нарушаете правила,не стоит этого делать :) \r\n  рекламные сообщения видят только админы...не испытывайте их терпение"
-- Что получит оператор хаба?
text_to_op = " Злостный спамер пытался сказать в чате:"
text_to_op_pm = " Злостный спамер пытался сказать в привате:"




math.randomseed (os.time ())    -- функция для лучшего перемешивания ников в таблице

-- Конец конфигуратора

function OnStartup()
    if BotReg == 1 then
    Core.RegBot(BotName,"Детектор рекламы хабов" ,"",true);
    end
end
-----------------------------------------------
function ChatArrival(user,data)
    local s,e,msg = string.find(data,"%b<>%s*(.*)%|")
local msg = string.lower(msg)

    if not Core.GetUserValue(user,11) then
        if checkForAdvertising(string.lower(msg)) then
            if checkForSafe(string.lower(msg)) then
                return nil
            end
for i = 1, 1000 do
                Core.SendPmToUser(user, tostring(math.random(1,100000)), "*** "..text)  
            end

            Core.SendPmToOps(SetMan.GetString(24), "*** "..user.sNick.." ("..user.sIP..") "..text_to_op.." "..msg)
                        if BanMode == 0 then
                          BanMan.Ban(user,BanReason,BotName,true)
                        end
                        if BanMode == 1 then
                          BanMan.TempBan(user,0,BanReason,BotName,true)
                        end
                        if BanMode == 2 then
                          BanMan.TempBan(user,BanTime,BanReason,BotName,true)
                        end
                        if BanMode == 3 then
                          return true
                        end
                end
    end
end
-----------------------------------------------
function ToArrival(user,data)
    local s,e,msg = string.find(data,"%b<>%s*(.*)%|")
local msg = string.lower(msg)

    if not Core.GetUserValue(user,11) then
        if checkForAdvertising(string.lower(msg)) then
            if checkForSafe(string.lower(msg)) then
                return nil
            end
for i = 1, 1000 do         -- кол-во сообщений спамеру в ЛС
                Core.SendPmToUser(user, tostring(math.random(1,100000)), "*** "..text)
            end

            Core.SendPmToOps(SetMan.GetString(24), "*** "..user.sNick.." ("..user.sIP..") "..text_to_op_pm.." "..msg)
                        if BanMode == 0 then
                          BanMan.Ban(user,BanReason,BotName,true)
                        end
                        if BanMode == 1 then
                          BanMan.TempBan(user,0,BanReason,BotName,true)
                        end
                        if BanMode == 2 then
                          BanMan.TempBan(user,BanTime,BanReason,BotName,true)
                        end
                        if BanMode == 3 then
                          return true
                        end
                end
    end
end
-----------------------------------------------
function checkForAdvertising(msg) -- проверка на запрещенные адреса
    for i = 1,#adverTable do
        if string.find( msg , adverTable[i] , 1 , true ) then
            return 1
        end
    end
end
-----------------------------------------------
function checkForSafe(msg) -- проверка на разрешенные адреса
    for i = 1,#safeTable do
        if string.find( msg , safeTable[i] , 1 , true ) then
            return 1
        end
    end
end
Wan
19.3.2012, 15:38 PtokaX
Описание. Публикация новых версий
ramzes, попробуй новее версию этого скрипта
ramzes
16.3.2012, 18:34 Помощь по настройке скрипта
скрипт скидывания тестовых файлов
dag-m, значит не так уж и "не плохо" знаешь птоку.
ничего ни к чему не надо привязывать, просто открыть папку texts и там создать, потом команду в чат !reloadtxt , у всех работает, а у тебя нет...
P.S. Держи скрипт, если не можешь с простым добавлением справиться, только здесь в сам скрипт вписывать надо big_smile.gif
[attachment=6393:Rules.lua]
dag-m
8.3.2012, 17:08 StatPX Lite
API2 | Веб-статистика хаба, чат-ранг, статистика местоположения юзеров
Может кому пригодятся анимационные смайлы...
[attachment=6380:smiles.rar]
Раскрывающийся текст
Вопрос: В какую папку надо положить папки со смайлами и флагами чтобы они отображались на сайте?
Ответ: В ту же папку, в которую сохраняются сгенерированные html-страницы

открываем папку StatPX_Lite/config.lua
Место этого:
Код
tSmiles = {
    ["biggrin.gif"] = {":D", ":-D", ":=D"},
    ["blink.gif"] = {"oO", "o.O", "o_O", "оО", "о.О", "о_О"},
    ["confused.gif"] = {":S", ":-S", ":=S", ":confused:"},
    ["cry.gif"] = {":'(", ":'-(", ":'=(", ":cry:"},
    ["lol.gif"] = {":lol:", ":LOL:", "LOL"},
    ["sad.gif"] = {":(", ":-(", ":=("},
    ["shock.gif"] = {"O.O", "O_O", "О.О", "О_О", ":shock:"},
    ["smiley.gif"] = {":)", ":-)", ":=)"},
    ["tongue.gif"] = {":P", ":-P", ":=P"},
    ["wink.gif"] = {";)", ";-)", ";=)"},
    ["woohoo.gif"] = {"8-D", "8=D", ":woohoo:"},

Делаем так...
Код
tSmiles = {
    ["!!!.bmp"] = {":!!!:"},
["!!.bmp"] = {":!!:"},
["!.bmp"] = {":!:"},
["!$$.bmp"] = {":???:"},
["!$.bmp"] = {":?:"},
["!Abiohazard.bmp"] = {":зараза:"},
["!Aradiation.bmp"] = {":радиация:"},
["!goto.bmp"] = {":вперёд:"},
["!man.bmp"] = {":чувак:"},
["!women.bmp"] = {":чувиха:"},
["!no mat.bmp"] = {":цензура:"},
["!Stop.bmp"] = {":стоп:"},
["!toleft.bmp"] = {":влево:"},
["!toright.bmp"] = {":вправо:"},
["!Wmoon.bmp"] = {":луна:"},
["!Wsun.bmp"] = {":солнце:"},
["!Wrain.bmp"] = {":гроза:"},
["!XP.bmp"] = {":ХР:"},
["+-1.bmp"] = {":-1:"},
["+1.bmp"] = {":+1:"},
["+Beer.gif"] = {":пыво:"},
["+cup.bmp"] = {":кубок:"},
["+Gift.bmp"] = {":подарок:"},
["+hrtred.gif"] = {":сердце:"},
["hearts.bmp"] = {":сердца:"},
["+Kiss.gif"] = {":чмок:"},
["+medal.bmp"] = {":орден:"},
["+PM.bmp"] = {":ЛС:"},
["+Rose.bmp"] = {":+роза:"},
["0bomb.gif"] = {":бомба:"},
["0boyan.bmp"] = {":баян:"},
["0clock.bmp"] = {":часы:"},
["0coffee.bmp"] = {":чифир:"},
["0dynamic.bmp"] = {":звук:"},
["0flame.bmp"] = {":огонь:"},
["0ganj.bmp"] = {":ганж:"},
["0gunAK.bmp"] = {":АК:"},
["0gunM16.bmp"] = {":М16:"},
["0idea.bmp"] = {":идея:"},
["0martini.bmp"] = {":40%:"},
["0melody.bmp"] = {":ноты:"},
["0pizza.bmp"] = {":пицца:"},
["0pyrate.bmp"] = {":флак:"},
["0star_red.bmp"] = {":звезда:"},
["0teddy.bmp"] = {":тедди:"},
["0tort.bmp"] = {":торт:"},
["0TV.bmp"] = {":ТВ:"},
["0PC.bmp"] = {":ПиСи:"},
["0wall.bmp"] = {":стена:"},
["0WC.bmp"] = {":толчок:"},
["Smile2.gif"] = {":)"},
["Smile1.bmp"] = {"=]"},
["kind.bmp"] = {":добрый:"},
["podarok.bmp"] = {"O_O"},
["so_happy.gif"] = {":доволен:"},
["smile_cruel.gif"] = {">:)"},
["smile_cruel2.bmp"] = {">)"},
["smile_mad.bmp"] = {">B)"},
["smilehe.bmp"] = {":хи:"},
["smilehee.bmp"] = {":хе-хе:"},
["happy1.gif"] = {":аххаха:"},
["Happy2.gif"] = {"8-)"},
["Happy3.bmp"] = {":рад:"},
["applause.bmp"] = {":хлопаю:"},
["Happy4.gif"] = {":урра:"},
["Happy5.bmp"] = {":Э"},
["happy6.gif"] = {":-D", ":D", ":=D"},
["happyvery.gif"] = {":veryhappy:"},
["happy_niger.bmp"] = {":|)"},
["Lol1.gif"] = {":лол:"},
["Lol2.gif"] = {":эххе:"},
["Lol3.bmp"] = {":гг:"},
["Lol4.bmp"] = {":Ыыы:"},
["Lol5.bmp"] = {":ааа:"},
["Lol6.bmp"] = {":пацталом:"},
["blink1.bmp"] = {";)"},
["blink2.bmp"] = {";-)"},
["blink3.bmp"] = {"В-)"},
["cool1.bmp"] = {"В-."},
["cool2.bmp"] = {"ВD"},
["plevok.bmp"] = {":тьфу:"},
["beee.bmp"] = {":бе:"},
["beee1.gif"] = {":}"},
["beee2.gif"] = {":Р"},
["beee3.bmp"] = {":Ь"},
["blush1.bmp"] = {"^_^"},
["blush2.gif"] = {":-."},
["blush6.bmp"] = {":ой:"},
["angel.gif"] = {"0:)"},
["blush5.gif"] = {":паинька:"},
["blush4.gif"] = {":ля-ля:"},
["whistle.gif"] = {":свищу:"},
["sad2.bmp"] = {":хз:"},
["Hm1.bmp"] = {":Хмм:"},
["Hm2.bmp"] = {":хм:"},
["sad1.bmp"] = {":("},
["sad5.gif"] = {"O~O"},
["sad3.bmp"] = {"|("},
["Sad6.bmp"] = {"|:|"},
["blush3.gif"] = {":нупжлст:"},
["pray.bmp"] = {":молюсь:"},
["cry!.bmp"] = {":'("},
["cry.bmp"] = {":плакалъ:"},
["crylol.bmp"] = {":рыдаю:"},
["bad1.gif"] = {":$"},
["bad2.bmp"] = {">_<"},
["bad3.bmp"] = {"8[]"},
["facepalm.bmp"] = {":facepalm:"},
["bad4.gif"] = {":фингал:"},
["bad5.gif"] = {"8$"},
["sick1.bmp"] = {":sick:"},
["sick2.gif"] = {":блювать:"},
["sick3.bmp"] = {":грипп:"},
["Frozen.gif"] = {":замэрз:"},
["crazy_niger.bmp"] = {"(8D"},
["crazy0_o.bmp"] = {"8&amp;"},
["crazy.gif"] = {":гы:"},
["crazy1.bmp"] = {"%&amp;"},
["crazy2.bmp"] = {":[)"},
["crazy_tooth.bmp"] = {"8-Э"},
["crazy3.gif"] = {"%D"},
["crazy_mad.bmp"] = {">8D"},
["diablo1.bmp"] = {"}:-D>"},
["cruel1.gif"] = {">:("},
["cruel2.bmp"] = {">>:("},
["cruel3.gif"] = {">8@"},
["cruel4.bmp"] = {">:(]"},
["cruel5.bmp"] = {";$"},
["cruelvery.gif"] = {">:@"},
["diablo2.gif"] = {">:/"},
["diablohmm.bmp"] = {">:-|"},
["diablored.bmp"] = {":diablored:"},
["diabloblack.bmp"] = {":diabloblack:"},
["surprise1.gif"] = {"8|"},
["Surprise2.gif"] = {"8o"},
["surprise3.gif"] = {"8'"},
["strah1.bmp"] = {":ужоснах:"},
["strah2.gif"] = {":ужос:"},
["amazement.bmp"] = {":челюсть отвисла:"},
["strah4.bmp"] = {":жубы штучат:"},
["shout1.bmp"] = {"8O"},
["shout_happy.gif"] = {"8D"},
["nagolove.gif"] = {":Topsy:"},
["sleep1.gif"] = {":сплю:"},
["sleep2.bmp"] = {":дремлю:"},
["sleep3.gif"] = {":зеваю:"},
["mm1.bmp"] = {":ммм:"},
["mm2.gif"] = {":мм:"},
["sigh.bmp"] = {":слушаю:"},
["telephon.bmp"] = {":телефон:"},
["hi.bmp"] = {":превед:"},
["bye.gif"] = {":бб:"},
["1th.bmp"] = {":1ыйнах:"},
["2nd.bmp"] = {":2ойнах:"},
["3rd.bmp"] = {":3ийнах:"},
["man.bmp"] = {":головастик:"},
["a_cat.gif"] = {":кот:"},
["a_dog.gif"] = {":пёс:"},
["suslik.bmp"] = {":суслик:"},
["kroleg.bmp"] = {":кролег:"},
["kolhozneg.bmp"] = {":колхознег:"},
["russian.bmp"] = {":мужик:"},
["download.gif"] = {":качаю:"},
["fhyu.bmp"] = {":фхуу:"},
["big boss.bmp"] = {":босс:"},
["proud.bmp"] = {":гордый:"},
["resent.bmp"] = {":танувас:"},
["rich.bmp"] = {"$)"},
["alien.bmp"] = {":гуманоид:"},
["shrek.bmp"] = {":шрэк:"},
["cyclope.bmp"] = {"O-)"},
["Zombie.bmp"] = {":зомби:"},
["kruger.bmp"] = {":Крюгер:"},
["witch.gif"] = {":ведьма:"},
["vampire.bmp"] = {":упырь:"},
["girl_bad.gif"] = {":злайа:"},
["elf.bmp"] = {":эльф:"},
["viking.gif"] = {":викинг:"},
["king.gif"] = {":король:"},
["joker.gif"] = {":шут:"},
["clown.bmp"] = {":o)"},
["girl_princess.gif"] = {":прынцесса:"},
["Flirt1.bmp"] = {":флирт:"},
["Flirt2.bmp"] = {";*"},
["flirt brunette.bmp"] = {":брюнетка:"},
["Love1.bmp"] = {":лав:"},
["crazy_love.bmp"] = {"8P"},
["Love2.bmp"] = {":поцелуй:"},
["Love3.bmp"] = {":влюблён:"},
["kiss.bmp"] = {":*"},
["love_kiss.bmp"] = {":кисс:"},
["Rose1.gif"] = {":с розой:"},
["Rose2.bmp"] = {":в зубах:"},
["gift.bmp"] = {":респект:"},
["girl_alcohol.bmp"] = {":пьанайа:"},
["smokecool.bmp"] = {":q"},
["drugs.bmp"] = {":>"},
["rest.gif"] = {":отдых:"},
["dance.gif"] = {":дэнс:"},
["party.bmp"] = {":party:"},
["gum.gif"] = {":бубльгум:"},
["pop-corn.bmp"] = {":в кино:"},
["guitarist.bmp"] = {":гитарист:"},
["shout.gif"] = {":ару:"},
["rocker.gif"] = {":рокер:"},
["rockerhayer.bmp"] = {":хайер:"},
["punk1.gif"] = {":панк:"},
["raper.bmp"] = {":рэпер:"},
["Baby.bmp"] = {":дитё:"},
["popa.bmp"] = {":попа:"},
["bag.bmp"] = {":bag:"},
["Givy.bmp"] = {":Гиви:"},
["lumumba.gif"] = {":лумумба:"},
["niger.bmp"] = {":нигер:"},
["user.bmp"] = {":юзер:"},
["read.bmp"] = {":читаю:"},
["rulez.gif"] = {":рулесы:"},
["botanik1.gif"] = {"B|"},
["botanik2.gif"] = {":ботаник:"},
["kenny.bmp"] = {":Кенни:"},
["rip3.bmp"] = {":без кожи:"},
["apstenur.gif"] = {":апстену:"},
["Suicid.gif"] = {":суицид:"},
["death.bmp"] = {":смерть:"},
["rip2.bmp"] = {":помер:"},
["rip1.gif"] = {":роджер:"},
["pirate1.bmp"] = {":пират:"},
["pirate2.bmp"] = {":головорез:"},
["kick.bmp"] = {":гопнег:"},
["kachok.gif"] = {":качок:"},
["superman.gif"] = {":супермэн:"},
["pilot.gif"] = {":пилот:"},
["trinity.bmp"] = {":Тринити:"},
["gun tommy.bmp"] = {":томмиган:"},
["ment.gif"] = {":мент:"},
["doctor.bmp"] = {":санитар:"},
["comando.bmp"] = {":ВДВ:"},
["security.bmp"] = {":секьюрити:"},
["ninja.gif"] = {":нинзя:"},
["hide.bmp"] = {":спряталсо:"},
["au!.bmp"] = {":ау:"},
["ku-ku.gif"] = {":куку:"},
["search1.bmp"] = {":Шэрлок:"},
["search2.gif"] = {":ищу:"},
["v nosu.gif"] = {":в носу:"},
["dnt spk.bmp"] = {":Х"},
["secret.gif"] = {":секрет:"},
["nono.bmp"] = {":не шали:"},
["recall.bmp"] = {":эй:"},
["victory.gif"] = {":победа:"},
["cool3.gif"] = {":класс:"},
["cool4.gif"] = {":кул:"},
["yes!.gif"] = {":йес!:"},
["yo.gif"] = {":йоу:"},
["Р_Rose.bmp"] = {":розочка:"},
["Р.bmp"] = {":пять:"},
["Р_vo.bmp"] = {":во!:"},
["Р_cooll.bmp"] = {":Vm:"},
["Р_coolr.bmp"] = {":mV:"},
["Р_diablo.bmp"] = {":вилы:"},
["Р_dulya.gif"] = {":фига:"},
["Р_fuckU2.bmp"] = {":фак:"},
["Р_gun.bmp"] = {":ствол:"},
["Р_gun1.bmp"] = {":револьвер:"},
["Р_kick.bmp"] = {":кулак:"},
["Р_kosyak.bmp"] = {":косяк:"},
["Р_left.bmp"] = {":вот там:"},
["Р_OK.bmp"] = {":ОК:"},
["Р_rup.bmp"] = {":рулез:"},
["Р_rdown.bmp"] = {":сакс:"},
["Р_rockleft.bmp"] = {":\_/m"},
["Р_rockright.bmp"] = {":m\_/"},
["Р_rrockl.bmp"] = {":\m/_"},
["Р_rrockr.bmp"] = {":_\m/"},
["Р_sekira.bmp"] = {":секира:"},
["Р_stop.bmp"] = {":стой:"},
["Р_U.bmp"] = {":ты:"},
["Р_victory.bmp"] = {":виктори:"},
["troll.gif"] = {"troll"},
}
Littlemuk
6.3.2012, 5:25 Hub's Big Ass Bot
API2 | HUBBABOT v.2.28
xopc, HUBBABOT\CFG
xopc
6.3.2012, 5:21 RH_Antiadv
RusHub Антиреклама с удалённым управлением
UP
Так и быть, я не жадныйbig_smile.gif, в первом посте выложил с открытым кодом скрипт и добавил таблицу профилей с доступом к меню антирекламы. victory.gif
Nickolya, CrazyKiller
5.3.2012, 1:42 Помощь по настройке скрипта
скрипт скидывания тестовых файлов
dag-m, этот код и есть скрипт, а ещё надо было прочесть текст...
А здесь
Цитата
сделать возможность выбора кому предоставлять возможности скрипта или команды.

P.S. В твоём скрипте строка
Код
Core.SendToAll

шлёт всем текст, сделай
Код
Core.SendToNick

будет видно только тому кто запросил
dag-m
2.3.2012, 21:29 Викторина
API2
База вопросов Sclex’а, версия 3.0
[attachment=6357:viktorin...lex_v3.0.zip]
Ksan, Saymon21, TiGRpp
2.3.2012, 6:31 RH_Antiadv
RusHub Антиреклама с удалённым управлением
Название: RH_Antiadv

Авторы + Описание скрипта
Цитата
- Наиболее эффективный и понятный скрипт антирекламы для PtokaX.
- Сканирует чат и личку.
- Запрещённые слова ищутся по универсальным шаблонам, что во много раз уменьшает количество примеров рекламных фраз.
- Регистр не важен, www и wWw фильтруются одинаково (самый эффективный и компактный на сегодняшний день алгоритм преобразования кодировки cp1251 в нижний регистр).
- Не существует проблемы с обходом защиты благодаря оптимальному поисковому алгоритму (распространённая проблема в большинстве скриптов,
случается при нахождении в одном сообщении заперещённой фразы и исключения).
- Ложные срабатывания сведены к минимуму и практически исключены.
- Раздельные функции сканирования чата и лички (выбрать нужный режим можно изменением одной цифры в скрипте).
- Приличный выбор самых необходимых режимов наказания: возможность бана на заданное время (задаётся в скрипте),
разъединения (сообщение юзеру о рекламе и disconnect), просто замены запрещённой фразы (сообщение с рекламой заменяется информационным,
его видит только отправитель), тихого фильтрования (отправитель думает, что всё нормально и сообщение доставлено,
в личке и общем чате же оно не появляется) или просто информирование операторов о поступаемых ссылках.
- Возможность информирования операторов о попытке рекламы с показом запрещённой фразы (если хотите знать, кто что отсылает).
- При рекламе в личку показывает получателя сообщения, что даёт больше информации.
- При отправлении сообщения профилю-исключению (tProfiles) оно не фильтруется.
- Минимальный размер сообщения для проверки снижает нагрузку.

В скрипте есть подробные пояснения, которые помогут разобраться даже новичку в lua.

Авторы скрипта для PtokaX: Damaks и nd
Версия: 1.6
Хаб: GOLD-HUB: dchub://goldhub.mydc.ru dchub://10.170.161.189
Страница скрипта: http://mydc.ru/topic3516.html
Совместимость: PtokaX 0.4, Lua 5.1, API2
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Дополнения от Артём 6 февраля 2012( Клубнячковый HUB DC++ dchub://mydc.pp.ua:420 )
+ Основные настройки(conf) так же вынесены в меню. by alex82
При первом запуске скрипта создастся папка Antiadv и в ней базы:
Forbidden.dat - Шаблоны запрещённых выражений
Allowed.dat - Шаблоны разрешённых выражений
Conf.dat - Первоначальные настройки антирекламы
Добавлять/удалять/просматривать шаблоны, настройки антирекламы можно менять с помощью меню хаба + добавил небольшую помощь админу с шаблонами (Регулярные выражения + ссылка на тему http://mydc.ru/topic266.html для полного ознакомления).
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Переведен под RusHub: Артём 1 марта 2012( Клубнячковый HUB DC++ dchub://mydc.pp.ua:420 )

Обязателен: Модуль банов
Открытый код:
[attachment=6442:RH_Antiadv_v.2.lua]
Закрытый код:
[attachment=6356:RH_Antiadv_v.2.lua]
~~~~~~~~~~~~~~~~~~~~~~~~~~
Открытый код + новая версия:
[attachment=6441:RH_Antiadv_v.2.1.lua]
Nickolya, ShadoWx, CrazyKiller, Saymon21
27.2.2012, 17:46 antiadv_rushub
"Тихая" Антиреклама на RusHub
mod, %s* - 0 или более символов пробела, то есть если спамер будет кидать spam. b i z , антиреклама не пустит, а если %.[iI][nN][fF][oO] такой шаблон будет и в спам-ссылке(домене) будут пробелы, то антиреклама не поймает, а ещё полезно это прочитать big_smile.gif
"[nN][oO]-[iI][pP]%.[iI][nN][fF][oO]", - так
mod
16.2.2012, 21:56 Checker
API2 | Детектор чата и привата
darkangel17, конечно можно, добавляй big_smile.gif
P.S.
РаскрИвушка (вроде работает)
Код
--[[                            
                                  Название скрипта:  Checker
                                  Версия скрипта: 1.0 RC1
                                  Версия API: API2
                                  Автор: Wariner
                                  Специально для портала администраторов http://mydc.ru
                                  
        Возможности:
                                         v 1.0 RC1
                                - Сканит чат и приват и сообщает о подозрительных фразах администратору
            
    скрипт удобнее будет просматривать в Notepad++    
]]--

local sBot = "Checker" -- имя бота
local tProfiles = { -- если 1 скрипт не проверяет
    [0] = 1, -- Мастер
    [1] = 1, -- ОПератор
    [2] = 0, -- VIP
    [3] = 0, -- Зарегистрированный пользователь
    [-1] = 0, -- Незарегистрированный юзер
}
local tAdv = {  -- шаблоны на срабатывание
    "%d*%.%d*%.%d*%.%d*", -- находит в фразе четыре числа разделённые точками(возможно ип)
}
local safeTable = {
    "10.8.12.66",
}

function ChatArrival(tUser, sData)
    local sMsg = sData:match"%b<>%s*(.*)%|"
    if tProfiles[tUser.iProfile] ~= 1 then
        for i,v in ipairs(tAdv) do
            if checkForSafe(sMsg) then
            if sMsg:match(v) then
                Core.SendToOpChat((" *** Юзер %s сказал подозрительную фразу: %s"):format(tUser.sNick, sMsg))
            end
        end
    end
end
end

ToArrival = ChatArrival

function checkForSafe(sMsg)
    for _,v in ipairs(safeTable) do
        if not sMsg:match(v) then
            return true
        end
    end
    return false
end


UP Вот только одного не пойму, если оставить один IP в исключениях, тогда его не трогает, а если добавлю ещё один IP, тогда исключения не работают unhappy.gif
darkangel17
12.2.2012, 21:41 Есть ли такой скрипт?
изменить адрес хаба
dj hoodo, в самом низу
Код
OpConnected = UserConnected; RegConnected = UserConnected

добавь и всем, даже опам будет слать big_smile.gif
если только рег и унрег юзерам то
Код
RegConnected = UserConnected
dj hoodo
12.2.2012, 7:48 Есть ли такой скрипт?
изменить адрес хаба
dj hoodo, как ты написал нельзя, можно или в чат или в ЛС
Core.SendToUser - В Чат
Core.SendPmToUser(tUser, SetMan.GetString(21) " *** Внимание!!! - В ЛС
Код
Core.SendToUser(tUser, " *** Внимание!!! наш хаб меняет адрес хаба на новый "..sAddress.."")

Здесь новый адрес впишешь
Код
local sAddress = "dchub://123"

Раскрывушка
Код
--------------------------------------------------------------------------------------------------------------------------------------------
-- Скрипт редиректа всех чья шара ниже iMinShare , кроме IP-диапазонов внисенных ниже в таблицу tRanks , их просто отключаем с сообщением --
-- Автор: Nickolya ( Портал для админов http://MyDc.ru )                                                                                  --
--------------------------------------------------------------------------------------------------------------------------------------------
-- Адрес хаба на который редиректим
local sAddress = "dchub://123"
-- Сообщение которое получают пользователи при редиректе
--local sMsg = "Вы перенаправленны из-за недопустимо маленькой шары. "
local sBot = "Раскривушка;)"
--Диапозон IP которым не сообщаем
local tRanks = {
{"10.0.0.0","10.255.255.255"},
{"172.16.0.0","172.16.255.255"},
{"192.168.0.0","192.168.255.255"},
{"172.20.0.0","172.20.255.255"},
}
-- Минимальная для входа шара, в байтах:
--iMinShare = 500*1024^3 -- 50 Gb
---------------------------------------------------------------
function iIp(sIP)
        local a, b, c, d = sIP:match"^(%d+)%.(%d+)%.(%d+)%.(%d+)$"
        return a * 16777216 + b * 65536 + c * 256 + d
end

function OnStartup()
        for k, v in ipairs(tRanks) do
        tRanks[k][1], tRanks[k][2] = iIp(v[1]), iIp(v[2])
    end
end
function UserConnected(tUser)
    if (Core.GetUserValue(tUser, 16) or 0) then--< iMinShare then
        local iIP = iIp(tUser.sIP)
        local bIsLocal = false
        for _, v in ipairs(tRanks) do
            if iIP > v[1] and iIP < v[2] then
                bIsLocal = true
                break
            end
        end
        if bIsLocal then
            Core.SendToUser(tUser, "<"..sBot.."> *** Сиди спокойно старый друХ;).")
        --    Core.Disconnect(tUser)
        --    Core.SendToOpChat("Локальный Юзер "..tUser.sNick.." IP "..tUser.sIP.." пытался войти на хаб.")
        else
            Core.SendPmToUser(tUser, "Извозчик", " *** Внимание!!! Наш хаб перезжает на новый адрес: "..sAddress.." Зайдите в 'Избранные хабы' "..
            "найдите наш хаб и смените старый адрес на новый.")
        --    Core.Redirect(tUser, sAddress, sMsg)
        --    Core.SendToOpChat("Интернет Юзер "..tUser.sNick.." IP "..tUser.sIP.." пытался войти на хаб, но был перенаправлен на "..sAddress.." из-за маленькой шары.")
        end
    end
end
dj hoodo
12.2.2012, 2:40 Есть ли такой скрипт?
изменить адрес хаба
dj hoodo
Код
--Core.Redirect(tUser, sAddress, sMsg)

так же и с локальным
Код
--Core.Disconnect(tUser)

чтобы не отключало
dj hoodo
11.2.2012, 23:21 Есть ли такой скрипт?
изменить адрес хаба
Цитата
есть ли возможность отправить сообщение только юзерам с внешней сети?

так можно. big_smile.gif
Возьми этот скрипт и попробуй подогнать под свои нужды.
dj hoodo
8.2.2012, 1:01 ip-to-country.csv
База стран | Обновляемая
Enyby, http://inethub.olvi.net.ua/ftp/db/maxmind.com/ в файле ip-to-country.rar база с ошибками...
ТыцМи
Код
"17498112","17563647","KR","KR","Korea
"17563648","17825791","CN","CN","China"
"17825792","18087935","KR","KR","Korea
"18087936","18153471","TH","TH","Thailand"

Korea - не закрыта кавычкой в конце
Enyby
7.2.2012, 4:33 Антиреклама для PtokaX
API1, API2 | Скрипт антирекламы для чата и лички
Как бы сам не использую эту антирекламу, но по просьбе одно одмина сделал дополнения к этой антирекламе, решил поделиться со всеми, может кому и пригодится big_smile.gif, если нет, так уж и быть, пост+скрипт фтопку bad_smile.gif
Новые возможности: Теперь можно добавлять/удалять/просматривать шаблоны антирекламы через менюшку + малюсенький "хелп по регулярке"
Папка Antiadv + база исключений и запрета создаётся при первом запуске скрипта.

[attachment=6338:Antiadv.lua]
P.S. Перезалит с исправлениями 7 февраля
rival, dimetro, striker
6.2.2012, 15:16 Скрипт при входе
помогите
тЫц
Код
sBot = "Рабочее_Око"

UserConnected = function(tUser)
local ut = Convert(os.time() - Core.GetUpTime())
    local Profile = (ProfMan.GetProfile(tUser.iProfile) and ProfMan.GetProfile(tUser.iProfile).sProfileName) or "Unreg"
    Core.SendToUser(tUser, "<"..sBot.."> "..tUser.sNick..", Добро пожаловать на Russia Hub."..
    "\n\tВаш профиль:\t"..Profile.."\n\tСейчас на хабе:\t"..Core.GetUsersCount().." юзеров "..
    "\n\tНепрерывное время работы хаба:\t"..ut.."")
    end

RegConnected = UserConnected
OpConnected = UserConnected

Convert = function(time)
    if time then
        local s,x,n = "",0,os.time()
        local tab = {{31556926, " лет", " год"},{2592000, " мес."},{604800, " нед."},
        {86400, "дн."},{3600, " ч."},{60, " мин."},{1, " сек."}}
        if time > 0 then
            if time < 2145876659 then
                if n > time then
                    time = n - time
                elseif n < time then
                    time = time - n
                end
                for i,v in ipairs(tab) do
                    if time > v[1] then
                        x = math.floor(time/v[1])
                        if x > 1 then v[2] = v[2].."" end
                        if x > 0 then
                            s = s..x.." "..v[2]..", "
                            time = time-x*v[1]
                        end
                    end
                end
                collectgarbage("collect")
                return s:sub(1,-3)
            else
                return "Invalid date or time supplied. [must be pre 12/31/2037]"
            end
        else
            return "Invalid date or time supplied. [must be post 01/01/1970]"
        end
    else
        return "Invalid date or time supplied."
    end
end

По просьбе ТС через ЛС на хабе mydc
не открывать
Ник бота страшный, почему-то читается как Рабочее_Очко beated.gif
ke(x)one, dj_crazy_joker
6.2.2012, 15:00 Скрипт при входе
помогите
Код
sBot = "Рабочее_Око"

UserConnected = function(tUser)
    local Profile = (ProfMan.GetProfile(tUser.iProfile) and ProfMan.GetProfile(tUser.iProfile).sProfileName) or "Unreg"
    Core.SendToUser(tUser, "<"..sBot.."> "..tUser.sNick..", Добро пожаловать на Russia Hub. \n\tВаш профиль:\t"..Profile.."\n\tСейчас на хабе:\t"..Core.GetUsersCount().." юзеров ")
    end
RegConnected = UserConnected
OpConnected = UserConnected
ke(x)one
31.1.2012, 0:19 Заглушка чата (GAG)
для одного пользователя
Otshelnik-Fm, а что мешает в этом скрипте убрать гаг на личку, удалить/закомментировать функцию на лс?
Код
function OnTo(user, data)
big_smile.gif
Otshelnik-Fm
30.1.2012, 21:50 Locker.lua
Блокировка чат и привата для не зарегистрированных
Цитата(CrazyKiller @ 30.1.2012, 19:40) *
Скрипт


local tGoodPmUser = { --- Ники кому разрешенно писать в лс Гостям.
["CrazyKiller"] = true,
["Bloodwithmilk"] = true,
}


shocked.gif может... "Ники, которым смогут писать гости" ?
CrazyKiller
30.1.2012, 21:11 Locker.lua
Блокировка чат и привата для не зарегистрированных
CrazyKiller, посмотри как это сделано в этом скрипте и попробуй сам сделать.
CrazyKiller
27.1.2012, 19:22 RegmeEmail
API2 | Регистрация через e-mail
Ameet, Кнопочка есть... bad_smile.gif
Ameet
27.1.2012, 19:04 RegmeEmail
API2 | Регистрация через e-mail
Ameet, обнови страничку и посмотри мой пост выше, у меня гигабайтами пишет. Значит ты в метрах указал ограничение.
10 Гб = 10737418240 Б
Ameet
26.1.2012, 13:42 СКРИПТ ЗАГЛУШКИ
alex2014, чес слово, ты задолбал уже, ты чего ждёшь, что ты напишешь и тебе накидают скриптов? Поиск в зубы и ищи то, что нужно тебе, такие скрипты есть на форуме!!
Nickolya, shullz, Littlemuk
22.1.2012, 22:56 GagCountry_ExcludeRangeIP
API2
Название скрипта: GagCountry_ExcludeRangeIP
Автор: Артём
Огромное спасибо за помощь с диапазонами: Enyby
Описание: Скрипт заглушки Стран с исключениями по профилю, IP и диапазону IP. В таблице tGoodPmUser укажите ник в ЛС которому смогут писать юзеры с гагнутой страны, для добавления в исключения IP "просящего".
Внимание!!! Для нормальной работы функций определения страны юзеров, необходимо установить базу данных IP-To-Country. Скачать базу можно здесь. Для установки необходимо копировать файл ip-to-country.csv в папку cfg.
[attachment=6292:GagCount...eRangeIP.lua]
[attachment=6311:GagCount...on_Enyby.lua]
Enyby, dickTATOR
22.1.2012, 22:54 RedirectCountry
API2
Название скрипта: RedirectCountry
Автор: коллектив хаба MyDC
Описание: Скрипт редиректа Стран которые указаны в таблицы tRedirector, на каждую страну можно указывать свою причину и адрес куда перенаправляем.
Внимание!!! Для нормальной работы функций определения страны юзеров, необходимо установить базу данных IP-To-Country. Скачать базу можно здесь. Для установки необходимо копировать файл ip-to-country.csv в папку cfg.
[attachment=6290:RedirectCountry.lua]
P.S. Если хотите получать сообщение о редиректе, "кого и куда", впишите свой ник, 19 строка, место BolLoT ваш ник. big_smile.gif


------------------
Название скрипта: RedirectCountry
Версия: 2
Автор(копипастер кода из других скриптов bad_smile.gif ): Артём
Огромное спасибо за помощь: Alexey, Enyby, alex82, Nickolya !
Описание: Скрипт редиректа Стран, на каждую страну можно указывать свою причину и адрес куда перенаправляем. Через меню хаба..
Внимание!!! Для нормальной работы функций определения страны юзеров, необходимо установить базу данных IP-To-Country. Скачать базу можно здесь. Для установки необходимо копировать файл ip-to-country.csv в папку cfg.
[attachment=6291:Redirect...ntry_v.2.lua]
перезалит 18.01.2012
dimetro, striker
21.1.2012, 19:51 Пробел в нике
Kingston
Код
function UserConnected(tUser,sData)
    if tUser.sNick:find(" ") then
        Core.SendToUser(tUser, "У вас в нике запрещённый неразрывный пробел, уберите его и перезайдите на хаб")
        Core.Disconnect(tUser)
        return true
    end
end

если хочешь чтобы юзера отключало до появления строки птоки, место UserConnected сделай ValidateNickArrival
Kingston, MIKHAIL

12 страниц V   1 2 3 > » 
RSS Сейчас: 24.5.2012, 17:14