script-manager, Скрипт управления скриптами |
Здравствуйте, гость ( Вход | Регистрация )
script-manager, Скрипт управления скриптами |
11.8.2010, 11:50
Сообщение
#1
|
|
Site Reliability Engineer Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз |
script-manager - Это скрипт для управления скриптами на хабе RusHub.
Версия: 0.2 Лицензия GNU GPLv3. Автор: Saymon21 Локализация: Завит от настройки хаба и доп. файлов локализации. В дистрибутиве доступны Русская и Английская. Описание команд:
Кстати. Писать имя скрипта с окончанием .lua не обязательно. Для всех команд можно использовать параметр -h для получения справки по использованию. Пример Цитата !lsscript -h Цитата [20:59:13] <RusHub> NAME: !lsscript SYNOPSIS: lsscript [ -h ] [ scriptname ] DESCRIPTION: lsscript - command to show information for script(s). If [ scriptname ] not specified, shows information about all the scripts. OPTIONS: -h Show this help EXAMPLE USAGE: !lsscript test2.lua - show info for one scripts. !lsscript - show info for all scripts SEE ALSO: !startscript, !stopscript, !movedownscript, !moveupscript, !restartscript Скачать: rushub_script_manager.tar ( 20 килобайт ) Кол-во скачиваний: 19 Так-же можно скачать скрипт с репозитория: В архиве есть папка lang. Всё её содержимое должно быть помещено туда, куда в конфиге хаба указан путь до языковых файлов. |
|
|
17.3.2013, 21:21
Сообщение
#2
|
|
Site Reliability Engineer Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз |
Обновлён в первом посте.
Полностью переписан, убрано меню управления скриптами. Проделан небольшой шаг на убиение подобных жалоб. (Sorry for my bad english. ). Так-же свежая версия выложена на Приделать файл локализации. Дабы не лазить по коду, если нужно будет перевести на какой нить другой язык. Пока после обновления интерфейс скрипта - инглиш онли. |
|
|
20.3.2013, 0:27
Сообщение
#3
|
|
Site Reliability Engineer Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз |
Обновлено.
Основные измениения: небольшой рефакторинг и теперь есть файлы локализации. Подробности в первом посте. |
|
|
21.3.2013, 0:56
Сообщение
#4
|
|
Продвинутый участник Группа: Пользователи Сообщений: 189 Регистрация: 20.4.2009 Пользователь №: 3 121 Спасибо сказали: 12 раз |
Саймон а в чем разница между тем что уже есть под русхаб, управление скриптами ?
Скрипт local sBotName,sScriptsDir,sHubName,sLuaPluginVersion,HubPath = "#S.T.K#",Core.sScriptsDir,Config.sHubName,Core.sLuaPluginVersion,Core.sMainDir AdminMenu = ".:: Меню Администрации ::.\\.:: Скрипты ::." Prefix = "!" local Access = { [0] = 1, [1] = 0, [2] = 0, [3] = 0, [-1] = 0, } function OnStartup() if sBotName == "" then sBotName = Config.sHubBot end end function OnUserEnter(UID) if Access[UID.iProfile] == 1 then Core.SendToUser(UID,"$UserCommand 0 3") Core.SendToUser(UID,"$UserCommand 1 3 "..AdminMenu.."\\.:: Дополнительно ::.\\.:: Посмотреть список ::.$<%[mynick]> "..Prefix.."showlua|") Core.SendToUser(UID,"$UserCommand 1 3 "..AdminMenu.."\\.:: Дополнительно ::.\\.:: Показать статус скрипта (Ввести название) ::.$<%[mynick]> "..Prefix.."lua_get_info %[line:Имя файла с расширением]|") Core.SendToUser(UID,"$UserCommand 1 3 "..AdminMenu.."\\.:: Дополнительно ::.\\.:: Перезапустить скрипты ::.$<%[mynick]> "..Prefix.."reload_all_lua|") Core.SendToUser(UID,"$UserCommand 0 3") Core.SendToUser(UID,"$UserCommand 1 3 "..AdminMenu.."\\.:: Дополнительно ::.\\.:: Перезапуск (Ввести название) ::.$<%[mynick]> "..Prefix.."reloadlua %[line:Имя файла с расширением]|") Core.SendToUser(UID,"$UserCommand 1 3 "..AdminMenu.."\\.:: Дополнительно ::.\\.:: Старт (Ввести название) ::.$<%[mynick]> "..Prefix.."luastart %[line:Имя файла с расширением]|") Core.SendToUser(UID,"$UserCommand 1 3 "..AdminMenu.."\\.:: Дополнительно ::.\\.:: Стоп (Ввести название) ::.$<%[mynick]> "..Prefix.."luastop %[line:Имя файла с расширением]|") Core.SendToUser(UID,"$UserCommand 1 3 "..AdminMenu.."\\.:: Дополнительно ::.\\.:: Сдвинуть вверх (Ввести название) ::.$<%[mynick]> "..Prefix.."luaup %[line:Имя файла с расширением]|") Core.SendToUser(UID,"$UserCommand 1 3 "..AdminMenu.."\\.:: Дополнительно ::.\\.:: Сдвинуть вниз (Ввести название) ::.$<%[mynick]> "..Prefix.."luadown %[line:Имя файла с расширением]|") Core.SendToUser(UID,"$UserCommand 0 3") tScripts = Core.GetScripts() for script in pairs(tScripts) do local Script = tScripts[script].sName Core.SendToUser(UID,"$UserCommand 1 3 "..AdminMenu.."\\"..Script.."\\.:: Перезапуск ::.$<%[mynick]> "..Prefix.."reloadlua "..Script.."|") Core.SendToUser(UID,"$UserCommand 1 3 "..AdminMenu.."\\"..Script.."\\.:: Показать информацию ::.$<%[mynick]> "..Prefix.."lua_get_info "..Script.."|") Core.SendToUser(UID,"$UserCommand 1 3 "..AdminMenu.."\\"..Script.."\\.:: Старт ::.$<%[mynick]> "..Prefix.."luastart "..Script.."|") Core.SendToUser(UID,"$UserCommand 1 3 "..AdminMenu.."\\"..Script.."\\.:: Стоп ::.$<%[mynick]> "..Prefix.."luastop "..Script.."|") Core.SendToUser(UID,"$UserCommand 1 3 "..AdminMenu.."\\"..Script.."\\.:: Сдвинуть вверх ::.$<%[mynick]> "..Prefix.."luaup "..Script.."|") Core.SendToUser(UID,"$UserCommand 1 3 "..AdminMenu.."\\"..Script.."\\.:: Сдвинуть вниз ::.$<%[mynick]> "..Prefix.."luadown "..Script.."|") end end end function OnChat(UID,data) local pre,cmd = data:match("^%b<>%s+(%p)(%S+)") local bPrm = data:match("^%b<>%s+%p%S+%s+(.+)") if pre == Prefix then if cmd and cmd == "scriptmoveup" or cmd == "luaup" then if Access[UID.iProfile] == 1 then if bPrm then Scripts = Core.MoveUpScript(bPrm) if Scripts then Core.SendToUser(UID, "Скрипт "..bPrm.." перемещён вверх на одну позицию.", sBotName) else Core.SendToUser(UID,"Ошибка: скрипт "..bPrm.." переместить не удалось.", sBotName) end else Core.SendToUser(UID,"Ошибка. Вы должны указать имя файла.", sBotName) end else Core.SendToUser(UID, "Ошибка, у вас нет прав для использования этой команды!", sBotName) end return true elseif cmd and cmd == "scriptmovedown" or cmd and cmd == "luadown" then if Access[UID.iProfile] == 1 then if bPrm then Scripts = Core.MoveDownScript(bPrm) if Scripts then Core.SendToUser(UID, " Скрипт "..bPrm.." перемещён вниз на одну позицию.", sBotName) else Core.SendToUser(UID,"Ошибка: скрипт "..bPrm.." переместить не удалось.", sBotName) end else Core.SendToUser(UID,"Ошибка. Вы должны указать имя файла.", sBotName) end else Core.SendToUser(UID, "Ошибка, у вас нет прав для использования этой команды!", sBotName) end return true elseif cmd == "showlua" or cmd == "луаскрипты" then if Access[UID.iProfile] == 1 then local Scripts = Core.GetScripts() local Message = "\n\t"..sHubName.." - Список скриптов:\n"..string.rep("-",70).."\n" local mem = 0 for i, Scripts in ipairs(Scripts) do mem = mem + Scripts.iMemUsage Message = Message..(("¦ %s ¦ ¦ %s ¦ = ¦ %s ¦ = %s \n"):format(i > 9 and i or "0"..i, Scripts.bEnabled and "ON" or " ",Scripts.iMemUsage ~= 0 and (" %s Кб"):format(Scripts.iMemUsage) or " ",Scripts.sName)) end Message = Message..(("%s\n¦Текущая версия хаба: %s\n¦Версия Lua плагина: %s\n¦Общее использование памяти скриптами: %sКб\n¦Папка, содержащая скрипты: %s\n+%s"):format(string.rep("-",70),Core.sHubVersion,Core.sLuaPluginVersion,mem,sScriptsDir,string.rep("-",70))) Core.SendToUser(UID, Message, sBotName) end return true elseif cmd and cmd == "luastart" or cmd and cmd == "стартлуа" then if Access[UID.iProfile] == 1 then if bPrm then Scripts = Core.StartScript(bPrm) if Scripts then Core.SendToUser(UID, UID.sNick..", "..bPrm.." был успешно запущен!", sBotName) else Core.SendToUser(UID,"Ошибка: Не удалось запустить скрипт "..bPrm, sBotName) end end else Core.SendToUser(UID, "Ошибка, у вас нет прав для использования этой команды!", sBotName) end return true elseif cmd and cmd == "luastop" or cmd and cmd == "луастоп" then if Access[UID.iProfile] == 1 then if bPrm then Scripts = Core.StopScript(bPrm) if Scripts then Core.SendToUser(UID, UID.sNick..", "..bPrm.." был выгружен успешно!", sBotName) else Core.SendToUser(UID,"Ошибка: Не удалось выгрузить скрипт "..bPrm, sBotName) end end else Core.SendToUser(UID, "Ошибка, у вас нет прав для использования этой команды!", sBotName) end return true elseif cmd and cmd == "reloadlua" or cmd and cmd == "луарелоад" then if Access[UID.iProfile] == 1 then if bPrm then Scripts = Core.RestartScript(bPrm) if Scripts then Core.SendToUser(UID, UID.sNick..", "..bPrm.." был перезапущен успешно!", sBotName) else Core.SendToUser(UID,"Ошибка: Не удалось перезапустить скрипт "..bPrm, sBotName) end end else Core.SendToUser(UID, "Ошибка, у вас нет прав для использования этой команды!", sBotName) end return true elseif cmd and cmd == "reload_all_lua" then if Access[UID.iProfile] == 1 then Core.RestartScripts(0) Core.SendToUser(UID, UID.sNick..", все скрипты были перезапущены!", sBotName) else Core.SendToUser(UID, "Ошибка, у вас нет прав для использования этой команды!", sBotName) end return true elseif cmd == "lua_get_info" then if Access[UID.iProfile] == 1 then if bPrm then local Scripts = Core.GetScript(bPrm) local sMsg = (("\n%s\n¦ Название: %s \n¦ Статус: %s\n¦ Использование памяти: %s кб\n%s"):format(string.rep("-",70),Scripts.sName,Scripts.bEnabled and "Запущен" or "Не запущен",Scripts.iMemUsage or "",string.rep("-",70))) Core.SendToUser(UID, sMsg, sBotName) end else Core.SendToUser(UID, "Ошибка, у вас нет прав для использования этой команды!", sBotName) end return true elseif cmd == "rh_lua_help" then if Access[UID.iProfile] == 1 then Core.SendToUser(UID, "\n\t"..string.rep("-",70).."\n\tПомощь по командам управления:\n\t!scriptmoveup <Имя скрипта>\t - Поднять скрипт (Альтернативы: !luaup )\n".. "\t!scriptmovedown <Имя скрипта>\t - Опустить скрипт (Альтернативы: !luadown )\n".. "\t!showlua \t-Показать список скриптов (Альтернативы: !луаскрипты)\n\t!luastart <Имя скрипта> \t - Запустить скрипт (Альтернативы: !стартлуа)\n".. "\t!luastop <Имя скрипта> \t - Остановить скрипт (Альтеранативы: !луастоп )\n\t!reloadlua <Имя скрипта> \t - Перезапустить скрипт (Альтеративы: !луарелоад )\n\t!reload_all_lua \t - Перезапустить все скрипты\n\t!lua_get_info <Имя скрипта> \t - Показать статус скрипта\n\t!rh_lua_help \t- Эта справка\n\t"..string.rep("-",70), sBotName) else Core.SendToUser(UID, "Ошибка, у вас нет прав для использования этой команды!", sBotName) end return true end end end function OnError(LUA_errors_msg) Core.SendToProfile(0, "Синтаксическая ошибка в скрипте: "..LUA_errors_msg, sBotName) end |
|
|
21.3.2013, 20:31
Сообщение
#5
|
|
Site Reliability Engineer Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз |
Код посмотри.
|
|
|
23.3.2013, 18:20
Сообщение
#6
|
|
Продвинутый участник Группа: Пользователи Сообщений: 189 Регистрация: 20.4.2009 Пользователь №: 3 121 Спасибо сказали: 12 раз |
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последнее сообщение | |
---|---|---|---|---|---|
ptokax install source BASH Script Скрипт позволяет компилировать из исходников PtokaX и производить пред |
6 | DEN 007 | 12 024 | 3.5.2013, 7:24 Посл. сообщение: Sinsei | |
Доработанный Tag Script API1 | Добавляет имя профиля в Описание юзера |
31 | district | 31 283 | 11.9.2011, 9:27 Посл. сообщение: Артём | |
RHConf Manager Быстрая настройка хаба |
2 | Saymon21 | 6 810 | 31.8.2011, 22:00 Посл. сообщение: Saymon21 | |
History script for HeXHub HeXHub |
4 | Артём | 9 733 | 8.1.2011, 15:10 Посл. сообщение: Maximum | |
Script's Verlihub Script's Verlihub |
4 | TaGG | 9 429 | 17.12.2010, 22:11 Посл. сообщение: Vizunchik | |
PtokaX Stat Script by Saymon API2 | Очередной небольшой скрипт статистики хаба |
11 | Saymon21 | 16 148 | 9.3.2010, 15:36 Посл. сообщение: Saymon21 | |
PtokaX Stat Script by Saymon API2 | Очередной небольшой скрипт статистики хаба |
0 | Saymon21 | 0 | 9.3.2010, 15:36 Посл. сообщение: Saymon21 | |
РЕШЕНО: Help! Script | 2 | random name | 5 853 | 28.1.2010, 21:32 Посл. сообщение: random name | |
От: *** Last Seen Script *** От темы с ID: 1665 |
0 | Wariner | 4 596 | 27.3.2009, 21:48 Посл. сообщение: Wariner | |
Move Script Up Or Down API2 | Скрипт для перемещения скриптов |
12 | Wariner | 17 001 | 26.2.2009, 8:12 Посл. сообщение: alex82 |
|
Сейчас: 27.11.2024, 1:48 |