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

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

MyDC.ru _ Запросы скриптов для PtokaX _ Редирект по времени

Автор: Exodus 10.5.2010, 17:01

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

Автор: Ksan 10.5.2010, 18:48

Редирект только приходящих или тех тоже, кто уже сидит в хабе?

Автор: Exodus 10.5.2010, 23:49

Только приходящих и только по шаре.

Автор: Nickolya 20.5.2010, 12:11

Если еще актуально - вот, набросал по-быстрому:

Код
-- Профили для перенаправления:
tRedirectProfiles = {
    [3] = true,
    [-1] = true,
}

-- Таблица редиректов:
tRedirects = {
    "mydc.ru", "localhost",
}

-- Время в секундах на смену сервера
iChangeTime = 1*60*60

-- Минимальная для входа шара, в байтах:
iMinShare = 100*1024^3    -- 100 Gb

-- Причина редиректа:
sRedirectReason = "Маленькая шара, минимальная шара - 100 Гигабайт!"

function OnStartup()
    iTimeToChange = os.time() + iChangeTime
    iRedirectHub = 1
end

function UserConnected(tUser)
    if tRedirectProfiles[tUser.iProfile] and (Core.GetUserValue(tUser, 16) or 0) < iMinShare then
        if os.time() > iTimeToChange then
            iTimeToChange = os.time() + iChangeTime
            iRedirectHub = iRedirectHub + 1
            if not tRedirects[iRedirectHub] then
                iRedirectHub = 1
            end
        end
        Core.Redirect(tUser, tRedirects[iRedirectHub], sRedirectReason)
        Core.Disconnect(tUser)
    end
end
RegConnected = UserConnected
OpConnected = UserConnected