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

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

MyDC.ru _ Служебные скрипты [PtokaX] _ NoLimit 1.3

Автор: Nickolya 12.1.2010, 23:00

Версия скрипта: 1.3
Версия API: скрипт универсальный

Скрипт запрета определенных ограничений, проверяет тег юзера на ограничение и если оно меньше заданного - отключает юзера с сообщением в приват. Ограничения можно настроить для каждого профиля отдельно.

Код
    -- Минимальное нижнее ограничение на отдачу в кб для каждого профиля в локальном диапазоне:
    tProfileLimits = {
        [0] = 0,        -- Администратор
        [1] = 10,        -- Оператор
        [2] = 150,        -- VIP
        [3] = 50,    -- Зарегистрированный пользователь
        [-1] = 50,    -- Незарегистрированный пользователь
    }
    
    -- Таблица с локальными диапазонами:
    tLocalArea = {
        {"10.0.0.0", "10.255.255.255"},
        {"109.86.0.0", "109.87.255.255"},
        {"80.73.0.0", "80.73.255.255"},
        {"178.150.0.0", "178.151.255.255"},
    }
    
    -- Минимальное нижнее ограничение на отдачу в кб для каждого профиля во всех остальных диапазонах:
    tInetProfileLimits = {
        [0] = 0,        -- Администратор
        [1] = 10,        -- Оператор
        [2] = 150,        -- VIP
        [3] = 50,    -- Зарегистрированный пользователь
        [-1] = 50,    -- Незарегистрированный пользователь
    }


Изменения с версии 1.3: добавлены локальные диапазоны и отдельная таблица ограничений для всех остальных диапазонов, исправлены старые ошибки
Изменения с версии 1.2: добавлено апи 2 и обновлена http://mydc.ru/index.html?showtopic=334&view=findpost&p=9085

Старая версия
 NoLimit_1.2.lua ( 2.51 килобайт ) : 85


 NoLimit_1.3.lua ( 4.44 килобайт ) : 78
 

Автор: knuckles 13.1.2010, 8:42

у меня скрипт чо то непашет ???
как его можно про тестить подскажите ???

Автор: Артём 13.1.2010, 8:47

Цитата(knuckles @ 13.1.2010, 7:42) *
как его можно про тестить подскажите ???

Поставь ограничения в дс и зайди под
Код
[2] = 512, -- VIP
, пустит значит не работает или неправильно поставил ограничения

Автор: knuckles 13.1.2010, 8:59

Цитата(Артём @ 13.1.2010, 10:47) *
Поставь ограничения в дс и зайди под
Код
[2] = 512, -- VIP
, пустит значит не работает или неправильно поставил ограничения

Я поставил на 512 клб и всёравно качаеть по 10мб/сек и выше )))
У нас просто локалка самая маленьная скорость 3мб /cек, самая максимальная скорость отдачи 20-30 мб.сек

Автор: Артём 13.1.2010, 9:21

Ограничения в дс ставятся ... Настройки ==> Ограничения скорости
плохо менял)))

Цитата
[08:20:37] <PtokaX> *** пердун, ваше ограничение скорости на отдачу имеет слишком маленький размер! Минимальная скорость отдачи для вашего профиля - 4096 Кб/с, ваша - 2 Кб/с.
[08:20:37] *** Юзер ушёл [PtokaX] ***

big_smile1.gif

Автор: knuckles 13.1.2010, 10:23

Цитата(Артём @ 13.1.2010, 11:21) *
Ограничения в дс ставятся ... Настройки ==> Ограничения скорости
плохо менял)))

big_smile1.gif

Всё спасибо получилось сделать ограничения ...)))
Просто я вначале нетак понял....


Автор: ЕВГЕНЧИК 14.1.2010, 1:15

Скрипт не работает, ставил 100 кб и 10 кб в клиенте ограничение, и ни какого эффекта не было. Даже ограничивал скорость для администратора, тоже самое, ни какого эффекта. Хотя скриптик очень нужный, особенно для малых локальных сетей, где сидит много крыс, которые новинки качать любят, а отдавать не хотят, ограничивая скорость до минимума. Очень жаль что не пашет. :(

Автор: Alexey 14.1.2010, 7:27

Ошибки какие-нибудь пишет?

Автор: Nickolya 14.1.2010, 12:59

Какая версия хаба, есть ли ошибки, какой тег у твоего клиента с ограничением и так далее, рассказывай. Просто возможно я криво сделал сочетание апи 1 и 2...

Автор: Setuper 14.1.2010, 14:03

Я уже упоминал где-то, что функция коррекции тэга работает для подавляющего большинства клиентов, но к сожалению есть клиенты с другой структурой тэгов, для которых функция коррекции не применима и должна вызвать ошибку в скрипте.
http://mydc.ru/index.html?showtopic=915&view=findpost&p=6721

Автор: ЕВГЕНЧИК 14.1.2010, 21:02

Извеняюсь, это я видимо ступил, я так понял он не срабатывает из-за того, что я пользуюсь Грейлинком. Просто почитал на некоторых форумах, что он там шифрует практически всё на свете и создаёт фейковую шару. Хаб у меня Птока 0.4.1.2 secret_smile.gif

Автор: Angel_D 21.1.2010, 14:41

просьба / предложение по скрипту - добавить настройку ограничений для разный диапозонов IP.
К примеру, у меня на хабе есть подключенные по LAN - с них имеет смысл требовать не меньше 1 м/с
есть на DOCSIS модемах - с этих несчастных выше 64кб/с требовать негуманно...

Автор: Satib 22.2.2010, 8:50

Сори если уже было, но есть ли скрипт в котором были бы ограничения на режим, тип соединения? или в этом скрипте как то можно поставить?

Автор: Nickolya 23.2.2010, 15:14

По-моему тип соединения выставленный в клиенте не влияет ни на что, а про скрипт запрета какого-либо режима не знаю...

Автор: thehawk 25.2.2010, 22:44

А возможно сделать так, чтобы пользователь вообще на Хаб не попадал (если не проходит проверку)? Т.е. сообщение о маленькой скорости выводилось сразу же при подключении. Например так:

Код
[21:41:20] *** Соединение с xx.xx.xx.xx...
[21:41:20] *** Соединён.
[21:41:20] *** *** defv, ваше ограничение скорости на отдачу имеет слишком маленький размер! Минимальная скорость отдачи для вашего профиля - 4096 Кб/с, ваша - 3072 Кб/с.
[21:41:21] *** Соединение закрыто

Автор: Saymon 25.2.2010, 22:54

Попробуй замени
function UserConnected
на
function ValidateNickArrival

Автор: thehawk 25.2.2010, 23:06

Цитата(Saymon @ 25.2.2010, 21:54) *
Попробуй замени
function UserConnected
на
function ValidateNickArrival

Что-то не получается, тогда просто скрипт не срабатывает.

Автор: Saymon 25.2.2010, 23:14

Хм... Странно, и правда. Извиняюсь shame.gif
Функция function ValidateNickArrival - отсылается перед подключением на хаб.

Автор: Kingston 26.2.2010, 5:15

Цитата(thehawk @ 26.2.2010, 5:44) *
А возможно сделать так, чтобы пользователь вообще на Хаб не попадал (если не проходит проверку)? Т.е. сообщение о маленькой скорости выводилось сразу же при подключении. Например так:
Код
[21:41:20] *** Соединение с xx.xx.xx.xx...
[21:41:20] *** Соединён.
[21:41:20] *** *** defv, ваше ограничение скорости на отдачу имеет слишком маленький размер! Минимальная скорость отдачи для вашего профиля - 4096 Кб/с, ваша - 3072 Кб/с.
[21:41:21] *** Соединение закрыто

Попробуй в самый вверх поместить с списке скриптов.

Автор: Nickolya 26.2.2010, 11:19

Лимит узнается только тогда когда юзер отправит строку майинфо, в принципе все будет так как вы хотите если заменить

Код
    if tCurUser.bConnected then
        CheckLimit(tCurUser)
    end
на
Код
    CheckLimit(tCurUser)

Автор: thehawk 26.2.2010, 22:32

Работает просто супер, ещё для себя сделал чтобы не в личку выводило, а в общий чат, и теперь всё ОК.
Вот ещё бы добавить, чтобы проверяло ограничение которое многие выставляют здесь: Фаил->настройки->Скорость отдачи. У нас локальная сеть, а у многих стоит модемная скорость.

Автор: Артём 12.4.2010, 1:22

Цитата
NoLimit_1.2.lua:33: attempt to compare nil with number

помогите исправить big_smile.gif

Автор: Trans 12.4.2010, 4:10

1. Сначала про синтаксис...Разве тут не должно быть
<= вместо <
?

Код
if Limit < iCurProfileLimit and Limit ~= 0 then

2. Может, ограничения вообще нет у юзера? и Limit == nil
Тогда в строке 33 сравнивается nil с числом из таблицы ограничений для профилей.
Я скрипт не ставил, но при первом взгляде возникли такие вопросы.

Автор: Артём 12.4.2010, 9:38

Цитата(Trans @ 12.4.2010, 4:10) *
1. Сначала про синтаксис...Разве тут не должно быть
<= вместо <
?
Код
if Limit < iCurProfileLimit and Limit ~= 0 then

ту же ошибку выдаёт

Автор: Nickolya 12.4.2010, 16:28

Замените

Код
    local Limit = tCurUser.iLlimit
на
Код
    local Limit = tCurUser.iLlimit or false
    if not Limit then
        return
    end

Автор: Nickolya 27.4.2010, 15:12

Обновил скрипт в 1 сообщении, добавлены локальные диапазоны и таблица ограничений для тех кто не входит в эти диапазоны.

Автор: Yamakasi 10.2.2013, 22:21

Привет, есть такой вопрос, я поставил ограничение на 768, но как я заметил 2 пользователя умудрились проставить в ручном режиме меньше чем я установил!!!
вот скрин: http://mydc.ru/r/?http://i065.radikal.ru/1302/3b/ba310d7f7d8e.jpg
как видно над и под выставились юзеры вручную ограничение заданно правилам, а те которые чёрным подметил, они нагло как то обошли настройки, стоит данный скрипт, кто что скажет или подскажет, что нужно дописать, чтобы всё ок работало!?

Автор: Артём 10.2.2013, 23:35

Yamakasi, а причём здесь описание и ограничения по отдаче?

Автор: Yamakasi 11.2.2013, 0:47

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

Автор: Alexey 11.2.2013, 1:37

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

Автор: Артём 11.2.2013, 3:10

Alexey, 2й год пошёл, а они не хотят это исправлять, типа "не влияет на работу и нормально", а остальное проблемы одминов :(

Автор: Yamakasi 11.2.2013, 20:51

Alexey, Артём, попробую написать им тоже...
точнее ветку не подскажите где там у них писать, или им через фидбек писать?

Автор: Артём 11.2.2013, 21:03

Yamakasi, на http://mydc.ru/r/?http://flylinkdc.com/forum/ флая, я им писал ещё в 2011 году, но они игнорируют, а точнее пообещали посмотреть, но так и не исправили.