Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

MyDC.ru _ Запросы скриптов для PtokaX _ Блок по тегу

Автор: valdis73 1.5.2010, 4:43

Народ я вот спросить хотел, где то видел мануал по тегам. Найти не могу. Есть в природе скрипт блокирующий вход в хаб (птока nix) по тегу?
Дело в том, что один баран пару лет назад создал клиент, и сунул туда свой ник, в сам тег, да так сунул с пробелами, теперь народ наставил себе эти клиенты, закачка идёт кошмарно, кошмарно даже не для них, а для всех остальных. Скачивают они 1мб и хаб их рубит, потом заново, и забивают все слоты. Короче самые "одарённые" умудряются за минуту больше сотни слотов забить, приходиться потом клиент перезапускать. На других клиентах их вовсе дуплит сразу. Остаются они без закачки, и другие без слотов. За два года пересадил всех, но вот 5чел особо твёрдых до сих пор не могут понять как сменить клиент. С октября с ними бьюсь. Они входят с чужих айпи (хаб сетевой и у нас можно в настройке ип сменить), быстро хватают что им надо, и бегут. Другие потом сидят с болтом. В хексе есть в настройке такая тема. А вот в птоке не надыбал.
Есть народ такой скрипт?
Скажем при входе с этим юзверям пишет "пшёл и сменил клиент на другой, скачать тут (ссылка)"

http://mydc.ru/r/?http://fastpic.ru/view/2/2010/0310/de6981ed4482e90364d6b3b4753cdbba.png.html

Автор: Артём 1.5.2010, 10:19

Попрбуй это  FavClientOnly.lua ( 408 байт ) : 31

Автор: valdis73 1.5.2010, 16:32

Артём спасибо, идея именно та что я и хотел, только незадача в том, что он блочит все теги, а мне надо, что бы не пускал только один
<Tomilino.Net DC ++,M:A,H:1/0/0,S:10>

Автор: Alexey 1.5.2010, 17:52

 BadClient.lua ( 421 байт ) : 20

Автор: valdis73 1.5.2010, 22:48

Спасибо Alexey но Ваш скрипт пропускает всех. Абсолютно всех.

Автор: Nickolya 1.5.2010, 22:56

Вот сделать конкретно нужное вам - 1 минута, попробуйте...

Код
function UserConnected(tUser)
    local sTag = Core.GetUserValue(tUser, 3) or false
    if sTag and sTag:find("<Tomilino.Net DC ++,", 1, 1) then
        Core.Disconnect(tUser)
    end
end
OpConnected = UserConnected
RegConnected = UserConnected

Автор: valdis73 1.5.2010, 23:12

Похоже я всех тут уже достал)))
<Tomilino.Net DC ++,M:A,H:1/0/0,S:10>
Nickolya ..... Пропускает)))

Автор: Alexey 2.5.2010, 0:14

А клиент точно так пишется? Скриншот не помешал-бы.

Автор: valdis73 2.5.2010, 18:27

Вот собстно

User Info:
Nick: Бандит
Share: 0 Байт
Description: by Help.Tomilino.Net
Tag: <TomilDC:8.6.5,M:A,H:1/0/0,S:10>
Connection: 100
E-Mail:
Mode: A
Hubs: 1 (1/0/0)
Slots: 10
IP: 10.32.36.100
Supports:

Автор: Trans 3.5.2010, 1:00

Что же ты путаешь всех? В одном месте один тэг пишешь про нехорошего юзера один, в другом - другой. Ты уж определись сначала.
Проверь вышепоказанный скрипт в таком варианте:

Код
function UserConnected(tUser)
    local sTag = Core.GetUserValue(tUser, 3) or false
    if sTag and sTag:find("<TomilDC:8.6.5,", 1, 1) then
        Core.Disconnect(tUser)
    end
end
OpConnected = UserConnected
RegConnected = UserConnected

Автор: valdis73 3.5.2010, 3:01

Ksan почему путаю? Там у них выбор тегов есть и они их сами меняют, я хз зачем это было сделано, 2 тега томилино, но факт остаётся фактом, нужно что бы блочило по Tomilino именно. Так как тег не один, перечислять же их нет смысла оба в скрипте?

Раскрывающийся текст

User Info:
Nick: Бандит
Share: 0 Байт
Description: by Help.Tomilino.Net
Tag: <TomilDC:8.6.5,M:A,H:1/0/0,S:10>
Connection: 100
E-Mail:
Mode: A
Hubs: 1 (1/0/0)
Slots: 10
IP: 10.32.36.100
Supports:




User Info:
Nick: КнязьТьмыД
Share: 11,47 ГБ
Description: by Help.Tomilino.Net
Tag: <TomilDC:8.6.5,M:A,H:1/0/0,S:10>
Connection: 100
E-Mail:
Mode: A
Hubs: 1 (1/0/0)
Slots: 10
IP: 10.32.37.245
Supports:


User Info:
Nick: Курим
Share: 10,25 ГБ
Description: by Help.Tomilino.Net
Tag: <Tomilino.Net DC ++,M:A,H:1/0/0,S:10>
Connection: 100
E-Mail:
Mode: A
Hubs: 1 (1/0/0)
Slots: 10
IP: 172.16.29.15
Supports: MiniSlots XmlBZList ADCGet TTHL TTHF BanMsg GetZBlock ZLIG


User Info:
Nick: Пересвет
Share: 268,01 ГБ
Description: by Help.Tomilino.Net
Tag: <TomilDC:8.6.5,M:A,H:1/0/0,S:10>
Connection: 100
E-Mail:
Mode: A
Hubs: 1 (1/0/0)
Slots: 10
IP: 10.52.53.213
Supports:


User Info:
Nick: bars_ots
Share: 33,53 ГБ
Description: by Help.Tomilino.Net
Tag: <Tomilino.Net DC ++,M:A,H:1/0/0,S:10>
Connection: 100
E-Mail: bars_125clan@mail.ru
Mode: A
Hubs: 1 (1/0/0)
Slots: 10
IP: 172.16.254.53
Supports:



User Info:
Nick: RPG+
Share: 240,60 ГБ
Description: by Help.Tomilino.Net
Tag: <Tomilino.Net DC ++,M:A,H:1/0/0,S:10>
Connection: 100
E-Mail:
Mode: A
Hubs: 1 (1/0/0)
Slots: 10
IP: 172.16.160.8
Supports:


User Info:
Nick: na5pavel
Share: 14,53 ГБ
Description: by Help.Tomilino.Net
Tag: <Tomilino.Net DC ++,M:P,H:1/0/0,S:10,L:10000>
Connection: 0.5
E-Mail: na5pavel@yandex.ru
Mode: P
Hubs: 1 (1/0/0)
Slots: 10
IP: 10.0.0.119
Supports:


User Info:
Nick: кккир..
Share: 20,95 ГБ
Description: by Help.Tomilino.Net
Tag: <Tomilino.Net DC ++,M:A,H:1/0/0,S:10>
Connection: 100
E-Mail:
Mode: A
Hubs: 1 (1/0/0)
Slots: 10
IP: 172.16.168.66
Supports:


User Info:
Nick: 2323asedfgweg
Share: 11,33 ГБ
Description: by Help.Tomilino.Net
Tag: <TomilDC:8.6.5,M:A,H:1/0/0,S:10>
Connection: 100
E-Mail:
Mode: A
Hubs: 1 (1/0/0)
Slots: 10
IP: 10.32.32.58
Supports:


User Info:
Nick: КнязьТьмыД
Share: 14,21 ГБ
Description: by Help.Tomilino.Net
Tag: <TomilDC:8.6.5,M:A,H:1/0/0,S:10>
Connection: 100
E-Mail:
Mode: A
Hubs: 1 (1/0/0)
Slots: 10
IP: 10.32.37.245
Supports:



User Info:
Nick: kolia
Share: 35,23 ГБ
Description: by Help.Tomilino.Net
Tag: <Tomilino.Net DC ++,M:A,H:1/0/0,S:10>
Connection: 100
E-Mail:
Mode: A
Hubs: 1 (1/0/0)
Slots: 10
IP: 172.16.168.134
Supports:



Как видим тут 2 тега, их можно оба внести в скрипт?Или если есть возможность по описанию by Help.Tomilino.Net

Автор: Ksan 3.5.2010, 4:35

Вот попробуй это тогда. В таблицу можешь добавить, если понадобится в будущем, другие тексты из тэга или описания (я добавил и проверку по описанию).

Раскрывающийся текст
Код
sBot = SetMan.GetString(21)
sWarn = "Просьба сменить клиент на любой другой, чтоб Вы могли попасть на этот хаб."  -- можете тут написать любой текст

tForbid = {
    "TomilDC:8.6.5",
    "Tomilino.Net DC",
    "Tomilino",
--    "Tomil",   -- хотя можно просто одной этой строкой обойтись, если у других нормальных юзеров нет такого тэга
}

function UserConnected(tUser)
    Core.GetUserData(tUser, 3)
    Core.GetUserData(tUser, 2)
    for i = 1, #tForbid do
        if tUser.sTag:find(tForbid[i],1,true) or tUser.sTag:find(tForbid[i],1,true) then
        Core.SendToUser(tUser, "<"..sBot.."> "..sWarn)  --  если не хотите никаких сообщений юзеру, то закомментите строку (спереди нарисуйте 2 знака минус --)
        Core.Disconnect(tUser)
        end
    end
end

Картинка для юзера будет выглядеть так:
Код
[05:09:33] <Говорун> Этот хаб работает под управлением PtokaX DC Hub 0.4.1.1 (Время работы: 0 дней, 0 часов, 19 минут / Юзеры: 1)
[05:09:34] *** This socket has been closed...

Можно сделать и вообще без сообщения от хаба, например, так:
Раскрывающийся текст
Код
sBot = SetMan.GetString(21)
sWarn = "Просьба сменить клиент на любой другой, чтоб Вы могли попасть на этот хаб."  -- можете тут написать люой текст

tForbid = {
    "TomilDC:8.6.5",
    "Tomilino.Net DC",
    "Tomilino",
--    "Tomil",   -- хотя можно просто одной этой строкой обойтись, если у других нормальных юзеров нет такого тэга
}

function MyINFOArrival(tUser, sData)
        for i = 1, #tForbid do
        if sData:find(tForbid[i],1,true) or sData:find(tForbid[i],1,true) then
--        Core.SendToUser(tUser, "<"..sBot.."> "..sWarn)  --  если  хотите отправить сообщение юзеру, то раскомментите строку (спереди удалите 2 знака минус --)
        Core.Disconnect(tUser)
        end
    end
end

В этом случае картинка будет иная:
Код
[05:36:11] *** Соединение с dchub://192.168.1.2:412...
[05:36:11] *** Соединён
[05:36:12] *** This socket has been closed...

Автор: valdis73 3.5.2010, 5:17

Спасибо Волк. Сейчас поставил его, как выползут из банов посмотрим.

Проходят свободно

http://mydc.ru/r/?http://radikal.ru/F/s001.radikal.ru/i194/1005/bd/28fb0a3ec6d9.png.html

Автор: Nickolya 3.5.2010, 19:40

Вопрос номер 1: у вас птока 0.4.х.х версии?
№2: вы сохраняете в файл скрипт с расширением .lua и запускаете его?
№3: скрипт работает без ошибок?
№4: какой из скриптов вы запускаете из всех предложенных выше? Т.к. последний из предложенных должен работать на все 100%.

Автор: valdis73 3.5.2010, 19:58

Птока на никсах 0.4.0
Проверяю попутно и в инет хабе там один на виндовой 0.4.1.2, второй на 0.4.1.0
Никак не катит. Пробовал заменять на стронг и на грей теги. Пропускает
Пробовал первый из них

Этот

Код
sBot = SetMan.GetString(21)
sWarn = "Просьба сменить клиент на любой другой, чтоб Вы могли попасть на этот хаб."  -- можете тут написать любой текст

tForbid = {
    "TomilDC:8.6.5",
    "Tomilino.Net DC",
    "Tomilino",
--    "Tomil",   -- хотя можно просто одной этой строкой обойтись, если у других нормальных юзеров нет такого тэга
}

function UserConnected(tUser)
    Core.GetUserData(tUser, 3)
    Core.GetUserData(tUser, 2)
    for i = 1, #tForbid do
        if tUser.sTag:find(tForbid[i],1,true) or tUser.sTag:find(tForbid[i],1,true) then
        Core.SendToUser(tUser, "<"..sBot.."> "..sWarn)  --  если не хотите никаких сообщений юзеру, то закомментите строку (спереди нарисуйте 2 знака минус --)
        Core.Disconnect(tUser)
        end
    end
end


Ошибок не выдаёт. Вот самый первый был норм. В самом верху темы. Но тот собака вообще всех блокировал

Автор: Nickolya 3.5.2010, 20:32

Попробуй второй из предложенных в http://mydc.ru/index.html?showtopic=3411&view=findpost&p=30074, может он будет работать, написан он по аналогии с тем что предлагали тебе первым.

Автор: valdis73 3.5.2010, 20:33

Спасибо. Попробую и отпишусь

Автор: Ksan 3.5.2010, 21:12

Оба скрипта рабочие. Я непроверенный скрипт не стал бы предлагать.
Если Птока 0.4.0.0, то давно пора заменить на 0.4.1* , иначе некоторые скрипты будут глючить.

Автор: valdis73 3.5.2010, 21:16

После ребута хаба (очень неудобно всё это было делать, т.к. никсовый стоит в офисе и приходиться для смены конфигов останавливать хаб извне).
Короче пришлось ребутнуть по причине того, что стояла галка "Нет проверки тега", для регов. Вот конфиги сменил и сработал скрипт Волка.

Вот этот скриптец

Код
sBot = SetMan.GetString(21)
sWarn = "Просьба сменить клиент на любой другой, чтоб Вы могли попасть на этот хаб."  -- можете тут написать люой текст

tForbid = {
    "TomilDC:8.6.5",
    "Tomilino.Net DC",
    "Tomilino",
--    "Tomil",   -- хотя можно просто одной этой строкой обойтись, если у других нормальных юзеров нет такого тэга
}

function MyINFOArrival(tUser, sData)
        for i = 1, #tForbid do
        if sData:find(tForbid[i],1,true) or sData:find(tForbid[i],1,true) then
--        Core.SendToUser(tUser, "<"..sBot.."> "..sWarn)  --  если  хотите отправить сообщение юзеру, то раскомментите строку (спереди удалите 2 знака минус --)
        Core.Disconnect(tUser)
        end
    end
end


За что всем участникам разбора этой проблемы очень благодарен.
Ksan отдельное спасибо и Nickolya за пояснение.

Цитата
Если Птока 0.4.0.0, то давно пора заменить на 0.4.1* , иначе некоторые скрипты будут глючить.

Да я бы заменил, но для этого нужно ехать в офис и теребить сервак линёвый. Те два виндовых хаба, что у меня дома, работают на новой птоке. А вот один в качестве запасного на хексе. Бывают гады срут по портам, птока начинает лагать. А хекс свободно это всё отшибает.

Автор: Ksan 4.5.2010, 0:34

Так, на будущее...тут принято тыкать на кнопку "Спасибо", если благодарен кому-то за помощь. big_smile.gif

Автор: valdis73 4.5.2010, 4:28

Как у нас на трекере)))