myDC.ru

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

 
 
Тема закрытаНачать новую тему

> ! Часто Задаваемые Вопросы !, Обязательно прочитать всем!!!

Теги
Setuper
сообщение 18.1.2009, 14:36
Сообщение #1


Lua-master
**************

Группа: Модераторы
Сообщений: 4 064
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1388 раз




В данной теме будут описываться часто задаваемые вопросы. Прежде чем писать очередной пост, посмотрите нету ли решения вашей проблему в этой теме!!!

Итак, поехали...

Где скачать хаб PtokaX?
Как сделать отсылку сообщения пользователю при входе на хаб?
Как прописать абсолютные пути?
Что такое MOTD или как установить сообщение при входе?
Как по команде сделать показ сообщения (например правил хаба)?
Как сделать контекстное меню для команды?
Как запретить скачивать и искать на хабе незарегистрированным?
Как запретить пользоваться чатом и личкой на хабе незарегистрированным?
Как написать функцию оповещения об ошибках скрипта?
Как запретить символы в нике для определённых профилей?
Как изменить выводимые в чат ники пользователей?
Как сделать действие по команде?
Как сделать приветствие с указанием времени суток?
Есть ли скрипт статистики скачивания на хабе?
Как сделать оповещение в ОпЧат о слишком большой шаре пользователя?
Как сделать ограничения действий или добавить исключения по профилям?
Как сделать ограничения действий или добавить исключения по никам пользователей?
Как установить/удалить/запустить PtokaX как службу?
Как сделать сообщение, которое будет выдаваться при входе на хаб(Перед надписями "Этот хаб работает ...")?


Спасибо сказали:
Go to the top of the page
+Quote Post
Setuper
сообщение 18.1.2009, 14:38
Сообщение #2


Lua-master
**************

Группа: Модераторы
Сообщений: 4 064
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1388 раз




Где скачать хаб PtokaX?

Читаем внимательно тут: http://mydc.ru/topic19.html


Спасибо сказали:
Go to the top of the page
+Quote Post
Setuper
сообщение 18.1.2009, 14:49
Сообщение #3


Lua-master
**************

Группа: Модераторы
Сообщений: 4 064
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1388 раз




Как сделать отсылку сообщения пользователю при входе на хаб?

Простейший код реализации отсылки сообщения в чат пользователю при входе:

API 2:
Код
local sMsg=[[
Ваше сообщение
(можно даже в несколько строк!)
]]

function UserConnected(tUser)
  Core.SendToUser(tUser,sMsg)
end
RegConnected=UserConnected
OpConnected=UserConnected


API 1:
Код
local sMsg=[[
Ваше сообщение
(можно даже в несколько строк!)
]]

function NewUserConnected(tUser)
  tUser:SendData(sMsg)
end
OpConnected=NewUserConnected


Простейший код реализации отсылки сообщения в приват пользователю при входе:

API 2:
Код
local sMsg=[[
Ваше сообщение
(можно даже в несколько строк!)
]]

function UserConnected(tUser)
  Core.SendPmToUser(tUser,"Бот",sMsg)
end
RegConnected=UserConnected
OpConnected=UserConnected


API 1:
Код
local sMsg=[[
Ваше сообщение
(можно даже в несколько строк!)
]]

function NewUserConnected(tUser)
  tUser:SendPM("Бот",sMsg)
end
OpConnected=NewUserConnected


Спасибо сказали:
Go to the top of the page
+Quote Post
Wariner
сообщение 18.1.2009, 14:53
Сообщение #4


Младший Админ
************

Группа: Модераторы
Сообщений: 2 901
Регистрация: 29.6.2008
Из: г. Тула
Пользователь №: 97
Спасибо сказали: 390 раз




Как прописать абсолютные пути?

Для API 2:
Код
sFile = Core.GetPtokaXPath().."scripts/папка/файл"


Для API 1:
Код
sFile = frmHub:GetPtokaXLocation().."scripts/папка/файл"


Спасибо сказали:
Go to the top of the page
+Quote Post
Setuper
сообщение 18.1.2009, 15:14
Сообщение #5


Lua-master
**************

Группа: Модераторы
Сообщений: 4 064
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1388 раз




Что такое MOTD или как установить сообщение при входе?

MOTD - это сокращение от Message Of The Day. Переводится как "Сообщение дня". Показывается при входе на хаб. Для старых версий PtokaX устанавливается на первой вкладке. Для новых версий устанавливается в настройках. Для отсылки данного сообщения в приват нужно установить галочку: "Отправлять сообщение дня в приват".


Спасибо сказали:
Go to the top of the page
+Quote Post
Setuper
сообщение 18.1.2009, 15:29
Сообщение #6


Lua-master
**************

Группа: Модераторы
Сообщений: 4 064
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1388 раз




Как по команде сделать показ сообщения (например правил хаба)?

1. Открываем папку, где располагается файл PtokaX.exe, и заходим в папку texts.
2. Создаём в этой папке текстовый файл.
3. Переименовываем этот файл (например в имя rules.txt)
4. Открываем его, и пишем сообщение (например правила хаба)
5. Ищем в настройках хаба настройку: "Включить текстовые файлы" (В старых версиях настройка находится во вкладке "Настройки" справа. В новых версиях в "основных настройках" - "Больше настроек"). Там же можно (если необходимо) установить отправку этого сообщения в приват.
6. Для старых версий там же в настройках нужно перезагрузить текстовые файлы (или просто воспользоваться командой в чат !reloadtxt).

Всё готово и по команде !rules можно будет увидеть правила хаба.

Таким образом можно создать любые текстовые сообщения по команде. Например, можно сделать правила, сайты, хабы сети, информацию для операторов и тд. и тп.


Спасибо сказали:
Go to the top of the page
+Quote Post
Setuper
сообщение 18.1.2009, 15:41
Сообщение #7


Lua-master
**************

Группа: Модераторы
Сообщений: 4 064
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1388 раз




Как сделать контекстное меню для команды?

Допустим, у вас есть команда !rules, по которой показываются правила хаба, команда !hubs, по которой показываются хабы сети и команда !radio, по которой показываются транслируемые через сеть радиостанции. Вы хотите, чтобы эти команды можно было вызывать из контекстного меню хаба.

API 2:
Код
function UserConnected(tUser)
  Core.SendToUser(tUser,"$UserCommand 1 3 Меню хаба\\Правила хаба$<%[mynick]> !rules&#124;|"..
  "$UserCommand 1 3 Меню хаба\\Хабы-друзья$<%[mynick]> !hubs&#124;|"..
  "$UserCommand 1 3 Меню хаба\\Сетевое радио$<%[mynick]> !radio&#124;|")
end
RegConnected,OpConnected=UserConnected,UserConnected


API 1:
Код
function NewUserConnected(tUser)
  tUser:SendData("$UserCommand 1 3 Меню хаба\\Правила хаба$<%[mynick]> !rules&#124;|"..
  "$UserCommand 1 3 Меню хаба\\Хабы-друзья$<%[mynick]> !hubs&#124;|"..
  "$UserCommand 1 3 Меню хаба\\Сетевое радио$<%[mynick]> !radio&#124;|")
end
OpConnected=NewUserConnected


Спасибо сказали:
Go to the top of the page
+Quote Post
Setuper
сообщение 7.2.2009, 22:04
Сообщение #8


Lua-master
**************

Группа: Модераторы
Сообщений: 4 064
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1388 раз




Как запретить скачивать и искать на хабе незарегистрированным?

Код
local sMsg="Вы не зарегистрированы. Пользоваться поиском и скачивать запрещено!"
function ConnectToMeArrival(tUser)
  if tUser.iProfile==-1 then
    if Core then
      Core.SendToUser(tUser,sMsg)
    else
      tUser:SendData(sMsg)
    end
    return true
  end
end
RevConnectToMeArrival,SearchArrival=ConnectToMeArrival,ConnectToMeArrival


Спасибо сказали:
Go to the top of the page
+Quote Post
Setuper
сообщение 8.2.2009, 19:41
Сообщение #9


Lua-master
**************

Группа: Модераторы
Сообщений: 4 064
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1388 раз




Как написать функцию оповещения об ошибках скрипта?

Код
function OnError(s)
  local h=io.open("errors.log","a+")
  if h then
    h:write(os.date()..": "..s.."\r\n")
    h:close()
  end
  if Core then
    Core.SendToOpChat(s)
  else
    SendToOpChat(s)
  end
end


Спасибо сказали:
Go to the top of the page
+Quote Post
Setuper
сообщение 28.2.2009, 18:48
Сообщение #10


Lua-master
**************

Группа: Модераторы
Сообщений: 4 064
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1388 раз




Как запретить пользоваться чатом и личкой на хабе незарегистрированным?

API2:
Код
local sMsg=[[Сообщение о недоступности чата и лички незарегистрированному]]
function ChatArrival(tUser)
  if tUser.iProfile == -1 then
    Core.SendToUser(tUser,sMsg)
    return true
  end
end
ToArrival=ChatArrival


API1:
Код
local sMsg=[[Сообщение о недоступности чата и лички незарегистрированному]]
function ChatArrival(tUser)
  if tUser.iProfile == -1 then
    tUser:SendData(sMsg)
    return 1
  end
end
ToArrival=ChatArrival


Спасибо сказали:
Go to the top of the page
+Quote Post
Setuper
сообщение 7.3.2009, 3:41
Сообщение #11


Lua-master
**************

Группа: Модераторы
Сообщений: 4 064
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1388 раз




Как запретить символы в нике для определённых профилей?

Код
tSmbs={
   [0]="",  -- Master
   [1]="",  -- Operator
   [2]="[®™]",  -- Vip
   [3]="[®™]",  -- Reg
   [-1]="[®™]",  --UnReg
}
tBeginSmbs={    -- хотя цифры (одну) можно записать как %d
   [0]="",  -- Master
   [1]="",  -- Operator
   [2]="[1234567890]",  -- Vip
   [3]="[%[%]%!]",  -- Reg    -- запрет []! в самом начале ника (1 символ)
   [-1]="[%.@]",  --UnReg    -- запрет .@
}

function UserConnected(tUser)
    local sSmb=tBeginSmbs[tUser.iProfile]
    if sSmb and string.find(tUser.sNick,"^("..sSmb..")") then
        Core.SendToUser(tUser,"*** Украшения в никах запрещены!")
        Core.Disconnect(tUser)
    end
    sSmb=tSmbs[tUser.iProfile]
    if sSmb and string.find(tUser.sNick,"("..sSmb..")") then
        Core.SendToUser(tUser,"*** Украшения в никах запрещены!")
        Core.Disconnect(tUser)
    end
end
RegConnected=UserConnected
OpConnected=UserConnected


Спасибо сказали:
Go to the top of the page
+Quote Post
Setuper
сообщение 7.3.2009, 3:43
Сообщение #12


Lua-master
**************

Группа: Модераторы
Сообщений: 4 064
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1388 раз




Как изменить выводимые в чат ники пользователей?

Код
tNames = {
  ["Вася"] = "Барабас",
  ["Петя"] = "Гондурас",
}
    
function ChatArrival(tUser, sData)
  if tNames[tUser.sNick] then
    Core.SendToAll("<"..tNames[tUser.sNick].."> "..sData:sub(tUser.sNick:len()+4, -2))
    return true
  end
end


Спасибо сказали:
Go to the top of the page
+Quote Post
Wariner
сообщение 9.3.2009, 11:46
Сообщение #13


Младший Админ
************

Группа: Модераторы
Сообщений: 2 901
Регистрация: 29.6.2008
Из: г. Тула
Пользователь №: 97
Спасибо сказали: 390 раз




Как сделать действие по команде?

Код
function ChatArrival(tUser, sData)
  local cmd = sData:match"%b<>%s+(%S+).*|"
  if cmd == "!команда" then
    -- здесь вписываем то, что должно происходить по команде!
    return true
  end    
end

Код одинаков для обих API единственное различие что в конце команды под API 2 надо писать return true, а под API 1 - return 1


Спасибо сказали:
Go to the top of the page
+Quote Post
Setuper
сообщение 19.3.2009, 15:35
Сообщение #14


Lua-master
**************

Группа: Модераторы
Сообщений: 4 064
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1388 раз




Как сделать приветствие с указанием времени суток?

Код
function UserConnected(tUser)
  local iHour, sMsg = tonumber(os.date"%H"), tUser.sNick..". Добро пожаловать на хаб!"
  if iHour >= 5 and iHour < 12 then
    Core.SendToUser(tUser, ("Доброе утро %s"):format(sMsg))
  elseif iHour >= 12 and iHour < 18 then
    Core.SendToUser(tUser, ("Добрый день %s"):format(sMsg))
  elseif iHour >= 18 and iHour <= 23 then
    Core.SendToUser(tUser, ("Добрый вечер %s"):format(sMsg))
  else
    Core.SendToUser(tUser, ("Доброй ночи %s"):format(sMsg))
  end
end
RegConnected, OpConnected = UserConnected, UserConnected


Спасибо сказали:
Go to the top of the page
+Quote Post
Wariner
сообщение 27.5.2009, 9:49
Сообщение #15


Младший Админ
************

Группа: Модераторы
Сообщений: 2 901
Регистрация: 29.6.2008
Из: г. Тула
Пользователь №: 97
Спасибо сказали: 390 раз




Есть ли скрипт статистики скачивания на хабе?

Нет, такой скрипт невозможно реализовать из-за того что скачка идёт напрямую между клиентами не затрагивая хаб.
Поэтому невозможно создать скрипт статистики не на количество скачиваемого не на то что скачивают(названия файлов)!!!


Спасибо сказали:
Go to the top of the page
+Quote Post
Setuper
сообщение 9.8.2009, 14:30
Сообщение #16


Lua-master
**************

Группа: Модераторы
Сообщений: 4 064
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1388 раз




Как сделать оповещение в ОпЧат о слишком большой шаре пользователя?

Код
local iShareLimit = 15 * 0x100000 * 0x100000 -- 15 ТБ
local sReport = "Подозрительно большая шара у пользователя: "

function MyINFOArrival(tUser, sData)
  Core.GetUserData(tUser, 16)
  if tUser.iShareSize >= iShareLimit then
    Core.SendToOpChat(sReport..tUser.sNick.." ["..tUser.sIP.."]. Шара: "..tUser.iShareSize)
  end
end


Спасибо сказали:
Go to the top of the page
+Quote Post
Wariner
сообщение 1.11.2009, 11:21
Сообщение #17


Младший Админ
************

Группа: Модераторы
Сообщений: 2 901
Регистрация: 29.6.2008
Из: г. Тула
Пользователь №: 97
Спасибо сказали: 390 раз




Как сделать ограничения действий или добавить исключения по профилям?

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

затем в куске кода который надо ограничить пишем
Код
if tProfiles[tUser.iProfile] == 1 then
     -- кусок кода
end


Кусок кода будет выполнятся только для того профиля для которого в таблице tProfiles стоит еденичка!


Спасибо сказали:
Go to the top of the page
+Quote Post
Accelerator
сообщение 8.6.2010, 19:47
Сообщение #18


Developer
******

Группа: Модераторы
Сообщений: 542
Регистрация: 11.11.2008
Из: Челябинск
Пользователь №: 1 075
Спасибо сказали: 216 раз




Как сделать ограничения действий или добавить исключения по никам пользователей?

Создаём таблицу с никами
Код
local tNicks = {
    ["Вася"] = 1, -- Васе доступно использование команды (т.к. значение = 1)
    ["Петя"] = 0, -- Пете использование команды не доступно (т.к. значение = 0)
}

затем в куске кода который надо ограничить пишем
Код
if tNicks[tUser.sNick] == 1 then
     -- код
else
Core.SendToUser(tUser, "<"..SetMan.GetString(21).."> Использование команды для вас не доступно!")
end


Спасибо сказали:
Go to the top of the page
+Quote Post
alex82
сообщение 24.7.2010, 13:23
Сообщение #19


Scripter
*******

Группа: Модераторы
Сообщений: 793
Регистрация: 26.12.2008
Из: Одесса
Пользователь №: 1 574
Спасибо сказали: 1029 раз




Как установить/удалить/запустить PtokaX как службу?

Консольная версия PtokaX прекрасно умеет устанавливать себя как системную службу.

  • Установка сервиса:
    Код
    PtokaX.exe -i "имя сервиса"
    Аналог:
    Код
    PtokaX.exe /install "имя сервиса"
  • Удаление сервиса:
    Код
    PtokaX.exe -u "имя сервиса"
    Аналог:
    Код
    PtokaX.exe /uninstall "имя сервиса"
  • Запуск сервиса:
    Код
    PtokaX.exe -s "имя сервиса"
    Аналог:
    Код
    PtokaX.exe /service "имя сервиса"
  • Установка конфиг директории:
    Код
    PtokaX.exe -c "абсолютный путь до директории"
  • Получение версии:
    Код
    PtokaX.exe -v
    Аналог:
    Код
    PtokaX.exe /version
  • Помощь по командам:
    Код
    PtokaX.exe -h
    Аналог:
    Код
    PtokaX.exe /help
  • Отключение проверки ключа в $Key команде:
    Код
    PtokaX.exe /nokeycheck


Примеры:

Конфигурирование директории и установка сервиса:
Код
"C:\Program Files\PtokaX\PtokaX.exe" -c "C:\PtokaX\" -i "PtokaX"

Удаление сервиса:
Код
"C:\Program Files\PtokaX\PtokaX.exe" -u "PtokaX"


Для запуска и остановки службы можно также использовать консольную программу NET, входящую в состав Windows. Команда запуска службы:
Код
NET START PtokaX

Команда остановки:
Код
NET STOP PtokaX


Спасибо сказали:
Go to the top of the page
+Quote Post
Accelerator
сообщение 10.6.2011, 17:28
Сообщение #20


Developer
******

Группа: Модераторы
Сообщений: 542
Регистрация: 11.11.2008
Из: Челябинск
Пользователь №: 1 075
Спасибо сказали: 216 раз




Как сделать сообщение, которое будет выдаваться при входе на хаб(Перед надписями "Этот хаб работает ...")?

Код
local sMsg = "Пожалуйста, подождите, идёт загрузка хаба..." -- сообщение, выдаваемое при входе на хаб

function ValidateNickArrival(tUser, sData)
       Core.SendToUser(tUser, sMsg)
end


Спасибо сказали:
Go to the top of the page
+Quote Post

Тема закрытаНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

Collapse

> Похожие темы

  Тема Ответов Автор Просмотров Последнее сообщение
No new Topic has attachmentsВопросы по RusHub
Технические вопросы
292 Jaska 29 196 15 минут назад Посл. сообщение: Saymon21
No New Posts ВАЖНО: Topic has attachmentsВопросы Разработчикам Скриптов
вопросы по скриптам (мелкие вопросы)
1 052 Wariner 135 910 15.5.2012, 18:19 Посл. сообщение: MIKHAIL
No new ВАЖНО: Topic has attachmentsВаши Вопросы И Предложения По Поводу Форума
413 Svyat 57 880 29.2.2012, 15:41 Посл. сообщение: Nickolya
No New Posts От: Вопросы Разработчикам Скриптов
От темы с ID: 173
0 AirKobra45 156 21.2.2012, 13:32 Посл. сообщение: AirKobra45
No New Posts От: Вопросы Разработчикам Скриптов
От темы с ID: 173
0 AirKobra45 142 19.2.2012, 11:11 Посл. сообщение: AirKobra45
No new Topic has attachmentsМелкие вопросы
42 Wariner 5 107 8.1.2012, 3:10 Посл. сообщение: Alexey
No New Posts От: Вопросы по RusHub
От темы с ID: 2902
0 Mangust 254 19.10.2011, 10:23 Посл. сообщение: Mangust
No New Posts От: Ваши Вопросы И Предложения По Поводу Форума
От темы с ID: 753
0 AntonRibin868 560 13.4.2011, 5:46 Посл. сообщение: AntonRibin868
No New Posts PtokaX часто зависает
9 Ares 2 250 4.3.2011, 1:58 Посл. сообщение: mod
No New Posts От: Вопросы по RusHub
От темы с ID: 2902
0 Midgard 617 3.3.2011, 2:56 Посл. сообщение: Midgard
No New Posts От: Вопросы Разработчикам Скриптов
От темы с ID: 173
2 AirKobra45 584 1.3.2011, 22:54 Посл. сообщение: AirKobra45
No New Posts От: Вопросы Разработчикам Скриптов
От темы с ID: 173
0 AirKobra45 529 13.2.2011, 14:45 Посл. сообщение: AirKobra45
No New Posts От: Ваши Вопросы И Предложения По Поводу Форума
От темы с ID: 753
0 Ksan 693 26.12.2010, 18:39 Посл. сообщение: Ksan
No New Posts От: Задаем Вопросы
От темы с ID: 399
3 теньь 93 19.12.2010, 23:28 Посл. сообщение: Cost-iron
No New Posts От: Вопросы Разработчикам Скриптов
От темы с ID: 173
0 Setuper 611 19.12.2010, 16:17 Посл. сообщение: Setuper

 



RSS Сейчас: 22.5.2012, 16:18