Live dc++ forum
Форма входа
Логин:
Пароль:
Главная | Клиентские скрипты (greylink) - Страница 5 - Форум | Четверг, 25.04.2024, 06:37
[ Новые сообщения · Участники · Правила форума · Поиск
Форум » >> » DC++ » Клиентские скрипты (greylink)
Клиентские скрипты (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. запуск командой

Code
/luafile spam.lua


Сообщение отредактировал livedc - Четверг, 19.03.2009, 20:19
 
SMTДата: Воскресенье, 01.02.2009, 18:06 | Сообщение # 61
Генерал-лейтенант
Сообщений: 514
Репутация: 28
Статус: Offline
Quote (Ukito)
Я так и непонял как работает функцыя DC():RunTimer(1)

RunTimer(1) заставляет выполняться dcpp.OnTimer каждую секунду,
RunTimer(0) прекращает выполнение

а уже сама функция dcpp.OnTimer считает, сколько раз её вызвали и каждый 60-й раз (если надо что-то делать раз в минуту) что-то делает полезное

 
Про[R]абДата: Воскресенье, 01.03.2009, 21:39 | Сообщение # 62
Лейтенант
Сообщений: 73
Репутация: 3
Статус: Offline
Ребят! А можетли кто нить написать скриптик?
А то ведь я ни бум-бум а очень хотелосьбы.
Помысел у меня таков...
Надо чтоб скрипт получал инфу от юзера вошедшего на хаб (слоты,скорость отдачи, описание шары, ну и Т.Д.)
и взависимости от инфы посылал текстовую строку в чат!
Ну типо если у юзера ограничение скорости стоит 50 кб/с, то скрипт пошлет строку в чат с ником и строкой" могбы и увеличить скорость отдачи.
Ну и со слотами и с другими переменными можно также постуить.
А если ты оп, то в место писанины можно и кикнуть на 5 мин.

Тока вы не путайте с автобаном в самом грее! Нужен именно скрипт, так как он более гибок, и на любую ситуцию можно настроить как нужно тебе.

Ну так как считаете? Можно такое реализовать?


Config comp: CPU-i7-2600K/RAM-32Gb/Video-GF580GTX-1200Mb/HDD-RAID0=2x240GB+RAID5=8x3Tb/Win7 64bit.
 
SMTДата: Понедельник, 02.03.2009, 09:55 | Сообщение # 63
Генерал-лейтенант
Сообщений: 514
Репутация: 28
Статус: Offline
Quote (Про|R|аб)
как считаете? Можно такое реализовать?

можно. но если ты в скриптах "ни бум-бум", то попотеть придётся изрядно

сложность там в массовой обработке "входа" юзеров, когда ты сам заходишь на хаб. нужно организовывать очередь сообщений, доставать из неё и выкидывать на хаб по 1-2 сообщения в секунду, чтобы хаб тебя не кикнул за флуд

 
Про[R]абДата: Понедельник, 09.03.2009, 19:56 | Сообщение # 64
Лейтенант
Сообщений: 73
Репутация: 3
Статус: Offline
biggrin Ктобы еще взялся бы за такой скриптик.

Config comp: CPU-i7-2600K/RAM-32Gb/Video-GF580GTX-1200Mb/HDD-RAID0=2x240GB+RAID5=8x3Tb/Win7 64bit.
 
Steel_JackalДата: Четверг, 19.03.2009, 19:32 | Сообщение # 65
Рядовой
Сообщений: 2
Репутация: 0
Статус: Offline
Приветствую всех!
Дело вот чем, захотел переделать вот этот скрипт

Quote
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

DC():MessageBox(text, "spam.lua", "ok", "info")
DC():RunTimer(1)

чтоб он делал вывод каждый раз нового и разного сообщения из переменной типа

Quote
messages = {[[Текст1]],
[[Текст2]],
[[Текст3]],
[[Текст4]]}

но у меня нечего невышло, так как в LUA мои познания не велики.
Мог бы мне ктото помочь, и если не составит труда то сделать так чтоб ети строки брались из текстового файла.

Целесообразность: зделать рекламу для ресурса сети, вручную все рекламировать неудобно и долго, да и на хабе стоит защита что нельзя выводить два идентичных сообщения. В сети есть новый сервис и спецеализированный форум, но популярностю они не пользуються, так как про них мало кто еще знает, потому надо привлечь массы.

Заранее спасибо.

 
hmuryДата: Четверг, 19.03.2009, 20:37 | Сообщение # 66
Генерал-лейтенант
Сообщений: 599
Репутация: 32
Статус: Offline
где-то проплывал скрипт, который выкидывает случайную строку из файла в чат хаба localhost, от него и копай

Code

file = io.open(DC():GetAppPath() .. "Settings/Favorites.xml", "r")
messages = { }
i = 1

for line in file:lines() do
   messages[i] = line
   i=i+1
end

DC():SendPublicMessage("127.0.0.1", messages[math.random(i-1)])
 
Steel_JackalДата: Пятница, 20.03.2009, 16:48 | Сообщение # 67
Рядовой
Сообщений: 2
Репутация: 0
Статус: Offline
Quote (hmury)
где-то проплывал скрипт, который выкидывает случайную строку из файла в чат хаба localhost, от него и копай

Спасибо, за вывод)

Добавлено (20.03.2009, 16:48)
---------------------------------------------
Чето лепи лепил, так ща скрипт вообще работать нехочет (даже оригинальный, хотя раньше все работало норм). Зделайте, прошу.

Сообщение отредактировал Steel_Jackal - Четверг, 19.03.2009, 22:12
 
AirKiteДата: Суббота, 21.03.2009, 11:25 | Сообщение # 68
Рядовой
Сообщений: 2
Репутация: 0
Статус: Offline
Где можно взять инфу о функциях таких как
DC():SendPublicMessage - вот это отсыл в паблик сообщения

как бы мне нужно чтобы по определённой команде тот кто написал писал в Приват...
тоесть получается нужны функции чтобы брать текст из паблика, ставить условие типа на !commanda
чтобы брал ник того кто написал и отправлял в ЛС сообщение...
Так вот какая функция вобще отправления в приват?

вот Sample1.lua

Code

dcpp = {}

function dcpp.OnPrivateMessage(cid, msg)

         -- DC():PrintDebug("OnPrivateMessage: CID=" .. cid .. ", msg=" .. msg);

         local userInfo = DC():GetUserInfo(cid)

         if (userInfo.ME ~= "1") then
                 DC():SendPrivateMessage(cid, "hello, " .. userInfo.NI ..  "; why did you said: " .. msg .. "?")
         end

         return nil
end

DC():PrintDebug("* LUA-BOT loaded")
DC():Beep(600,50)
DC():Beep(0,50)
DC():Beep(800,100)

Я так понимаю function dcpp.OnPrivateMessage(cid, msg) эта функция вызывается при отправки клиенту в приват... на котором стоит скрипт cool
Помогите найти функцию которая вызывается при отправке сообщения в паблик.... smile
Ещё бы можно было функци при входе и выходе пользователей... или вобще FAQ по этому делу ))) На любом языке... Заране спасибо! biggrin

Добавлено (21.03.2009, 11:25)
---------------------------------------------
Вобщем немного покапался... немного разобрался...
Кто может реализовать следующее:
При коннекте юзера ему пишет в приват сообщение, мол приветсвую и тд и тп biggrin
Далее, ник юзера заносится в список чтобы не надоедать ))) 1 раз отправил и всё...

тоесть кто реализует простенький скрипт чтобы при входе проверял нету ли в списке такова ника.. если нету то няте письмецо мол happy Заранее блогодарен!

 
SerJoДата: Четверг, 30.04.2009, 21:23 | Сообщение # 69
Полковник
Сообщений: 186
Репутация: 3
Статус: Offline
Ребят, кто может написать скрипт для вареза не на хабе, а независимо в клиенте, т.е. я например шарю данные и хочу занести новую информацию в свою базу и в дальнейшем её разослать пользователям(при этом реализовать команду отказа от дальнейших рассылок у пользователей), далее Пользователи могут добавить свой релиз в базу ко мне, либо удалить, либо посмотреть полностью базу. Короче, кто-нибудь может мне помочь с созданием скрипта типо FreshStuff. У меня в сети просто админы отморозки не хотят внедрят полезности, а я не могу поднять хаб т.к. компутер рабочий и его выключают. А я как энтузиаст хочу развить и сделать удобнее фаилообмен в нашей сети. Буду признателен за помощь, прошу не игнорировать если есть подобный скрипт скинте ссылку.

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

Или же напротив дать возможность присваивать определенному расширению - описания. Пример: *.avi, *.wmv, *.mpg...... возможность добавить к шаре описание и качество, аналогично с музыкой - стиль и битрейт...

Ладно, что-то меня понесло =)........ последнее впишу в хотелки smile


Запретный плод пользуется популярностью у народа только из-за того, что он запретный, будь он легален - интерес у народа значительно уменьшился б, после критического возрастания :) => легально — не интересно))))
 
hmuryДата: Четверг, 30.04.2009, 21:45 | Сообщение # 70
Генерал-лейтенант
Сообщений: 599
Репутация: 32
Статус: Offline
Quote (SerJo)
Ребят, кто может написать скрипт для вареза не на хабе, а независимо в клиенте, т.е. я например шарю данные и хочу занести новую информацию в свою базу и в дальнейшем её разослать пользователям(при этом реализовать команду отказа от дальнейших рассылок у пользователей), далее Пользователи могут добавить свой релиз в базу ко мне, либо удалить, либо посмотреть полностью базу. Короче, кто-нибудь может мне помочь с созданием скрипта типо FreshStuff. У меня в сети просто админы отморозки не хотят внедрят полезности, а я не могу поднять хаб т.к. компутер рабочий и его выключают. А я как энтузиаст хочу развить и сделать удобнее фаилообмен в нашей сети. Буду признателен за помощь, прошу не игнорировать если есть подобный скрипт скинте ссылку.

не изобретай убогий велосипед. 2 строчки описания это очень мало. лучше поставь бесплатный форум и пусть релизеры создают темы - по одной теме на каждый релиз, с magnet-ссылками. там можно и оформить разными цветами/стилями, приложить картинки/скриншоты, писать комментарии
Quote (SerJo)
нет возможности создавать прямую ссылку на папку, а следовательно и описания...

ссылок на папку сделали аж 3 разных, но в живую (на форумах), я не видел, чтобы этим пользовались. свои описания в результатах поиска тоже не торопятся открывать. 90% возможностей не используется. в принципе, юзеры довольны стронгом или флаем, поэтому пыжиться выдумывать выкрутасы бесполезно - никому это не надо. все нововведения должны идти от главного клиента - strongDC, иначе они просто не приживутся


Сообщение отредактировал hmury - Четверг, 30.04.2009, 21:48
 
SerJoДата: Четверг, 30.04.2009, 22:15 | Сообщение # 71
Полковник
Сообщений: 186
Репутация: 3
Статус: Offline
Quote (hmury)
....... все нововведения должны идти от главного клиента - strongDC, иначе они просто не приживутся

Ты не понял меня, почему не приживутся?!
я понял, что ты говоришь типо этой фитчи не будет в стронге и она будет не востребована. Но грэй и так отличается от аналогов множеством нововведений присущих только ему, что его и делает индивидуальным... так что думаю кому-то бесполезно, а кому-то очень полезно ))


Запретный плод пользуется популярностью у народа только из-за того, что он запретный, будь он легален - интерес у народа значительно уменьшился б, после критического возрастания :) => легально — не интересно))))
 
KURAGEДата: Пятница, 29.05.2009, 13:30 | Сообщение # 72
Генерал-майор
Сообщений: 412
Репутация: 9
Статус: Offline
Я изменил скрипт под себя, помогите как впихнуть туда время задержки отправки, вероятность ответа, хаб.
Можете помочь или хотябы дайте chatbot.func в LUA зарание спасибо.
Скрипт примерно как chatbot в MoonADC.0.8.5.7 только тупее мне бы хотелось чтоб он был как chatbot в MoonADC.0.8.5.7
Code

dcpp = {}

BotSay = {
         {
             ["question"] = {"привет","хай",},
             ["answer"] = {"привет =)",},
         },
         {
             ["question"] = {"пока","бай",},
             ["answer"] = {"увидимся","счастливо","спокойного дня ))"},
         },
}

function dcpp.OnPublicMessage(cid, msg)
             local userInfo = DC():GetUserInfo(cid)
              if (userInfo.ME ~= "1") then
               local huburl = userInfo.HL
                for _, mini_table in pairs(BotSay) do
                 for _, trigger in pairs(mini_table["question"]) do
                  if string.find(msg, trigger) then
                   DC():SendPublicMessage(huburl, mini_table["answer"][math.random(1,table.getn(mini_table["answer"]))])
                        return nil
                        end
                             end
                     end
             end

             return nil
end


Сообщение отредактировал KURAGE - Пятница, 29.05.2009, 18:34
 
SerJoДата: Среда, 03.06.2009, 15:05 | Сообщение # 73
Полковник
Сообщений: 186
Репутация: 3
Статус: Offline
Парни, помогите мне. как указать в настройках путь к корню программы, к примеру не С:\DC++\Downloads а %ProgramFolder%\Downloads. Прошу помогите, собераю свой клиент для своей локальной сети, у нас масса Чайников, которые до сих пор не могут нормально настроить ДС++.

Добавлено (03.06.2009, 15:05)
---------------------------------------------
я не много не в той теме отписался, извиняюсь за оффтоп


Запретный плод пользуется популярностью у народа только из-за того, что он запретный, будь он легален - интерес у народа значительно уменьшился б, после критического возрастания :) => легально — не интересно))))

Сообщение отредактировал SerJo - Среда, 03.06.2009, 15:09
 
hmuryДата: Среда, 03.06.2009, 15:43 | Сообщение # 74
Генерал-лейтенант
Сообщений: 599
Репутация: 32
Статус: Offline
Quote (SerJo)
Парни, помогите мне. как указать в настройках путь к корню программы, к примеру не С:\DC++\Downloads а %ProgramFolder%\Downloads. Прошу помогите, собераю свой клиент для своей локальной сети, у нас масса Чайников, которые до сих пор не могут нормально настроить ДС++.

например, так .\Downloads - показывается на %greylink_folder%\Downloads
 
SerJoДата: Среда, 03.06.2009, 16:02 | Сообщение # 75
Полковник
Сообщений: 186
Репутация: 3
Статус: Offline
Я уже разобрался, обидно что со звуками это не катит smile Может кто скажет, как быть?

Запретный плод пользуется популярностью у народа только из-за того, что он запретный, будь он легален - интерес у народа значительно уменьшился б, после критического возрастания :) => легально — не интересно))))

Сообщение отредактировал SerJo - Среда, 03.06.2009, 16:03
 
Форум » >> » DC++ » Клиентские скрипты (greylink)
Поиск:


В движке поковырялся LiveDC :p © 2024
Сделать бесплатный сайт с uCoz