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

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

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

Автор: averon.nv 7.4.2011, 10:28

Всем привет!
Помогите сделать скрипт, который будет сообщать пользователю в отдельном окне описание того, что он может и не может делать в пассивном режиме при заходе на хаб - Это для тех, кто не читает правила и FAQ на странице.
P.S: Просьба сделать не запрет на вход, а просто доп.сообщение для информативности юзера-чайника.

Автор: Ksan 7.4.2011, 10:59

Пусть получает при входе через МОТД.
Зачем для такого пустяка писать скрипт?

И не по теме - зачем хаб только для пассивов?

Автор: Damaks 7.4.2011, 14:33

При заходе на хаб юзера в пассивном режиме ему отсылается сообщение в личку об этом. Отсылается для незарегистрированных и зарегистрированных.

Код
function ValidateNickArrival(user,data)
    if user.iProfile == -1 or user.iProfile == 3 then
    if Core.GetUserValue(user,0) == "P" then
        Core.SendPmToUser(user, SetMan.GetString(21), '***   Внимание, '..user.sNick..'!  Вы находитесь в пассивном режиме. Бла-бла-бла...')
        return true
    end
    return false
    end
end

Автор: Ksan 7.4.2011, 15:15

Damaks, обрати внимание в первом сообщении:

Цитата
...что он может и не может делать в пассивном режиме при заходе на хаб, который находится исключительно в пассивном режиме ...

Речь не о попытке заставить перейти в актив, а скорее даже наоборот, хаб-то для пассивов..

Автор: Damaks 7.4.2011, 17:17

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

Я по-моему нашёл решение: никого информировать ненужно. Т.к. всё равно качать никто ни с кого не сможет, то можно и не расфуфоливаться на дополнительные объяснения, назвать хаб "Просто чат".

Автор: Ksan 7.4.2011, 17:19

По-моему, проблема существует только в голове автора темы..

Автор: Andrean 7.4.2011, 17:20

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

Автор: Ksan 7.4.2011, 17:42

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

Автор: Damaks 8.4.2011, 7:35

Автор, отпишись, заинтриговал.

Автор: averon.nv 10.4.2011, 8:49

Вы о чем, какой еще хаб для «пассивных юзеров» - такое вообще бывает? big_smile.gif - обычный хаб.
Ок, попробую сформулировать по другому и лаконично.
Нужно сделать сообщение (описание сделаю сам, нужен скриптик, который будет отображать это), которое будет отображать в отдельном окне (Л/C) юзеру, который зашел «« только »» в пассивном режиме.
Когда заходят в пассивном режиме им ничего не пишется, поэтому многие потом задают множество вопросов почему у него к примеру «таймаут соединения», когда он пытается зайти к такому же пассиву. Еще раз - Это для тех, кто не читает правила и FAQ на странице.

Автор: Damaks 10.4.2011, 9:14

Ну так во втором сообщении как раз для тебя скрипт. Многострочное сообщение, думаю, разберёшся как сделать.

Автор: Ksan 10.4.2011, 11:57

Цитата из первого сообщения:

Цитата
на хаб, который находится исключительно в пассивном режиме

Трудно это как-то иначе понять, чем как написано. big_smile.gif

Автор: Setuper 10.4.2011, 19:35

Если все пользователи хаба в пассиве, то на таком хабе никто ни у кого не сможет ничего скачать. Это получается хаб только для чата big_smile.gif

Автор: Otshelnik-Fm 14.4.2011, 17:25

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

Автор: Артём 14.4.2011, 17:32

Otshelnik-Fm, первое сообщение читал? bad_smile.gif

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

Автор: valera_ 3.6.2013, 12:30

Извиняюсь, Помогите сделать работоспособность этого скрипта.
Скрипт пробовал конвертировать под API2 , безуспешно. Буду признателен

Код
function ValidateNickArrival(user,data)
    if user.iProfile == -1 or user.iProfile == 3 then
    if Core.GetUserValue(user,0) == "P" then
        Core.SendPmToUser(user, SetMan.GetString(21), '***   Внимание, '..user.sNick..'!  Вы находитесь в пассивном режиме. Бла-бла-бла...')
        return true
    end
    return false
    end
end

Автор: Ksan 3.6.2013, 12:54

valera_, этот скрипт и так под АПИ2 сделан.

И да, независимо от вопроса выше, в коде этого скриптика, думаю, лишняя строка

Код
return false

Автор: valera_ 3.6.2013, 14:26

Цитата(Ksan @ 3.6.2013, 13:54) *
И да, независимо от вопроса выше, в коде этого скриптика, думаю, лишняя строка
Код
return false


Убрал, без эмоций не ошибок ни ответа shocked.gif

Автор: Ksan 3.6.2013, 14:29

valera_, а как вы его проверяете?

Автор: valera_ 3.6.2013, 14:40

Цитата(Ksan @ 3.6.2013, 15:29) *
valera_, а как вы его проверяете?

ставлю пассивный режим и захожу выхожу

Автор: Ksan 3.6.2013, 15:21

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

Автор: valera_ 3.6.2013, 15:33

Цитата(Ksan @ 3.6.2013, 16:21) *
valera_, и с каким профилем это делаете?
Короче (я уже спать, поэтому не стану дожидаться вашего ответа), по скрипту сообщение получит только тот, кто либо незарегистрированный, либо регистрирован, но он простой юзер..

профилями - незарегистированным ,оператором, мастером пробывал

Автор: Артём 3.6.2013, 18:06

valera_, оператору и мастеру ничего и не придёт

Код
if user.iProfile == -1 or user.iProfile == 3 then

только унрег или рег

Автор: valera_ 3.6.2013, 18:58

Цитата(Артём @ 3.6.2013, 19:06) *
valera_, оператору и мастеру ничего и не придёт
Код
if user.iProfile == -1 or user.iProfile == 3 then

только унрег или рег

тоже пробывал. сервер на птохе 5.0.0.0 мож там библиотека до того новая что ей не все старые АПИ2 идут?

Автор: Артём 3.6.2013, 19:53

valera_,

Вот рабочий. big_smile.gif
Код
local tProfiles = {      -- 1 - нет информации, 0 - есть информация
   [0] = 1,      -- Мастер
   [1] = 1,      -- Оператор
   [2] = 1,      -- VIP
   [3] = 0,      -- Зарегистрированный пользователь
  [-1] = 0,      -- Незарегистрированный пользователь
}

function UserConnected(user,data)
    if tProfiles[user.iProfile] ==0 then
    if Core.GetUserData(user,0) ~= "P" then
        Core.SendPmToUser(user, SetMan.GetString(21), "***   Внимание, "..user.sNick.."!  Вы находитесь в пассивном режиме. Бля-бля-бля...")
        return true
        end
    end
end
RegConnected = UserConnected

Автор: valera_ 4.6.2013, 5:52

Артём, Ksan Дай Бог вам здоровья!