|
Главная | Клиентские скрипты (greylink) - Страница 3 - Форум | Воскресенье, 24.11.2024, 11:15
Клиентские скрипты (greylink)
| |
hmury | Дата: Воскресенье, 05.10.2008, 10:58 | Сообщение # 1 |
Генерал-лейтенант
Сообщений: 599
Репутация: 32
Статус: Offline
| Сайт посвященный Луа http://www.lua.ru Форум с готовыми скриптами на http://mydc.ru Еще один форум на http://adrium.ipbfree.com мой знакомый, Chaser, написал скрипт "объявление на хабе" Code dcpp = {} spamtable = {} -- spamtable= { ["dc.ru"] = { 0, 10, "sample" } , ["localhost"] = { 0, 12, "hello there!" } }
function spam(hubname, timeout, text) spamtable[hubname] = { 0, timeout, text } end
function dcpp.OnTimer() for hubname, hubentry in pairs(spamtable) do if (hubentry[1] == 0) and (hubentry[3] ~= "") then hubentry[1] = hubentry[2] DC():SendPublicMessage(hubname, hubentry[3]) else hubentry[1] = hubentry[1] - 1 end end return nil end
text = "Спам-бот. Запуск спама на хабе с периодом 600 секунд:\r\n" text = text .. "/lua spam(\"dc.ufanet.ru\", 600, \" ТУТ ВАШЕ СООБЩЕНИЕ \")\r\n" text = text .. "\r\n" text = text .. "Чтобы отключить спам на хабе, наберите\r\n" text = text .. "/lua spam(\"dc.ufanet.ru\", 0, \"\")\r\n" text = text .. "\r\n" text = text .. "Адрес хаба надо писать в точности, как в столбце 'Сервер'\r\n" text = text .. "в списке 'Избранных хабов'\r\n"
DC():MessageBox(text, "spam.lua", "ok", "info") DC():RunTimer(1) это надо вставить в блокнот и сохранить в папку Scripts с именем spam.lua, обязательно в кодировке utf-8. запуск командой
Сообщение отредактировал livedc - Четверг, 19.03.2009, 20:19 |
|
|
|
Setuper | Дата: Понедельник, 29.12.2008, 00:09 | Сообщение # 31 |
Майор
Сообщений: 98
Репутация: 6
Статус: Offline
| По поводу первой проблемы ничего не понял))) Ты русский или нет? Что именно не работает, ничего не понял из твоих слов. По поводу совместного запуска 2 скриптов - ответ невозможно! Одновременно может работать только 1 скрипт. Поэтому либо то, либо другое. Однако, проблему запуска нескольких скриптов можно обойти. Поэтому я и написал универсальный бот, в который можно добавлять какие-то сторонние скрипты и они все будут работать вместе. Для того, чтобы добавить скрипт "spam" нужно сделать следующее: 1) Создать в папке func скрипта MoonADC файл с названием модуля бота и расширением func: например так "spam.func" 2) В файле "startup.lua" скрипта MoonADC в таблицу "tMain" дописываем название нового модуля: ["spam"]=1, где 1-модуль включен, 0-откл. 3) В файл "spam.func" скопировать код скрипта spam убрав из кода строки: "dcpp = {}" и "DC():RunTimer(1)" и заменить строку "function dcpp.OnTimer()" на строку "tMainFunc["spam"].OnTimer=function()"
lua master
Сообщение отредактировал Setuper - Понедельник, 29.12.2008, 00:13 |
|
|
|
deity | Дата: Понедельник, 29.12.2008, 00:52 | Сообщение # 32 |
Полковник
Сообщений: 238
Репутация: 4
Статус: Offline
| Quote (Setuper) По поводу первой проблемы ничего не понял))) Ты русский или нет? Что именно не работает, ничего не понял из твоих слов. проблема была в том, что при запуске (клиента+чатбота) выводилось сообщение в чат, как приветствие,при отсутствии триггерных слов, ее удалось решить.Но дальнейшее использование бота показало, что если не выходя из грея с запущенным ботом отправить компьютер в сон и потом разбудит, то сообщение сразу попадает в чат,без тригерных слов.Т.е. багу удалось разрешить частично... насчет 2 скриптов понял..спасибо поробую сделать три пунктаДобавлено (29.12.2008, 00:52) ---------------------------------------------
Quote (Setuper) Однако, проблему запуска нескольких скриптов можно обойти. Поэтому я и написал универсальный бот, в который можно добавлять какие-то сторонние скрипты и они все будут работать вместе. Для того, чтобы добавить скрипт "spam" нужно сделать следующее: 1) Создать в папке func скрипта MoonADC файл с названием модуля бота и расширением func: например так "spam.func" 2) В файле "startup.lua" скрипта MoonADC в таблицу "tMain" дописываем название нового модуля: ["spam"]=1, где 1-модуль включен, 0-откл. 3) В файл "spam.func" скопировать код скрипта spam убрав из кода строки: "dcpp = {}" и "DC():RunTimer(1)" и заменить строку "function dcpp.OnTimer()" на строку "tMainFunc["spam"].OnTimer=function()" попробовал запускается грей, потом окно спамавского скрипта и грей зависает , не развернуть из трея
|
|
|
|
Setuper | Дата: Понедельник, 29.12.2008, 10:25 | Сообщение # 33 |
Майор
Сообщений: 98
Репутация: 6
Статус: Offline
| v 0.8.5.7 Added: Из-за невозможности запуска более 1 скрипта, по просьбам желающих добавил модуль спам бота, написанного Chaser-ом. Fixed: Исправлена задержка чат-бота и пм-бота. Задержки нет при ручном запуске скрипта (то есть реакция на фразы будет мгновенной), задержка вознакает при заходе на хаб (или при перезаходе). Задержка контролируется параметром iDelayStart. Fixed: Убрал файл startup.func, включив его содержимое в файл startup.lua. Файл новой версии бота во втором топике в начале темы.
lua master
Сообщение отредактировал Setuper - Понедельник, 29.12.2008, 10:31 |
|
|
|
deity | Дата: Понедельник, 29.12.2008, 15:39 | Сообщение # 34 |
Полковник
Сообщений: 238
Репутация: 4
Статус: Offline
| Quote (Setuper) v 0.8.5.7 Added: Из-за невозможности запуска более 1 скрипта, по просьбам желающих добавил модуль спам бота, написанного Chaser-ом. то же самое запускается грей, потом окно спамавского скрипта и грей зависает , не развернуть из трея, приходится убивать из диспетчера задач грея... ну ладно..отключил spam.func пользуюсь chatbot.func и connector.func - другие не тестировал за ненадобностью... они работают спасибо за бота
Сообщение отредактировал deity - Понедельник, 29.12.2008, 15:39 |
|
|
|
Setuper | Дата: Понедельник, 29.12.2008, 15:50 | Сообщение # 35 |
Майор
Сообщений: 98
Репутация: 6
Статус: Offline
| Не знаю что у тебя там зависает. У меня на 5.48 всё замечательно работает. А продвинутым спам ботом является бот ranker
lua master
|
|
|
|
deity | Дата: Понедельник, 29.12.2008, 15:59 | Сообщение # 36 |
Полковник
Сообщений: 238
Репутация: 4
Статус: Offline
| Quote (Setuper) Не знаю что у тебя там зависает. У меня на 5.48 всё замечательно работает. А продвинутым спам ботом является бот ranker может потому что виста 64...грей 5,49 ну фиг с ним, часть работает и ладно Бот ranker - бот для скрытого набивания чат рагнов на хабе под управлением PtokaX ну дык я его даже не запускал, т.к. верлихаб...
Сообщение отредактировал deity - Понедельник, 29.12.2008, 16:00 |
|
|
|
Setuper | Дата: Понедельник, 29.12.2008, 16:10 | Сообщение # 37 |
Майор
Сообщений: 98
Репутация: 6
Статус: Offline
| Ну принцип бота состоит в том, что на хабе PtokaX, существуют команды, которые доступны только операторам, и если простой пользователь их использует, то команда не отправляется в чат а пользователю приходит сообщение о недоступности команды. Скрипты рангов не предусматривают эти команды, поэтому отправка этих команд набивает чат-ранг. Эти команды отправляются как сообщения в чат через установленный интервал, что по своей сути является как раз таки спам-ботом. Единственное, что если в настройках несколько сообщений, то они отсылаются случайным образом - это сделано чтобы обходить антифлуд.
lua master
|
|
|
|
Про[R]аб | Дата: Четверг, 08.01.2009, 01:15 | Сообщение # 38 |
Лейтенант
Сообщений: 73
Репутация: 3
Статус: Offline
| Вообщето грей не зависает а не открывается из за окна сообщения. Главное и окна этого тоже не видно. Пришлось убить последние строки в startup.lua DC():MessageBox(DC():ToUtf8("Программа: greylinkDC++ "..sVersion.."\r\nДиректория программы: "..DC():ToUtf8(DC():GetAppPath()).."\r\nЗапущены следующие боты:\r\n"..sBM), DC():ToUtf8("MoonADC++ Bot (Lua 5.1.3) by Setuper"), "ok", "warning") После все стало запускаться. Винда у меня 64бит. Может из за этого. И еще один вопросик! Как отучить бот приветствовать сообщения от хаба и ботов? А то на каждое сообщение он Здрасте и Приветствую.
Config comp: CPU-i7-2600K/RAM-32Gb/Video-GF580GTX-1200Mb/HDD-RAID0=2x240GB+RAID5=8x3Tb/Win7 64bit.
|
|
|
|
Setuper | Дата: Четверг, 08.01.2009, 01:35 | Сообщение # 39 |
Майор
Сообщений: 98
Репутация: 6
Статус: Offline
| Возможно и из-за разрядности не пашет, у меня всё нормально на win32. В основном файле startup.lua есть таблица tMain, в которой перечислены подключаемые модули. Если ставишь 1 - модуль включен, ставишь 0 - отключен. Для отключения приветствий нужно поставить: ["connector"]=0,
lua master
Сообщение отредактировал Setuper - Четверг, 08.01.2009, 01:38 |
|
|
|
Про[R]аб | Дата: Четверг, 08.01.2009, 02:09 | Сообщение # 40 |
Лейтенант
Сообщений: 73
Репутация: 3
Статус: Offline
| Quote (Setuper) В основном файле startup.lua есть таблица tMain, в которой перечислены подключаемые модули. Если ставишь 1 - модуль включен, ставишь 0 - отключен. Для отключения приветствий нужно поставить: ["connector"]=0, Стоит 0 В том и дело что приветствия идут от chatbot. Он почемуто реагирует на все сообщения хаба и ботов. например когото кикнули выходт вот такое сообщение: <[Ghost_of_HUB]> *** GetNickList флудер Anchil с IP 172.21.14.167 был отключён. А бот на это сообщение отвечает Привет! или Здрасте. И вроде слов похожих нет на что бот реагирует?
Config comp: CPU-i7-2600K/RAM-32Gb/Video-GF580GTX-1200Mb/HDD-RAID0=2x240GB+RAID5=8x3Tb/Win7 64bit.
|
|
|
|
Setuper | Дата: Четверг, 08.01.2009, 02:20 | Сообщение # 41 |
Майор
Сообщений: 98
Репутация: 6
Статус: Offline
| открой файл chatbot.func и посмотри на что он реагирует))) В данной фразе он среагировал на буквы hi: <[Ghost_of_HUB]> *** GetNickList флудер Anchil с IP 172.21.14.167 был отключён. Переделай фразы под себя.
lua master
Сообщение отредактировал Setuper - Четверг, 08.01.2009, 02:20 |
|
|
|
Про[R]аб | Дата: Четверг, 08.01.2009, 03:06 | Сообщение # 42 |
Лейтенант
Сообщений: 73
Репутация: 3
Статус: Offline
| Setuper, Спасибо, Я чет както сразу и не увидел. Придется все пересмотреть.
Config comp: CPU-i7-2600K/RAM-32Gb/Video-GF580GTX-1200Mb/HDD-RAID0=2x240GB+RAID5=8x3Tb/Win7 64bit.
|
|
|
|
Setuper | Дата: Четверг, 08.01.2009, 11:50 | Сообщение # 43 |
Майор
Сообщений: 98
Репутация: 6
Статус: Offline
| иногда полезно посмотреть что же все таки творит тот или иной скрипт)))
lua master
|
|
|
|
deity | Дата: Понедельник, 26.01.2009, 12:43 | Сообщение # 44 |
Полковник
Сообщений: 238
Репутация: 4
Статус: Offline
| подскажите, а есть какой-нибудь скрипт, чтобы создать hublist.xml.bz2 из списка своих хабов, чтоб удобно было поделиться им с другими пользователями
|
|
|
|
SMT | Дата: Понедельник, 26.01.2009, 19:05 | Сообщение # 45 |
Генерал-лейтенант
Сообщений: 514
Репутация: 28
Статус: Offline
| Quote (deity) подскажите, а есть какой-нибудь скрипт, чтобы создать hublist.xml.bz2 из списка своих хабов, чтоб удобно было поделиться им с другими пользователями легко написать. понадобится 2 файла. xslt-трансформер и java-скрипт, который его запустит файл fav2hublist.xsl Code <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="xml" encoding="utf-8"/>
<xsl:template match="/Favorites">
<Hublist Address="http://dchublist.ru/hublist.xml.bz2" Name="dchublist.ru xml hublist"> <Hubs> <Columns> <Column Name="Address" Type="string"/> <Column Name="Name" Type="string"/> <Column Name="Description" Type="string"/> <Column Name="Country" Type="string"/> </Columns> <xsl:for-each select="Hubs/Hub"> <xsl:element name="Hub"> <xsl:attribute name="Address"> <xsl:value-of select="@Server"/> </xsl:attribute> <xsl:attribute name="Name"> <xsl:value-of select="@Name"/> </xsl:attribute> <xsl:attribute name="Description"> <xsl:value-of select="@Description"/> </xsl:attribute> <xsl:attribute name="Country">Russian Federation</xsl:attribute> </xsl:element> </xsl:for-each> </Hubs> </Hublist>
</xsl:template>
</xsl:stylesheet> файл run.js Code var xsl = new ActiveXObject("MSXML2.DOMDOCUMENT.4.0"); var xml = new ActiveXObject("MSXML2.DOMDocument.4.0"); xml.validateOnParse = false; xml.async = false; xml.load("Favorites.xml");
if (xml.parseError.errorCode != 0) WScript.Echo ("XML Parse Error : " + xml.parseError.reason);
xsl.async = false; xsl.load("fav2hublist.xsl");
if (xsl.parseError.errorCode != 0) WScript.Echo ("XSL Parse Error : " + xsl.parseError.reason);
try { var dst = xml.transformNode(xsl.documentElement); var doc = new ActiveXObject("MSXML2.DOMDOCUMENT.4.0"); doc.loadXML(dst) doc.save("hublist.xml"); } catch(err) { WScript.Echo ("Transformation Error : " + err.number + "*" + err.description); } подкладываешь свой Favorites.xml, запускаешь run.js и у тебя выходит hublist.xml. дальше его можно заархивировать программой bzip2, но клиенты воспринимают и неархивированный
Сообщение отредактировал SMT - Понедельник, 26.01.2009, 19:12 |
|
|
|
|
|
|