myDC.ru

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

 

> FirstRusHubBot, приводим RusHub к рабочему виду функционалом скриптов

Nickolya
сообщение 2.1.2010, 4:33
Сообщение #21


Главный ра******й тут...
*********

Группа: Главные администраторы
Сообщений: 1 727
Регистрация: 18.5.2008
Из: RF, 2la
Пользователь №: 1
Спасибо сказали: 776 раз




Итак, выкладываю скрипт дающий пока небольшой функционал для управления новоиспеченным RusHub'ом.

Что сделано:
  • Приветствие, меняется в отдельном файлике hello.txt, все возможные значения для замены в нем уже присутствуют
  • Регистрация - расширение того, что выложил Илья, теперь команда регистрации доступна только тем кто не зарегистрирован, команда смены пароля, просмотра своего пароля и удаления своей регистрации. По умолчанию удалять свою регистрацию могут только пользователи с профилем 3, менять пароль могут все зарегистрированные. У администраторов теперь есть команды просмотра паролей пользователей, смены профилей пользователей, удаления и добавления регистраций пользователей. Везде ведется контроль за уровнем профиля, т.е. оператор не может добавить к зарегистрированным администратора. Есть мысль регистрировать первого юзера с профилем 0
  • Маленькие команды помощи, просмотра своего айпи и отсылки сообщения от 3 лица.
  • Управление скриптами, двигать пока нет возможности, но все остальное доступно. Работа с логом ошибок так же будет позже.
  • Положено начало системе наказаний командой отключения от хаба, баны будут в следующей версии.

Получилась гибкая легко изменяемая система, команды лежат в файле cmds.lua, по шаблону легко добавляется что угодно. Так же возможные настройки: имя бота и хабтопик, можно задать какие профили будут иметь ключик, за это отвечает параметр bHaveKey таблицы tProfiles что находится в самом начале файла FirstRusHubBot.lua. Пока все, позже будет больше, тестируйте. Для того чтобы стать админом необходимо зарегистрироваться, залезть в файл RegUsers.dat, поменять там параметр ["iProfile"] на 0 рядом с нужным ником, затем перезагрузить скрипты.

Изменения в версии 0.2 по сравнению с предыдущей:
  1. Исправлена совместимость с текущей версией хаба
  2. Ввиду поправленого косяка с функцией скриптов теперь работает управление скриптами
  3. Мониторинг команд профиля, чтобы профиль ниже рангом не мог воздействовать на пользователя имеющего профиль выше
  4. Раширены команды управления регистрацией: пользователь теперь может смотреть свой айпи, администраторы могут смотреть пароли, изменять профиль (забыл про смену пароля юзеру, это записано в todo) и удалять регистрацию пользователей
  5. Команда отключения юзера от хаба


Вот возможности профилей по умолчанию в скрипте на текущую версию:
Администратор
<RusHubBot> *** Доступные вам команды:

*** Команды вашего профиля "администратор":

!mypass - напоминает пароль для входа на хаб. Альтернативы: !мойпароль
!changepass <новый пароль> - меняет пароль необходимый для входа на хаб. Альтернативы: !сменитьпароль
!seepass <ник> - позволяет посмотреть пароль пользователя. Альтернативы: !смотретьпароль
!addreguser <ник> <пароль> <профиль> - добавляет регистрацию ника с заданым паролем и профилем. Альтернативы: !добавитьюзера
!changereguser <ник> <профиль> - меняет профиль у указанного ника. Альтернативы: !поменятьюзера
!delreguser <ник> - удаляет регистрацию пользователя. Альтернативы: !удалитьюзера
!getscripts - показывает список всех скриптов. Альтернативы: !скрипты, !получитьскрипты
!restartscripts - перезапускает все скрипты. Альтернативы: !перезапускскриптов
!startscript <имя скрипта> - запускает указанный скрипт. Альтернативы: !запуститьскрипт
!restartscript <имя скрипта> - перезапускает указанный скрипт. Альтернативы: !перезапуститьскрипт
!stopscript <имя скрипта> - останавливает указанный скрипт. Альтернативы: !остановитьскрипт
!drop <ник> - отключает от хаба выбранного пользователя. Альтернативы: !отключить

*** Глобальные команды:

!help - вот эта справка по командам. Альтернативы: !помощь
!myip - покажет вам ваш ip-адрес. Альтернативы: !мойайпи, !мойип
!me <сообщение> - отправить в чат сообщение от 3 лица. Альтернативы: !ми, !я

Оператор
<RusHubBot> *** Доступные вам команды:

*** Команды вашего профиля "оператор":

!mypass - напоминает пароль для входа на хаб. Альтернативы: !мойпароль
!changepass <новый пароль> - меняет пароль необходимый для входа на хаб. Альтернативы: !сменитьпароль
!seepass <ник> - позволяет посмотреть пароль пользователя. Альтернативы: !смотретьпароль
!addreguser <ник> <пароль> <профиль> - добавляет регистрацию ника с заданым паролем и профилем. Альтернативы: !добавитьюзера
!changereguser <ник> <профиль> - меняет профиль у указанного ника. Альтернативы: !поменятьюзера
!delreguser <ник> - удаляет регистрацию пользователя. Альтернативы: !удалитьюзера
!getscripts - показывает список всех скриптов. Альтернативы: !скрипты, !получитьскрипты
!restartscript <имя скрипта> - перезапускает указанный скрипт.
!stopscript <имя скрипта> - останавливает указанный скрипт.
!drop <ник> - отключает от хаба выбранного пользователя. Альтернативы: !отключить

*** Глобальные команды:

!help - вот эта справка по командам. Альтернативы: !помощь
!myip - покажет вам ваш ip-адрес. Альтернативы: !мойайпи, !мойип
!me <сообщение> - отправить в чат сообщение от 3 лица. Альтернативы: !ми, !я

vip
<RusHubBot> *** Доступные вам команды:

*** Команды вашего профиля "VIP":

!mypass - напоминает пароль для входа на хаб. Альтернативы: !мойпароль
!changepass <новый пароль> - меняет пароль необходимый для входа на хаб. Альтернативы: !сменитьпароль
!drop <ник> - отключает от хаба выбранного пользователя. Альтернативы: !отключить

*** Глобальные команды:

!help - вот эта справка по командам. Альтернативы: !помощь
!myip - покажет вам ваш ip-адрес. Альтернативы: !мойайпи, !мойип
!me <сообщение> - отправить в чат сообщение от 3 лица. Альтернативы: !ми, !я

Пользователь
<RusHubBot> *** Доступные вам команды:

*** Команды вашего профиля "пользователь":

!unreg - удалить свою регистрацию на хабе. Альтернативы: !удалитьрегистрацию
!mypass - напоминает пароль для входа на хаб. Альтернативы: !мойпароль
!changepass <новый пароль> - меняет пароль необходимый для входа на хаб. Альтернативы: !сменитьпароль

*** Глобальные команды:

!help - вот эта справка по командам. Альтернативы: !помощь
!myip - покажет вам ваш ip-адрес. Альтернативы: !мойайпи, !мойип
!me <сообщение> - отправить в чат сообщение от 3 лица. Альтернативы: !ми, !я

Гость
<RusHubBot> *** Доступные вам команды:

*** Команды вашего профиля "гость":

!regme <пароль> - зарегистрироваться на хабе. Альтернативы: !регми, !зарегистрироваться

*** Глобальные команды:

!help - вот эта справка по командам. Альтернативы: !помощь
!myip - покажет вам ваш ip-адрес. Альтернативы: !мойайпи, !мойип
!me <сообщение> - отправить в чат сообщение от 3 лица. Альтернативы: !ми, !я

Прикрепленные файлы
Прикрепленный файл  FirstRusHubBot_v0.2.rar ( 7.59 килобайт ) Кол-во скачиваний: 323
 
Go to the top of the page
+Quote Post
4 страниц V  < 1 2 3 4 >  
Начать новую тему
Ответов
lewonchik
сообщение 11.3.2010, 19:29
Сообщение #22


Начинающий
*

Группа: Пользователи
Сообщений: 20
Регистрация: 12.9.2009
Из: г.Екатеринбург
Пользователь №: 4 427
Спасибо сказали: 0 раз




Цитата(Setuper @ 11.3.2010, 21:18) *
А вообще, эта ошибка означает, что у тебя в таблице tProfiles описаны не все профили, которые используются.
По всей видимости есть какой-нибудь профиль с номером 4 (какой-нибудь модератор) big_smile.gif

Точно, спасибо большое за помощь, прописал все профили и ошибка пропала!!!
Go to the top of the page
+Quote Post
Drakula
сообщение 8.5.2010, 20:29
Сообщение #23


PtokaX DC Hub 0.4.1.2
*****

Группа: Пользователи
Сообщений: 203
Регистрация: 20.1.2009
Из: Republic of Belarus, Minsk, Uruchie, Avalon.
Пользователь №: 1 890
Спасибо сказали: 4 раза




Всё отлично работает НО хотелось бы увидеть баны + определения мак-адреса + бан по мак адресу.
P.S. А реально реализовать бан по Айди???
Go to the top of the page
+Quote Post
Nickolya
сообщение 10.5.2010, 13:54
Сообщение #24


Главный ра******й тут...
*********

Группа: Главные администраторы
Сообщений: 1 727
Регистрация: 18.5.2008
Из: RF, 2la
Пользователь №: 1
Спасибо сказали: 776 раз




Хорошо что работает как надо big_smile.gif Никак руки не доходят до бота, баны будут обязательно. По маку банить можно будет если он будет известен. Что касается АЙДИ, то откуда ты его возьмешь?
Go to the top of the page
+Quote Post
Drakula
сообщение 10.5.2010, 14:25
Сообщение #25


PtokaX DC Hub 0.4.1.2
*****

Группа: Пользователи
Сообщений: 203
Регистрация: 20.1.2009
Из: Republic of Belarus, Minsk, Uruchie, Avalon.
Пользователь №: 1 890
Спасибо сказали: 4 раза




(Про айди)Так вот я и у тебя и спрашиваю возможно ли это как нибудь реализовать=)) А вот по мак адресу это уже неплохо. Не каждому в голову допрёт что в ДЦ можно по маку банить.

P.S. сор что не по теме, а в PtokaX возможно реализовать бан по МАК-адресу??? Если да то отпиши плиз в ЛС что бы не захламлять тему. Заранее сенк.
Go to the top of the page
+Quote Post
Nickolya
сообщение 11.5.2010, 10:31
Сообщение #26


Главный ра******й тут...
*********

Группа: Главные администраторы
Сообщений: 1 727
Регистрация: 18.5.2008
Из: RF, 2la
Пользователь №: 1
Спасибо сказали: 776 раз




Понятия ID нету в протоколе NMDC, так что банить по нему нельзя, по маку банить можно только в пределах сети где стоит хаб, это уже обсуждалось неоднократно, в птоке это не реализуемо. Если интересно - поищи по форуму.


Спасибо сказали:
Go to the top of the page
+Quote Post
Saymon21
сообщение 28.10.2010, 20:36
Сообщение #27


Site Reliability Engineer
*********

Группа: Модераторы
Сообщений: 1 772
Регистрация: 27.6.2009
Из: Чувашия, г. Чебоксары
Пользователь №: 3 719
Спасибо сказали: 479 раз




Предложения:
1) гаги, баны, какие возможно)
1.1) + к этому лог банов, киков, гагов (когда, кем, за что был забанен или кикнут)
2) убрать название профиля в меню. Пусть лучше будет отдельно.
3) добавить переменную "посылать мотд или нет"
4) оп чат
5) Меню управления скриптами типа как http://mydc.ru/topic3767.html и при перезапуске, запуске, остановке отдельного скрипта я думаю не нужно показывать список всех скриптов....
6) текстовые файлы..
7) переменная использовать ли ContextMenu
8) скрытие из списка юзеров.
9) антиреклама.
10) команды остановить/перезапустить хаб
11) проверка обновлений хаба и Lua плагина
12) чистка регистраций

Сообщение отредактировал Saymon - 2.11.2010, 1:53
Go to the top of the page
+Quote Post
Артём
сообщение 28.10.2010, 20:44
Сообщение #28


Наруто на аваторке
***********

Группа: Пользователи
Сообщений: 2 606
Регистрация: 11.10.2008
Из: Харькова
Пользователь №: 771
Спасибо сказали: 774 раза




+ бан IP диапазон
-
Цитата
я думаю не нужно показывать список всех скриптов...
( почему цитата больше текста? what.gif )
Go to the top of the page
+Quote Post
Saymon21
сообщение 19.12.2010, 19:02
Сообщение #29


Site Reliability Engineer
*********

Группа: Модераторы
Сообщений: 1 772
Регистрация: 27.6.2009
Из: Чувашия, г. Чебоксары
Пользователь №: 3 719
Спасибо сказали: 479 раз




Добавил троечку команд.
Цитата
*** Команды вашего профиля "администратор":
!restarthub - пезапуск хаба. Альтернативы: !перезапуститьхаб
!hubshutdown - остановка хаба. Альтернативы: !отключитьхаб

И для всех профилей:
Цитата
!uptime - показать время работы хаба. Альтернативы: !аптайм

Достаточно заменить всего два файла в папке бота. big_smile.gif
Прикрепленные файлы
Прикрепленный файл  cmds.lua ( 23.54 килобайт ) Кол-во скачиваний: 51
Прикрепленный файл  functions.lua ( 3.49 килобайт ) Кол-во скачиваний: 48
 


Спасибо сказали:
Go to the top of the page
+Quote Post
Din
сообщение 14.1.2011, 3:09
Сообщение #30


Абсолютный новичок


Группа: Пользователи
Сообщений: 1
Регистрация: 14.1.2011
Пользователь №: 8 535
Спасибо сказали: 0 раз




Доброго времени суток. Я новичёк, только установил и запустил RusHub, скачал этот скрипт, разархивировал, кинул в папку со скриптами. Ничего не произошло, просто голый хаб ничего нового не добавилось. Такой вот вопрос - как активировать скрипт? И как перезапустить скрипт?
Go to the top of the page
+Quote Post
Saymon21
сообщение 14.1.2011, 3:12
Сообщение #31


Site Reliability Engineer
*********

Группа: Модераторы
Сообщений: 1 772
Регистрация: 27.6.2009
Из: Чувашия, г. Чебоксары
Пользователь №: 3 719
Спасибо сказали: 479 раз




Din, Установка RusHub на Windows и Ubuntu 10.04


Спасибо сказали:
Go to the top of the page
+Quote Post
Darksome
сообщение 26.2.2011, 16:44
Сообщение #32


Абсолютный новичок


Группа: Пользователи
Сообщений: 6
Регистрация: 22.2.2011
Пользователь №: 8 836
Спасибо сказали: 0 раз




потестировал данный скрипт и заметил, что нет проверки на повторный вход: если войти с (зарегистрированным) именем пользователя, который уже подключен к хабу, то первого вошедшего выкидывает с хаба. если первый делает переподключение, то выкидает второго и так до бесконечности могут выкидывать друг друга big_smile.gif
конечно это можно использовать и как фичу.
немного поковырял скрипт и добавил туда
Код
function OnValidateNick(UID, sData)
    local sNick = UID.sNick
    local tLUsers = Core.GetUsers()
    for i, sLUser in ipairs(tLUsers) do
        if sLUser.sNick == sNick  then
            Core.SendToUser(UID, "*** Doppelganger - No pasaran!", sBot) -- Отсылаем сообщение о дубликате
            Core.SendToUser(UID, "$ValidateDenide")
            Core.Disconnect(UID) -- Разъединяем пользователя
            return false
        end
    end
    local tRegInfo = tRegUsers[sNick] -- Получаем регистрационные данные

... далее по тексту

правда LUA я не знаю и рисовал по подобию - не знаю насколько "коряв" полученный результат, но вроде работает big_smile.gif

в отношении привелегий профилей: запретить манипулировать не только вышестоящими профилями, но и себе равными - т.е. только нижестоящими - ИМХО так правильнее будет (себе я так и сделал)
Go to the top of the page
+Quote Post
Alexey
сообщение 26.2.2011, 17:57
Сообщение #33


7 квадратиков
*******

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




Цитата(Darksome @ 26.2.2011, 16:44) *
нет проверки на повторный вход: если войти с (зарегистрированным) именем пользователя, который уже подключен к хабу, то первого вошедшего выкидывает с хаба. если первый делает переподключение, то выкидает второго и так до бесконечности могут выкидывать друг друга big_smile.gif
конечно это можно использовать и как фичу.

А разве в других хабах по-другому?
Это и есть фича: подвисший юзер не помешает зайти в хаб живому.
Go to the top of the page
+Quote Post
Darksome
сообщение 26.2.2011, 19:03
Сообщение #34


Абсолютный новичок


Группа: Пользователи
Сообщений: 6
Регистрация: 22.2.2011
Пользователь №: 8 836
Спасибо сказали: 0 раз




я имел ввиду - заходя с другой машины/места вытеснятся текущий живой пользователь вместо сообщения, что ник уже занят
а подвисшего юзера прибивает сам хаб или не?
Go to the top of the page
+Quote Post
Alexey
сообщение 26.2.2011, 19:55
Сообщение #35


7 квадратиков
*******

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




Сам, но не всегда сразу. И часто слышны жалобы от незарегистрированных пользователей о том, что их выкинуло из хаба и не пускает обратно по причине занятого ника.
Go to the top of the page
+Quote Post
mod
сообщение 3.3.2011, 15:44
Сообщение #36


Активный участник
***

Группа: Пользователи
Сообщений: 65
Регистрация: 16.7.2010
Пользователь №: 7 288
Спасибо сказали: 0 раз




При нажатии на "Посмотреть скрипты", все норм, но в строке "Папка, содержащая скрипты:" не отображается папка, просто пусто.
Go to the top of the page
+Quote Post
Saymon21
сообщение 9.3.2011, 2:58
Сообщение #37


Site Reliability Engineer
*********

Группа: Модераторы
Сообщений: 1 772
Регистрация: 27.6.2009
Из: Чувашия, г. Чебоксары
Пользователь №: 3 719
Спасибо сказали: 479 раз




Для тех кто не знает в какой папке у них скрипты делаем так:
в файле cmds.lua находим строку:
Код
table.multiinsert(tMsg, "\n*** Общее использование памяти скриптами: ", iMemory, " Кб\n", "*** Папка, содержащая скрипты: ", sScriptsDir, "\n")

И меням sScriptsDir на sThisScriptDir или на Core.sScriptsDir
Go to the top of the page
+Quote Post
Hellsing
сообщение 2.4.2011, 21:41
Сообщение #38


Абсолютный новичок


Группа: Пользователи
Сообщений: 3
Регистрация: 2.4.2011
Пользователь №: 9 069
Спасибо сказали: 0 раз




Всё отлично, спасибо за скрипт, единственное либо это шутка, либо чуть поспешил) если не шутка, то поправьте пожалуйста. Не сочтите за грубость или подстрекание, случайно обнаружил
Код
local tMsg = {"*** Время хабы хаба: ", GetNormalTime(Core.GetUpTime())}
Go to the top of the page
+Quote Post
Saymon21
сообщение 2.4.2011, 22:01
Сообщение #39


Site Reliability Engineer
*********

Группа: Модераторы
Сообщений: 1 772
Регистрация: 27.6.2009
Из: Чувашия, г. Чебоксары
Пользователь №: 3 719
Спасибо сказали: 479 раз




и? Что не так то?
Go to the top of the page
+Quote Post
Артём
сообщение 2.4.2011, 22:22
Сообщение #40


Наруто на аваторке
***********

Группа: Пользователи
Сообщений: 2 606
Регистрация: 11.10.2008
Из: Харькова
Пользователь №: 771
Спасибо сказали: 774 раза




скорей всего, его смутило
Цитата
*** Время хабы хаба:


Hellsing, это не смертельно и на работу скрипта и хаба не влияет big_smile.gif
Go to the top of the page
+Quote Post
Saymon21
сообщение 3.4.2011, 0:03
Сообщение #41


Site Reliability Engineer
*********

Группа: Модераторы
Сообщений: 1 772
Регистрация: 27.6.2009
Из: Чувашия, г. Чебоксары
Пользователь №: 3 719
Спасибо сказали: 479 раз




Блин, ну пиши подробней. Что не так?
Go to the top of the page
+Quote Post

4 страниц V  < 1 2 3 4 >
Ответить в данную темуНачать новую тему
8 чел. читают эту тему (гостей: 8, скрытых пользователей: 0)
Пользователей: 0

Collapse

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

  Тема Ответов Автор Просмотров Последнее сообщение
No New Posts От: FirstRusHubBot
От темы с ID: 2878
3 Satib 5 352 14.2.2013, 20:45 Посл. сообщение: KCAHDEP
No New Posts Topic has attachmentsОт: FirstRusHubBot
От темы с ID: 2878
2 Hellsing 4 451 17.5.2011, 11:35 Посл. сообщение: CrazyKiller

 



RSS Сейчас: 23.11.2024, 10:16