myDC.ru

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

 
История благодарностей участнику Setuper. Спасибо сказали: 1708
Дата поста: В теме: За сообщение: Спасибо сказали:
17.5.2012, 9:39 Greylink API userinfo
гг.
Думаю для начала следовало бы прочитать вот это: http://greylink.freewebspace.com/lua.html

ME - это признак тебя (если этот юзер ты, то равно "1", иначе nil).
NI - это ник юзера.

Функция DC():GetUserInfo(uid) возвращает объект "юзер" по его uid.
uid можно получить из аргумента функции-события:
Код
dcpp = {}
function dcpp.OnPublicMessage(uid, data)
  local user = DC():GetUserInfo(uid)
  DC():SendPublicMessage(user.HL, "test")
end
Lamo
5.4.2012, 21:13 Бан по ID компа
Прошу не создавать больше тем про незнамо что!
Nickolya, ke(x)one
3.4.2012, 9:15 Скрипт для пингеров
В русхабе есть настройки антифлуда:

Код
<Item Name="iFloodTimeUnknown">3.0</Item>
<Item Name="iFloodTimeUnknown2">60.0</Item>
<Item Name="iFloodCountUnknown">1</Item>
<Item Name="iFloodCountUnknown2">10</Item>


Описание:
Код
iFloodTime... и iFloodCount.. — ряд параметров защиты от флуда (количество iFloodCount за время iFloodTime (в сек.)). При обнаружении флуда вызывается событие OnFlood



Поставь так:
Код
<Item Name="iFloodTimeUnknown">3.0</Item>
<Item Name="iFloodTimeUnknown2">60.0</Item>
<Item Name="iFloodCountUnknown">1000</Item>
<Item Name="iFloodCountUnknown2">1000</Item>
и никаких проблем не будет
ShadoWx
1.4.2012, 12:37 ChatHistorySQL
История чата (MySQL)
Код
path = Core.sScriptsDir.."ChatHistorySQL/"
ShadoWx
1.4.2012, 12:24 Вопросы Разработчикам Скриптов
вопросы по скриптам (мелкие вопросы)
Лучше лишний раз не дёргать сбоку мусора, так как эта функция тратит ресурсы процессора. Lua интерпретатор сам время от времени производит сборку мусора, поэтому не нужно об этом так уж заботиться.
MIKHAIL
24.3.2012, 21:20 crypto
RusHub | Библиотека криптографии
не нравится - не юзай big_smile.gif
Saymon21
24.3.2012, 16:35 crypto
RusHub | Библиотека криптографии
Название: crypto
Версия: 0.3.0
Хаб: RusHub
Автор библиотеки: Keith Howe
Описание: Библиотека для работы с методами криптографии.
Использование: Файл crypto.dll кладём в папку libs. Файл libeay32.dll кладём рядом с исполняемым файлом (rushub.exe). В скриптах библиотека подключается так: require"crypto".


Библиотека win32: [attachment=6408:crypto_win32.zip]
Библиотека win64: [attachment=6409:crypto_win64.rar]
Мануал: [attachment=6405:manual.html]
Исходники для *nix систем: [attachment=6463:luacrypto.tar.gz]
Проект для сборки на vs2008: [attachment=6413:luacrypt..._src_vs9.zip]
Nickolya, Saymon21
5.3.2012, 21:04 Вопросы по RusHub
Технические вопросы
Действительно для некоторых 64 битных систем могли возникать конфликты.
Поправил, написав более универсальную функцию. Теперь должно собираться. Скачать можно из trunk
KT315
4.3.2012, 13:16 Несколько Слов О Захватах И Регулярных Выражениях
исключительно для разработчиков
Реверс делать не эффективно. Эффективнее ограничиться правильной регуляркой.
Замена gsub тоже не эффективный вариант, так как заменять каждый символ затратно.

Вариант 1:
Код
local sFileName = sFilePath:match".+/(.*)$"


Вариант 2:
Код
local sFileName = sFilePath:match"[^/]*$"


В случае если после последнего слеша ничего нету, то в обоих вариантех получим пустую строку.
В случае если слешей вообще нету, то в первом варианте получим nil, во втором варианте получим всю строку.

Какой вариант лучше - решать самому скриптописателю.
MIKHAIL
3.3.2012, 13:37 RusHub
Кроссплатформенный консольный DC хаб
rushub v 2.3.9
lua plugin v 2.8


Added: Добавлен показ сообщения при первом отключении после частых переподключений.
Added: Добавлен языковый файл English.xml.example.
Added: Добавлен единственный таймер на длительность входа и соответствующая настройка: iTimeoutLogon.

Fixed: Модифицирован формат времени в логах.
Fixed: Исправлена ошибка, возникающая при ipv6 коннекте.
Fixed: Исправлен баг в отключениях при антифлуде (несоответствие с настройками).
Fixed: Обновлен tinyxml до версии 2.6.2.
Fixed: Удалены таймеры, а также соответствующие им настройки: iTimeoutKey, iTimeoutNick, iTimeoutLogin, iTimeoutMyinfo. iTimeoutGetpass.
Fixed: Исправлен баг в проверке ника. Теперь если входит юзер с профилем -1, а на хабе пользователь с таким ником уже есть, то входящий отключается. Если же входит юзер с профилем не равным -1, то отключается тот, кто находится на хабе с его ником (защита для зарегистрированных от обрыва соединений).
Nickolya, ShadoWx, PomanoB, KT315, CrazyKiller
29.2.2012, 19:39 Defend PM, RusHub edition
Полностью автоматическая защита ЛС от спама
В русхабе в командах никогда нету разделителя на конце |. Возможно поэтому и не работает. Нужно убрать разделитель из регулярки.
Enyby
16.2.2012, 22:53 base32 Encoder
костыль алгоритма
Итак, найден очень неприятный костыль, который тянется из оригинального DC++ клиента, и который перенесён в производные от него клиенты, а также в ADC хабы, которые используют base32 для CID.

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

Берется некий ADC CID: "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ".
Он состоит из 39 символов.
Преобразовываем этот CID по алгоритму DC++ из base32 (размер dst равен 24):
Код
Encoder::fromBase32(src, dst, sizeof(dst))

а потом опять в base32:
Код
Encoder::toBase32(dst, sizeof(dst), newSrc)

По идее должны получить тот же CID, однако получаем следующее: "ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZY"

Почему это возникает?
В base32 кодировке каждый символ имеет всего 32 комбинации, поэтому может занимать 5 бит, вместо 8. Отлично! Умножаем 39 на 5 и делим на 8, получаем 24,375. Однако размер dst равен 24, то есть мы теряем хвост данных.

Дальше ещё интереснее. Если мы возьмём размер dst с запасом - 25, вместо 24, то хвост мы не потеряем, однако на стадии преобразования в base32 мы получим лишние данные, ибо по алгоритму преобразования 0 в пяти битах преобразуется в символ base32 'A'.

Однако, алгоритм может срабатывать правильно. Это возникает тогда, когда хвост не имеет значимой величины (биты хвоста все равны 0). Хвост равен 3 бита. Получаем, что для того чтобы срабатывал алгоритм нужно чтобы последний символ был равен A (00000), I (01000), Q (10000) или Y (11000), в противном случае получаем значимые биты в хвосте, и обратное преобразование ломается.
Nickolya
15.2.2012, 9:21 Аналог в verlihub
Действительно, не корректно работало. Спасибо. Исправил.

Сообщения от хаба и не будет. Хаб тупо отключает юзера.
Отсутствие сообщения связано с минимизацией со стороны хаба времени на обработку таких реконнектов. Хотя при первом реконнекте возможно сообщение нужно сделать.
ShadoWx, KT315
9.2.2012, 8:48 Протокол IPv6 в протоколе NMDC
Спецификация и тестирование IPv6 в NMDC
Вот поэтому разумнее сделать хаб, который поддерживает оба протокола одновременно. Понятное дело, что в ADC протоколе больше разнообразных фич, но всё же нужно сделать минимум - набор команд NMDC, максимум - набор команд ADC. Народ будет видеть новые возможности ADC и постепенно переползать на него.

Русхаб продвигается в этом направлении.
IRainman
7.2.2012, 14:44 FirstRusHubBot
приводим RusHub к рабочему виду функционалом скриптов
Просто не сохраняется удаление. В файле cmds.lua перед строчкой:
Код
local tMsg = {"*** ", tUser.sNick, ", регистрация ника \"", sData, "\" с профилем №", iProfile, " (", tProfiles[iProfile].tNames[1], ") удалена!"}
добавь строчку:
Код
SaveTable(sThisScriptDir.."RegUsers.dat", tRegUsers, "tRegUsers")


Перезалил исправленную версию.
ShadoWx
7.2.2012, 9:07 Вопросы Разработчикам Скриптов
вопросы по скриптам (мелкие вопросы)
Советую не браться за это дело. Оно гиблое. Настройки клиентов у всех разные. Найти что-то универсальное невозможно.

Единственная универсальная штука для выравнивания - это табуляции.

Табуляции следует использовать только в начале строки. Конечно можно использовать и в середине, но тогда опять же возникают зависимости от шрифтов и в особенности от размера шрифта, так как число символов, которые укладываются в табуляцию зависит именно от этого.
MIKHAIL
5.2.2012, 16:38 Протокол IPv6 в протоколе NMDC
Спецификация и тестирование IPv6 в NMDC
Ты изобрёл свой велосипед. Этот велосипед уже изобретён и называется ADC протокол.

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

То есть, хочешь ipv6 - переходи на ADC!
Нужно продвигать новый протокол, а не продолжать накручивать что-то на старый.
Otshelnik-Fm
4.2.2012, 14:37 Сборка Rushub на платформе SUN (Oracle). OpenSolaris, Nexenta для x86
Патч для Rushub 2.3.8
Попробуй сейчас скачать из trunk и собрать, должно собираться безо всяких патчей
KT315
3.2.2012, 23:56 Вопросы Разработчикам Скриптов
вопросы по скриптам (мелкие вопросы)
функцией table.remove можно удалить только элементы с числовым ключом.

В твоём случае следует делать так:
Код
tTable["nick"] = nil
LoT
2.2.2012, 17:23 Ipv6 Test Hub RusHub
Если подключаться к хабу по локальному ipv6 (::1), то должно пахать.

Кстати, для ipv6 я исправил выхлоп в лог при возникновении ошибки (в ревизии 675), так как раньше показывалась не та ошибка, поэтому диагноз возникновения ошибки мог быть неправильным.

Только что проверил... Действительно была ошибка, из-за которой хаб сбрасывал ipv6 соединение.
Устранил её только что. Качайте исходники из trunk - теперь должно входить по ipv6 big_smile.gif


Кстати, для тестирования ipv6 можно использовать консольного клиента stress-test, но только для NMDC, для ADC он ещё не адаптирован.
mariner, ShadoWx, PomanoB, KT315, CrazyKiller
1.2.2012, 20:53 Логотип для RusHub'а
ваши варианты и предложения
Ну да, вопрос уже давно был решён, и изменять иконку никто не собирается.

Вообще говоря логотипом является картинка с двумя буквами RH в соответствующих цветах: http://rushub.org/
KT315
31.1.2012, 16:21 Стресс тест для хаба
Такая ошибка действительно была.
Бери из trunk версию, там это уже исправлено
CrazyKiller, мамин_парень
31.1.2012, 8:59 Вопросы Разработчикам Скриптов
вопросы по скриптам (мелкие вопросы)
Такое возможно только если между хабом и юзером нету активного сетевого оборудования, которое меняет mac-адрес.
MIKHAIL
28.1.2012, 23:39 Вопросы Разработчикам Скриптов
вопросы по скриптам (мелкие вопросы)
на быстродействие никак не повлияет, ибо хаб всё равно будет впихивать в стек этот id при вызове OnTimer, просто этот id не используется
MIKHAIL
28.1.2012, 23:22 Особенности приготовления PtokaX
Некоторые особенности работы скриптов на данном хабе
Могу ещё добавить до кучи, что возможен случай, когда при входе не будет выполняться скриптовая функция ValidateNickArrival.
Происходить это будет в том случае, если клиент поддерживает характеристику QuickList
Enyby
28.1.2012, 23:13 Вопросы Разработчикам Скриптов
вопросы по скриптам (мелкие вопросы)
Во-первых, tmr тут вовсе не функция, а переменная.
Во-вторых, в lua всякая переменная, которая не объявлена как локальная, является глобальной.
В-третьих, по внегласному правилу обращелние к локальным переменным происходит быстрее чем к глобальным.
В-четвертых, в указанном примере переменная tmr в функции OnStartup является глобальной, а переменная в функции OnTimer является локальной, то есть это разные переменные в разных областях видимости.

Чтобы не путаться в них следует называть их по-разному:
Код
function OnStartup()
    tmr = TmrMan.AddTimer(60000)
end

...

function OnTimer(id)
    ...
end
MIKHAIL
26.1.2012, 21:38 RusHub: Запрет неразрывного пробела
rushub
Ksan, Ты думаешь я ему ни подсказываю?

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

Теперь аналог этого кода для птохи, для того чтобы можно было попробовать как это работает:

Код
local sBot = "Bot"

function ChatArrival(tUser, sData)
  if tUser.iProfile == -1 or tUser.iProfile == 3 then
    local sText = sData:sub(#tUser.sNick + 4, -2)
    if sText:find"\160" then
      SendToUser(tUser, "*** Использование неразрывного пробела в тексте запрещено!", sBot)
      return true
    end
  end
end
    
function ToArrival(tUser, sData)
  if tUser.iProfile == -1 or tUser.iProfile == 3 then
    local sTo, sText = sData:sub(1, -2):match("^%$To:%s+(%S+)%s+From:%s+(.*)")
    if sText:find"\160" then
      SendToUser(tUser, "*** Использование неразрывного пробела в тексте запрещено!", sBot, sTo)
      return true
    end
  end
end

function SendToUser(tUser, sMsg, sNick, sSender)
  if sSender and sNick then
    Core.SendToUser(tUser, (("$To: %s From: %s $<%s> %s"):format(tUser.sNick, sSender, sNick, sMsg)))
  elseif sNick then
    Core.SendToUser(tUser, (("<%s> %s"):format(sNick, sMsg)))
  end
end


P.S. Для того чтобы набрать неразрывный пробел нужно включить Num Lock и, удерживая alt, набрать 0160 на расширенной клавиатуре, после этого отпустить alt.
ShadoWx
25.1.2012, 17:31 HubTopic
Скрипт показывающий ваш текст в строке состояния
Код
Core.GetConfig("sHubBot")
заменить на
Код
Config.sHubBot
или на
Код
Config["sHubBot"]
кому как больше нравится.

Однако в любом случае это не ошибка, а всего лишь предупреждение big_smile.gif
CrazyKiller
18.1.2012, 20:15 Единая платформа для скриптов
Обсуждения вопроса создания единой платформы скриптов
В русхабе это делается очень просто, тем более на последней версии.
скрипт1:
Код
function OmMyINFO(tUser, sData)
  tUser.sDesc = "Новое описание"
end


скрипт2:
Код
function OmMyINFO(tUser, sData)
  tUser.sMode = "P"
end


Нечто универсальное считаю неправильным, ибо функционал даёт очень разные возможности.
Конечно можно сделать нечто универсальное, но это может ухудшить работу.
Enyby
18.1.2012, 9:05 Что такое хороший хаб?
Немного рассуждений на тему критериев качества хаба
Полностью согласен. Добавлю.

1) В целях безопасности (при не шифрованных передачах) в MOTD не следует отправлять IP пользователя, а также порты подключения.
2) Стоит отметить и игру в викторину, которая проходит в чате. Следует сделать вход в эту игру, чтобы викторина "флудила" в чате (или личке), только если ты в неё вошёл.
Enyby
16.1.2012, 21:50 Вопросы по RusHub
Технические вопросы
Изменились уровни логирования, поэтому в старой версии файла у тебя настройка: iMaxLevel = 0 (настройку iMaxErrLevel можно удалить, она теперь содержится в iMaxLevel).

Система логирования теперь такая:
FATAL - критическая ошибка (уровень 0);
ERROR - ошибка (уровень 1);
WARN - предупреждение (уровень 2);
INFO - информационное сообщение (уровень 3);
DEBUG - отладочное сообщение (уровень 4);
TRACE - трейс сообщение (уровень 5).

Параметр iMaxLevel показывает текущий уровень логирования (по умолчанию теперь 3).
При этом уровень логирования позволяет логировать и всё события, которые ниже уровнем.

Например, если у нас стоит уровень логирования 3 (INFO), то будут логироваться события INFO, WARN, ERROR и FATAL.
Если уровень логирования 5 (TRACE), то логируются все события.

Поэтому поставь уровень логирования iMaxLevel = 3, и логи должны появятся.
dimajak
15.1.2012, 16:22 RusHub
Кроссплатформенный консольный DC хаб
rushub v 2.3.8
lua plugin v 2.7


Added: Добавлена возможность установки параметров MyINFO.
Текущие параметры:
sDesc - описание пользователя (строка);
sTag - тэг пользователя (строка, только чтение);
sClientName - клиент пользователя (строка);
sClientVersion - версия клиента пользователя (строка);
sMode - режим пользователя (строка);
iUsHubs - число хабов, на которых пользовател является незареистрированным (число);
iRegHubs - число хабов, на которых пользовател является зареистрированным (число);
iOpHubs - число хабов, на которых пользовател является оператором (число);
iSlots - число слотов у пользователя (число);
iLimit - ограничитель L (число);
iOpen - ограничитель O (число);
iBandwidth - ограничитель B (число);
iDownload - ограничитель D (число);
sFraction - ограничитель F (строка вида x/y);
sConn - тип соединения пользователя (строка);
iByte - магический байт (число);
sEmail - email адрес пользователя (строка);
iShare - шара пользователя (число);
sSupports - поддреживаемые пользователем характеристики (строка);
sVersion - версия протокола (строка);
iProfile - порофиль ользователя (число, не удаляемо);
sIP - IP адрес пользователя (строка, только чтение);
sIPConn - IP адрес, по которому пользователь соединялся (строка, только чтение);
iPort - порт пользователя (число, только чтение);
iPortConn - порт, по которому пользователь соединялся (число, только чтение);
sMacAddress - mac адрес пользователя (строка, только чтение);
iEnterTime - время входа на хаб (число, только чтение);
bKick - право на кик пользователей (логическое);
bRedirect - право на перенаправление пользователей (логическое);
bHide - скрыть пользователя (логическое);
bInUserList - пользователь с списке (логическое, только чтение);
bInIpList - пользователю отсылаются IP адреса (логическое);
bInOpList - у пользователя есть ключик (логическое).

Added: Добавлена возможность установки из Lua своих параметров следующих типов данных: строки, числа, логические.
Added: Сообщения в логах хаба стали более наглядными. Добавился констроль строк и уровни логирования:
FATAL - критическая ошибка (уровень 0);
ERROR - ошибка (уровень 1);
WARN - предупреждение (уровень 2);
INFO - информационное сообщение (уровень 3);
DEBUG - отладочное сообщение (уровень 4);
TRACE - трейс сообщение (уровень 5).

Added: Добавлена поддержка поиска и соединения клиентов в ADC.

Fixed: Устранен баг в UDP поиске (не работал UDP поиск).
Fixed: Устранен баг с таймерами в lua (функция Core.AddTimer не вызывалась RunTime, а могла вызываться только непосредственно в событии OnStartup).
Fixed: Устранен баг в пути, по которому пишутся логи lua плагина.
Fixed: Произведена локальная оптимизация и рефакторинг, а также уменьшено потребление памяти хабом.
Nickolya, mariner, Артём, Maximum, PomanoB, KT315, Alexey, CrazyKiller, Saymon21, dimajak, LEXSOR
7.1.2012, 20:41 Вопросы Разработчикам Скриптов
вопросы по скриптам (мелкие вопросы)
То есть ты хочешь обойтись без копирования строки?
В таком случае нужно использовать таблицу

Код
local sData1 = {"text"}
local sData2 = sData1 -- копирование по ссылке


Использование:
Код
print(sData1[1])
print(sData2[1])
MIKHAIL
3.1.2012, 19:06 Вопросы Разработчикам Скриптов
вопросы по скриптам (мелкие вопросы)
Разницы между
Код
function GetData(sData)
и
Код
GetData = function(sData)
быть не может, ибо lua интерпретатор транслирует первый вариант во второй (см. документацию http://www.lua.ru/doc/2.5.9.html или исходный код lua). Проводить тесты тут бессмысленно.
MIKHAIL
29.12.2011, 21:52 Вопросы Разработчикам Скриптов
вопросы по скриптам (мелкие вопросы)
Ну по-моему всё равно корявый метод.

Кстати, вот ещё пара методов тогда до кучи:

Код
function floor(num, precision)
  precision = math.pow(10, precision)
  return math.floor(tonumber(num) * precision + 0.5) / precision
end

function ceil(num, precision)
  precision = math.pow(10, precision)
  return math.ceil(tonumber(num) * precision - 0.5) / precision
end

floor(456.456556, 3) -- 456.457
ceil(456.456556, 3) -- 456.457
MIKHAIL
29.12.2011, 10:09 Вопросы Разработчикам Скриптов
вопросы по скриптам (мелкие вопросы)
Такой метод округления не хорошо использовать, так как возможен вариант, когда целая част состоит не из одной цифры, а например из 2 или 3
Код
n = 356.3695876


Лучше использовать функцию format:
Код
string.format("%.3f", 356.3695876) -- 356.370
MIKHAIL
20.12.2011, 12:23 RusHub. Пакеты для Debian/Ubuntu
Ага. Разумно.
Сделал.
Alexey
19.12.2011, 9:46 Ваши Вопросы И Предложения По Поводу Форума
Пора наверное поставить новогоднюю шапку на форуме big_smile.gif
Nickolya
8.12.2011, 9:45 Переобъявление переменной
Код
local a = {}
local b = a
a = nil


Создаётся таблица, и записывается в переменную "a" ссылка на эту таблицу.
В переменную "b" копируется ссылка на эту же самую таблицу (НЕ КОПИРУЕТСЯ сама таблица!).
Далее уничтожается ссылка переменной "a" на эту таблицу.
Однако на таблицу остаётся ссылка переменной "b", поэтому таблица не будет уничтожена сборщиком мусора.

Пример, показывающий, что мы действительно имеем дело с одной таблице и двумя ссылками на эту таблицу (то есть под таблицу память выделена 1 раз):
Код
local a = {v = 5}
local b = a
print(a.v) -- напечатает "5"
print(b.v) -- напечатает "5"
b.v = 6
print(a.v) -- напечатает "6"
print(b.v) -- напечатает "6"
a.v = 7
print(a.v) -- напечатает "7"
print(b.v) -- напечатает "7"


То есть, в данном примере переменные "a" и "b" равнозначны, так как ссылаются на одну и ту же таблицу (на одну и ту же память), и для изменения данных по этой памяти мы можем использовать как переменную "a", так и переменную "b".
Другими словами: действие b = a не приводит к копированию таблицы, оно лишь создаёт новую ссылку на уже существующую таблицу.
MIKHAIL
6.12.2011, 9:39 Переобъявление переменной
То что мы присваиваем переменной tPlayers значение nil не означает, что мы стираем из памяти таблицу, на которую указывала эта пременная до этого. Этим действием мы только удаляем ссылку на эту таблицу, а если на таблицу никто не ссылается, то таблица в скором времени будет удалена из памяти сборщиком мусора.
Если же мы пишем tPlayers = {}, то это означает, что мы создаём новую (пустую) таблицу и присваиваем переменной tPlayers ссылку на новую таблицу, при этом опять же, если на старую таблицу никто не ссылается, то таблица в скором времени будет удалена из памяти сборщиком мусора.
dimajak
24.10.2011, 14:34 Ошибки текущей версии хаба
Обнаруженные ошибки публикуются в этой теме
Раньше выставлялся 0, если шары нет.
По всей видимости для nmdc протокола это правильно, однако для adc протокола параметр шары может отсутствовать, то есть равен nil.
Поэтому в предверии внедрения adc баг перешёл в фичу.
Saymon21
23.10.2011, 17:20 RusHub
Кроссплатформенный консольный DC хаб
rushub v 2.3.7
lua plugin v 2.6


Added: Добавлено использование системы сборки GNU Autotools.
Added: Добавлена настройка iMaxSendSize, отвечающая за максимальный размер буфера отсылки (по умолчанию 2818047). При превышении этого размера пользователь отключается от хаба.

Fixed: Устранена повторная отсылка команды $Hello.
Fixed: Устранена уязвимость, при помощи которой можно было выкинуть с хаба зарегистрированного пользователя.
Fixed: Частичный рефакторинг кода.
Nickolya, mariner, Артём, PomanoB, KT315, Sekretchik, CrazyKiller, Saymon21, Sorrow
21.10.2011, 17:23 Проблема с хабом после установки роутера
udp нужно указывать в случае активного поиска со стороны хаба (специальные скрипты поиска у пользователей).

А для того чтобы искалось в клиенте на той же машине, что и сервер нужно либо в пассиве искать, либо бросать порты.
Accelerator
19.10.2011, 9:56 Вопросы по RusHub
Технические вопросы
Magneto 2 раза отсылает версию.
Для чего это сделано не знаю, но русхаб отключает после повторной отсылки команд стадии входа, так как это часть огромной системы антифлуда.
Atlant, можешь убрать повторную отсылку команды $Version в Magneto?

Цитата(Atlant @ 19.10.2011, 10:46) *
У меня даже в коде есть коммент, что верлик хочет версию, без нее кикает. А птоха - да, не проверяет.

Верлик хочет версию, но не проверяет её значение.
Mangust
19.10.2011, 7:01 Вопросы по RusHub
Технические вопросы
Тот кто писал Magneto допустил ошибку в версии. Magneto отправляет на хаб версию 1.0091, а по NMDC протоколу нужно отправлять версию 1,0091, то есть дробная и целая част должна быть отделена запятой, а не точкой.

Чтобы включить проверку в русхабе, достаточно написать небольшой скриптик:

Код
function OnVersion()
  return true
end


OnVersion
Mangust
2.10.2011, 0:36 ChatHistorySQL
История чата (MySQL)
Ksan
28.9.2011, 22:31 rex_pcre
RusHub | Библиотека pcre
Исходники приложил big_smile.gif

От встроенного в хаб функционала отказался.
Библиотека намного больше возможностей даёт и сохраняет модульность, не загромождая хаб лишним кодом
Saymon21
28.9.2011, 22:19 rex_pcre
RusHub | Библиотека pcre
Название: rex_pcre
Версия: 2.4
Хаб: RusHub
Описание: Библиотека для использования пёрловских регулярных выражений
Использование: Кладём dll библиотеку в папку libs. Подключается библиотека так: require"rex_pcre"

Документация (англ.): [attachment=6075:manual.html]
Библиотека win32: [attachment=6073:rex_pcre.rar]
Библиотека win64: [attachment=6074:rex_pcre_win64.rar]
Исходники (в архиве есть проект для vs2008): [attachment=6076:lrexlib_2.4.0.rar]

p.s. Чуть позже переведу мануал на русский big_smile.gif
Nickolya, PomanoB, CrazyKiller, Saymon21, DEN 007
19.9.2011, 20:21 Ошибки текущей версии хаба
Обнаруженные ошибки публикуются в этой теме
Ага. Действительно ошибка.
Исправил.

Линуксоиды могут пересобрать из svn.
Те кто на винде - ждите следующий релиз.
Артём, KT315, Saymon21
10.9.2011, 21:01 Вопросы по RusHub
Технические вопросы
Скорее всего скрипты.
Попробуй поотключать скрипты.

По-моему даже на тестах при 20000 юзерах 5 секунд никогда не было.
CrazyKiller
31.8.2011, 10:42 Ошибки текущей версии хаба
Обнаруженные ошибки публикуются в этой теме
Спасибо за найденную ошибку.
Исправлено.
PomanoB
17.8.2011, 14:03 [FreeBsd]LuaPlugin
Исправил этот баг.
Обновись с svn и попробуй.
ShadoWx, Saymon21
14.8.2011, 20:55 RusHub
Кроссплатформенный консольный DC хаб
rushub v 2.3.6

Added: Добавлена частичная поддержка ADC протокола (вход/выход и чат).
Для переключения хаба в ADC режим работы, нужно установить настройку bAdcOn.

Fixed: Устранена проблема с поиском пользователей в 64 битной системе.
Fixed: Устранен баг с установкой MyINFO из скрипта.
Nickolya, ShadoWx, Otshelnik-Fm, KT315, Alexey, Sekretchik, CrazyKiller, Saymon21, Dimon21
11.8.2011, 20:31 NetInDescription
Добавляет сеть в описание пользователя
adc протокол пока что не реализован, поэтому на этих выходных будет очередной релиз с соответствующими исправлениями.
CrazyKiller
10.8.2011, 7:06 Ваши Вопросы И Предложения По Поводу Форума
Saymon21, получается, что ты все символы | заменяешь на коды? Ведь это в корне не верно. А если нужно написать именно символ | ?
Код
Core.SendToUser(tUser, "$UserCommand 1 3 Админ\\Правила хаба$<%[mynick]> !rules&#124;|"..
    "$UserCommand 1 3 Админ\\Хабы-друзья$<%[mynick]> !hubs&#124;")

Нужно просто избавиться от преобразования кодов в символы, именно это и делает мой код, причём не важно какой символ отвечает этому коду символ | или какой-то другой.
Nickolya
9.8.2011, 21:06 Ваши Вопросы И Предложения По Поводу Форума
Есть предложение таки устранить проблему с отображением кода &#124; на форуме.
Покопал тут файлы IPB...
Файл sources/classes/bbcode/class_bbcode.php. Если в функции pre_db_parse в самом начале написать
Код
$txt = preg_replace( "/&#(\d+)/", "&#38;#\\1", $txt );
то в принципе проблема исчезнет.
Хотя могут быть какие-нибудь побочные эффекты. Но думаю попробовать стоит big_smile.gif
Nickolya, Saymon21
8.8.2011, 22:25 Компиляция из SVN
Проблема в линковке под данную платформу линукса.
Возможно требуется поиграть с опцией -ldl.

http://www.altlinux.org/UpStream/AsNeeded

То есть, во всей видимости, предлагается собирать так:

Код
RusHub: $(OBJS)
    $(CXX) -lrt -o RusHub $(OBJS) -ldl $(CURDIR)/tinyxml/tinyxml.a
kotuk
30.7.2011, 14:01 FirstRusHubBot
приводим RusHub к рабочему виду функционалом скриптов
Ну так замени на:

tUser.iProfile = iRegProfile
tUser.iProfile = -1
KT315, Dimon21
29.7.2011, 15:18 Ошибки текущей версии хаба
Обнаруженные ошибки публикуются в этой теме
Действительно есть такая ошибка.

И действительно она возникает только на 64 разрядной машине.
Ошибка достаточно серьёзная. Из-за неё не работает не только личка, но и многие другие функции такие как поиск и тд.


Исправил этот баг.
Выложил версию 2.3.6[beta]_win64 (http://mydc.ru/topic2378.html)
Darksome
20.7.2011, 11:42 Ошибки текущей версии хаба
Обнаруженные ошибки публикуются в этой теме
В связи с увеличением производительности русхаба было увеличено максимальное число файловых дескрипторов до 32768.
Однако оказалось, что 64 разрядная сборка крешилась из-за этого.

Я пересобрал 64 разрядную сборку с уменьшенных числом файловых дескрипторов (до 16384).

Что это означает? Это означает, что максимально доступно 16384 сокетов (соединений). Это касается только windows x64!

Имеем:

unix: нет ограничений
windows x32: 32768
windows x64: 16384
Maximum, Saymon21

23 страниц V  < 1 2 3 4 > » 
RSS Сейчас: 22.11.2024, 20:31