| 
 | 
Здравствуйте, гость ( Вход | Регистрация )
|   | 
| 
 | 
|  18.1.2009, 13:38 
				 Сообщение
					#2
					
				
			 | |
|  RusHub team lead               Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз  |  | 
|  | |
|  18.1.2009, 13:49 
				 Сообщение
					#3
					
				
			 | |
|  RusHub team lead               Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз  | 
				Как сделать отсылку сообщения пользователю при входе на хаб? Простейший код реализации отсылки сообщения в чат пользователю при входе: 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 | 
|  | |
|  18.1.2009, 13:53 
				 Сообщение
					#4
					
				
			 | |
|  Самый главный активист :-D            Группа: Модераторы Сообщений: 2 790 Регистрация: 29.6.2008 Из: г. Тула Пользователь №: 97 Спасибо сказали: 440 раз  | 
				Как прописать абсолютные пути? Для API 2: Код sFile = Core.GetPtokaXPath().."scripts/папка/файл" Для API 1: Код sFile = frmHub:GetPtokaXLocation().."scripts/папка/файл" | 
|  | |
|  18.1.2009, 14:14 
				 Сообщение
					#5
					
				
			 | |
|  RusHub team lead               Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз  | 
				Что такое MOTD или как установить сообщение при входе? MOTD - это сокращение от Message Of The Day. Переводится как "Сообщение дня". Показывается при входе на хаб. Для старых версий PtokaX устанавливается на первой вкладке. Для новых версий устанавливается в настройках. Для отсылки данного сообщения в приват нужно установить галочку: "Отправлять сообщение дня в приват". | 
|  | |
|  18.1.2009, 14:29 
				 Сообщение
					#6
					
				
			 | |
|  RusHub team lead               Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз  | 
				Как по команде сделать показ сообщения (например правил хаба)? 1. Открываем папку, где располагается файл PtokaX.exe, и заходим в папку texts. 2. Создаём в этой папке текстовый файл. 3. Переименовываем этот файл (например в имя rules.txt) 4. Открываем его, и пишем сообщение (например правила хаба) 5. Ищем в настройках хаба настройку: "Включить текстовые файлы" (В старых версиях настройка находится во вкладке "Настройки" справа. В новых версиях в "основных настройках" - "Больше настроек"). Там же можно (если необходимо) установить отправку этого сообщения в приват. 6. Для старых версий там же в настройках нужно перезагрузить текстовые файлы (или просто воспользоваться командой в чат !reloadtxt). Всё готово и по команде !rules можно будет увидеть правила хаба. Таким образом можно создать любые текстовые сообщения по команде. Например, можно сделать правила, сайты, хабы сети, информацию для операторов и тд. и тп. | 
|  | |
|  18.1.2009, 14:41 
				 Сообщение
					#7
					
				
			 | |
|  RusHub team lead               Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз  | 
				Как сделать контекстное меню для команды? Допустим, у вас есть команда !rules, по которой показываются правила хаба, команда !hubs, по которой показываются хабы сети и команда !radio, по которой показываются транслируемые через сеть радиостанции. Вы хотите, чтобы эти команды можно было вызывать из контекстного меню хаба. API 2: Код function UserConnected(tUser) Core.SendToUser(tUser,"$UserCommand 1 3 Меню хаба\\Правила хаба$<%[mynick]> !rules||".. "$UserCommand 1 3 Меню хаба\\Хабы-друзья$<%[mynick]> !hubs||".. "$UserCommand 1 3 Меню хаба\\Сетевое радио$<%[mynick]> !radio||") end RegConnected,OpConnected=UserConnected,UserConnected API 1: Код function NewUserConnected(tUser) tUser:SendData("$UserCommand 1 3 Меню хаба\\Правила хаба$<%[mynick]> !rules||".. "$UserCommand 1 3 Меню хаба\\Хабы-друзья$<%[mynick]> !hubs||".. "$UserCommand 1 3 Меню хаба\\Сетевое радио$<%[mynick]> !radio||") end OpConnected=NewUserConnected | 
|  | |
|  7.2.2009, 21:04 
				 Сообщение
					#8
					
				
			 | |
|  RusHub team lead               Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз  | 
				Как запретить скачивать и искать на хабе незарегистрированным? Код 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 | 
|  | |
|  8.2.2009, 18:41 
				 Сообщение
					#9
					
				
			 | |
|  RusHub team lead               Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз  | 
				Как написать функцию оповещения об ошибках скрипта? Код 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 | 
|  | |
|  28.2.2009, 17:48 
				 Сообщение
					#10
					
				
			 | |
|  RusHub team lead               Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз  | 
				Как запретить пользоваться чатом и личкой на хабе незарегистрированным? 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 | 
|  | |
|  7.3.2009, 2:41 
				 Сообщение
					#11
					
				
			 | |
|  RusHub team lead               Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз  | 
				Как запретить символы в нике для определённых профилей? Код 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 | 
|  | |
|  7.3.2009, 2:43 
				 Сообщение
					#12
					
				
			 | |
|  RusHub team lead               Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз  | 
				Как изменить выводимые в чат ники пользователей? Код 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 | 
|  | |
|  9.3.2009, 10:46 
				 Сообщение
					#13
					
				
			 | |
|  Самый главный активист :-D            Группа: Модераторы Сообщений: 2 790 Регистрация: 29.6.2008 Из: г. Тула Пользователь №: 97 Спасибо сказали: 440 раз  | 
				Как сделать действие по команде? Код 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 | 
|  | |
|  19.3.2009, 14:35 
				 Сообщение
					#14
					
				
			 | |
|  RusHub team lead               Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз  | 
				Как сделать приветствие с указанием времени суток? Код 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 | 
|  | |
|  27.5.2009, 8:49 
				 Сообщение
					#15
					
				
			 | |
|  Самый главный активист :-D            Группа: Модераторы Сообщений: 2 790 Регистрация: 29.6.2008 Из: г. Тула Пользователь №: 97 Спасибо сказали: 440 раз  | 
				Есть ли скрипт статистики скачивания на хабе? Нет, такой скрипт невозможно реализовать из-за того что скачка идёт напрямую между клиентами не затрагивая хаб. Поэтому невозможно создать скрипт статистики не на количество скачиваемого не на то что скачивают(названия файлов)!!! | 
|  | |
|  9.8.2009, 13:30 
				 Сообщение
					#16
					
				
			 | |
|  RusHub team lead               Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз  | 
				Как сделать оповещение в ОпЧат о слишком большой шаре пользователя? Код 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 | 
|  | |
|  1.11.2009, 10:21 
				 Сообщение
					#17
					
				
			 | |
|  Самый главный активист :-D            Группа: Модераторы Сообщений: 2 790 Регистрация: 29.6.2008 Из: г. Тула Пользователь №: 97 Спасибо сказали: 440 раз  | 
				Как сделать ограничения действий или добавить исключения по профилям? в начале помещаем таблицу Код local tProfiles = { [0] = 1, -- Мастер [1] = 1, -- ОПератор [2] = 0, -- VIP [3] = 0, -- Зарегистрированный пользователь [-1] = 0, -- Незарегистрированный юзер } затем в куске кода который надо ограничить пишем Код if tProfiles[tUser.iProfile] == 1 then -- кусок кода end Кусок кода будет выполнятся только для того профиля для которого в таблице tProfiles стоит еденичка! | 
|  | |
|  8.6.2010, 18:47 
				 Сообщение
					#18
					
				
			 | |
|  Developer       Группа: Модераторы Сообщений: 541 Регистрация: 11.11.2008 Пользователь №: 1 075 Спасибо сказали: 244 раза  | 
				Как сделать ограничения действий или добавить исключения по никам пользователей? Создаём таблицу с никами Код local tNicks = { ["Вася"] = 1, -- Васе доступно использование команды (т.к. значение = 1) ["Петя"] = 0, -- Пете использование команды не доступно (т.к. значение = 0) } затем в куске кода который надо ограничить пишем Код if tNicks[tUser.sNick] == 1 then -- код else Core.SendToUser(tUser, "<"..SetMan.GetString(21).."> Использование команды для вас не доступно!") end | 
|  | |
|  24.7.2010, 12:23 
				 Сообщение
					#19
					
				
			 | |
|  Местный        Группа: Неактивированные Сообщений: 908 Регистрация: 26.12.2008 Пользователь №: 1 574 Спасибо сказали: 1406 раз  | 
				Как установить/удалить/запустить PtokaX как службу? Консольная версия PtokaX прекрасно умеет устанавливать себя как системную службу. 
 Примеры: Конфигурирование директории и установка сервиса: Код "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 | 
|  | |
|  10.6.2011, 16:28 
				 Сообщение
					#20
					
				
			 | |
|  Developer       Группа: Модераторы Сообщений: 541 Регистрация: 11.11.2008 Пользователь №: 1 075 Спасибо сказали: 244 раза  | 
				Как сделать сообщение, которое будет выдаваться при входе на хаб(Перед надписями "Этот хаб работает ...")? Код local sMsg = "Пожалуйста, подождите, идёт загрузка хаба..." -- сообщение, выдаваемое при входе на хаб function ValidateNickArrival(tUser, sData) Core.SendToUser(tUser, sMsg) end | 
|  | |
|   | 
 Похожие темы
 Похожие темы
|   | Сейчас: 1.11.2025, 1:31 |