EpicNet.Ru - Форум IRC Чата

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » EpicNet.Ru - Форум IRC Чата » HELP SCRIPTS - Помощь по mIRC скриптам » Auto scan for BadNicks when MyBot or users join a channel


Auto scan for BadNicks when MyBot or users join a channel

Сообщений 11 страница 18 из 18

11

NOT WORK for me, no see error show. Try it again Epic. Thanks a lot my friend

P.S. I have already to turn all ON (Scan join nicks + Scan new nicks + Scan join me), but both of them NOT WORK.

12

1478,352 написал(а):

NOT WORK for me

У меня всё исправно и достаточно быстро работает, также как и в прошлый раз.
Попробуйте для тестирования использовать mIRC - только чистый клиент, без каких либо других скриптов.
Если этот скрипт по прежнему не будет работать, то тогда лучше обсудить вашу проблему в IRC чате.
Для подключения введите в вашем клиенте команду: /server -m irc.epicnet.ru 6667 -i Robert Robert_ Robert@Robert Robert -j #Code

Я отвечу вам, когда буду в онлайн и как только у меня появится свободное время.
Примечание: Присутствие моего ника в сети не означат, что я в онлайн, т.к. постоянное нахождение моего ника в чате поддерживается ZNC сервисом.

Подпись автора

[html]<style>img {vertical-align:middle;}.hnet{color:#FFFFFF;}.hstar{color:#DE0000;}.htext{font-family:Verdana;font-size:13px;color:#6E1E00;}.heading{font-family:Verdana;font-size:13px;font-weight:bold;background-color:#4897E7;}.stitle{font-family:Verdana;font-size:12px;}.dot{color:#808000;}.desc{color:#ADADAD;}a .curl{font-family:Verdana;font-size:13px;color:#3A92CD;}</style><table><tr><td width="20px" height="20px"><img src="https://forumstatic.ru/files/000d/c9/8c/34681.jpg"></td><td><a href="https://forum.epicnet.ru/viewtopic.php?id=234"><span class="heading"> <span class="hstar">★</span> <span class="hnet">EpicNet.Ru</span> <span class="hstar">★</span> </span><span class="htext"> - IRC Чат © 2008</span></a></td></tr><tr><td></td><td><div class="stitle"><span class="dot">•</span> <span class="desc">Вход через вебгейт:</span> <a href="http://irc.epicnet.ru"><span class="curl">http://irc.epicnet.ru</span></a><br><span class="dot">•</span> <span class="desc">Сервер:</span> irc.epicnet.ru <span class="desc">Порты:</span> 6667, 6668 (ssl)<br><div></td></tr></table>[/html]

13

Dear my friend Epic!

I have some edited on your code, then it work now for:  1. Check badnick on nicks join.  2. Change badnick kick ban

Check badnick on BOT join channel NOT WORK.

Could you please to have look my edited code and fixed it for me. Thanks a lot friend!

Note: Some time BOT check badnick on join channel, not at all.

Here is your code i have edited:

Код:
;######################################################################
;#  Name: Scan Bad Nicks v1.2  (edit by Robert, mod v1)
;#  Author: Epic (http://epicnet.ru, irc.epicnet.ru:6667 #Code)
;#  Description: Scans all joining, as well as nicknames already present on the channel, when the Bot itself joins the channel. If bad words from the “badwords.txt” file are found in the nickname names, then “Kick+Ban” is performed. 
;#  Path: All working files with which the script interacts must be located in the same folder where the script itself is located: "scripts\ScanBadNicks\". 
;######################################################################

menu * {
  - 
  [29] Scan Bad Nicks 
  .Start scanning: scan_start $chan
  .- 
  .Scan on nicks join (All)
  ..$iif(%sbn_nicks_join == on,$style(1)) ON: %sbn_nicks_join = on | echo -a Auto scan badnick when nicks joined is 03ON
  ..$iif(%sbn_nicks_join == off,$style(1)) OFF: %sbn_nicks_join = off | echo -a Auto scan when nicks joined is now 04OFF
  .-
  .Scan new nicks (All)
  ..$iif(%sbn_nicks_new == on,$style(1)) ON: %sbn_nicks_new = on | echo -a Auto scan when changing to new nicks is 03ON
  ..$iif(%sbn_nicks_new == off,$style(1)) OFF: %sbn_nicks_new = off | echo -a Auto scan when changing to new nicks is now 04OFF
  .-
  .Scan on me join (Bot)
  ..$iif(%sbn_me_join == on,$style(1)) ON: %sbn_me_join = on | echo -a Auto scan when me joined is 03ON
  ..$iif(%sbn_me_join == off,$style(1)) OFF: %sbn_me_join = off | echo -a Auto scan when me joined is now 04OFF
} 
;----------------------------------------------------------------------
#badnickscan on
on *:JOIN:#:{
  if (!$read($file_chans,nw,$chan)) { return }
  if ($nick == $me) { .ial on | ialfill $chan }
  if ($nick != $me) && (%sbn_nicks_join == on) { check_badnick $chan $nick }
}
;----------------------------------------------------------------------
on *:OP:#: {
  if (!$read($file_chans,nw,$chan)) { return }
  if (%sbn_me_join == on) && ($opnick == $me) { scan_start $chan }
}
;----------------------------------------------------------------------
on *:NICK: {
  if (%sbn_nicks_new == on) {
    var %nick $newnick, %i $comchan(%nick,0 )
    while (%i) {
      var %chan $comchan(%nick,%i)
      if ($read($file_chans,nw,%chan)) { check_badnick %chan %nick }
      dec %i
    }
  }
}
#badnickscan end
;----------------------------------------------------------------------
alias -l scan_start {
  if ($me !isop $1) { return }
  .enable #scanbadnicks | who $1 $+($chr(37),cn)
}
alias -l check_badnick {
  if ($me ison $1) && ($me isop $1) {
    var %f $file_badnick, %l $lines(%f), %i 1
    while (%i <= %l) {
      if ($+(*,$read(%f,nt,%i),*) iswm $2) { ban $+(-ku,$ban_timer) $1 $2 2 $kick_reason }
      inc %i
    }
  }
}
;----------------------------------------------------------------------
alias -l file_chans { return $mircdir $+ BADNICKSCAN_CHAN.txt } 
alias -l file_badnick { return $mircdir $+ nicksflood1.txt } 
alias -l ban_timer { return $rand(3600,10800) } 
alias -l kick_add_reason { return (for more information regarding your ban please join #HelpKick to ask for removal) } 
alias -l kick_reason { return 04([Banned ] (reason: BadNick/NickFlood/NickBlacklist are not permitted for this channel) [id: 1] - $kick_add_reason $+ ) }
;----------------------------------------------------------------------
#scanbadnicks off
raw 354:*: { check_badnick $2 $3 | haltdef }
raw 315:*: { .disable #scanbadnicks | haltdef }
#scanbadnicks end

14

Я проверил предоставленный вами код и у меня он работает исправно.

  • Единственное, что вам следует изменить это [mark=red]menu *[/mark] на [mark=blue]menu channel[/mark], т.к. скрипт делает проверку списка пользователей только в окнах канала, и не делает это в любых других окнах mIRC, соответственно меню также должно работать только, когда вы его открываете правой кнопкой мыши в окне канала.

  • Также непонятно, зачем вы добавили эти строки [mark=red]#badnickscan on / #badnickscan end[/mark] для создания группы, если это нигде не управляется в коде. Вероятно это может быть причиной периодической неработоспособности скрипта, когда по какой то причине отключается целый блок с группой кода, меняя режим "on" на "off" [mark=red]#badnickscan off[/mark], что приводит к отключению этой группы кода и блокирует работу необходимых обработчиков событий. Как правильно использовать группы в коде вы можете прочитать об этом здесь: https://en.wikichip.org/wiki/mirc/groups

  Убедительная просьба - если вы вносите какие то корректировки и изменения в код, который когда-то был написан мной, а потом вы публикуете этот код на форуме, то пожалуйста, в дополнение к моему авторству ставьте вашу подпись, что-то вроде этого "(edit by Robert, mod v1)", которая будет сообщать читателям, что этот код был изменён и отредактирован вами, и имеет свой индекс модификации исходного кода. Это нужно для того, чтобы не вводить читателей в заблуждение и чтобы исключить моё 100% авторство после новой редакции кода, в которой я не принимал участие, т.к. после этого могли появиться новые блоки с кодом, созданные в другом стиле, отличающимся от моего, в котором могут присутствовать лишние строки, символы или допущены различные синтаксические ошибки, приводящие к неисправности скрипта, или были внесены некорректные изменения, которые частично меняют функциональность или полностью ломают скрипт. Иными словами, если код был подвержен какому либо вмешательству/изменению, то об этом обязательно должна стоять соответствующая надпись (отметка) в коде, указывающая на автора внесённых изменений и индекс данной модификации. Спасибо.

Подпись автора

[html]<style>img {vertical-align:middle;}.hnet{color:#FFFFFF;}.hstar{color:#DE0000;}.htext{font-family:Verdana;font-size:13px;color:#6E1E00;}.heading{font-family:Verdana;font-size:13px;font-weight:bold;background-color:#4897E7;}.stitle{font-family:Verdana;font-size:12px;}.dot{color:#808000;}.desc{color:#ADADAD;}a .curl{font-family:Verdana;font-size:13px;color:#3A92CD;}</style><table><tr><td width="20px" height="20px"><img src="https://forumstatic.ru/files/000d/c9/8c/34681.jpg"></td><td><a href="https://forum.epicnet.ru/viewtopic.php?id=234"><span class="heading"> <span class="hstar">★</span> <span class="hnet">EpicNet.Ru</span> <span class="hstar">★</span> </span><span class="htext"> - IRC Чат © 2008</span></a></td></tr><tr><td></td><td><div class="stitle"><span class="dot">•</span> <span class="desc">Вход через вебгейт:</span> <a href="http://irc.epicnet.ru"><span class="curl">http://irc.epicnet.ru</span></a><br><span class="dot">•</span> <span class="desc">Сервер:</span> irc.epicnet.ru <span class="desc">Порты:</span> 6667, 6668 (ssl)<br><div></td></tr></table>[/html]

15

Dear Epic!

1. I have already to change menu * to menu channel

2. Why you added these lines #badnickscan on / #badnickscan end <== Because i can use this command: !badnick <on|off> to turn On or Off group #badnickscan from anywhere.

3. I don't know why the code check on ME JOIN scan badnick is NOT WORK. (P/s: On Op event, On Nick event, Scan start and On Nick join WORK PERFECT)

Can you rewrite the code to check on ME JOIN and scan badnick on the channel? Thanks in advance

16

1482,352 написал(а):

Because i can use this command: !badnick <on|off> to turn On or Off group #badnickscan from anywhere.

Хммм..., но я не увидел в предоставленном вами коде необходимого обработчика событий "ON TEXT" для создания подобной команды.


1482,352 написал(а):

Can you rewrite the code to check on ME JOIN and scan badnick on the channel?

Я не знаю, что ещё нужно переписать в коде, чтобы это заработало у вас, т.к. у меня весь функционал скрипта работает исправно - следовательно я уже создал для вас полностью рабочий и исправный скрипт. Вероятно причина вашей проблемы кроется в особенностях AdiIRC, тогда как я создаю и тестирую все скрипты только в mIRC. Поэтому в дальнейшем вам придётся самостоятельно решать подобные проблемы по адаптации скриптов для вашего IRC клиента. Также вы можете обратиться в тех-поддержку AdiIRC по вопросу неработоспособности некоторых mIRC скриптов, которые по факту являются исправными, но они некорректно работают в AdiIRC. Или же вы можете просто попробовать использовать mIRC для вашего Бота.

Попробуйте изменить 35-ю строку в вашем коде:

Код:
if (%sbn_me_join == on) && ($opnick == $me) { scan_start $chan }

На эту строку:

Код:
if (%sbn_me_join == on) && ($opnick == $me) { .ial on | ialfill $chan | .timerSBN 1 5 scan_start $chan }
Подпись автора

[html]<style>img {vertical-align:middle;}.hnet{color:#FFFFFF;}.hstar{color:#DE0000;}.htext{font-family:Verdana;font-size:13px;color:#6E1E00;}.heading{font-family:Verdana;font-size:13px;font-weight:bold;background-color:#4897E7;}.stitle{font-family:Verdana;font-size:12px;}.dot{color:#808000;}.desc{color:#ADADAD;}a .curl{font-family:Verdana;font-size:13px;color:#3A92CD;}</style><table><tr><td width="20px" height="20px"><img src="https://forumstatic.ru/files/000d/c9/8c/34681.jpg"></td><td><a href="https://forum.epicnet.ru/viewtopic.php?id=234"><span class="heading"> <span class="hstar">★</span> <span class="hnet">EpicNet.Ru</span> <span class="hstar">★</span> </span><span class="htext"> - IRC Чат © 2008</span></a></td></tr><tr><td></td><td><div class="stitle"><span class="dot">•</span> <span class="desc">Вход через вебгейт:</span> <a href="http://irc.epicnet.ru"><span class="curl">http://irc.epicnet.ru</span></a><br><span class="dot">•</span> <span class="desc">Сервер:</span> irc.epicnet.ru <span class="desc">Порты:</span> 6667, 6668 (ssl)<br><div></td></tr></table>[/html]

17

Line 35 is ON OP event? This event is work, no need rewrite.

I want to rewrite for check ON JOIN event: check on Bot join channel room and scan badnick and Kick+Ban if found.

Thanks in advance.

18

Вы же ранее предлагали использовать обработчик события "ON OP" для запуска проверки всех ников канала, как только Бот получит статус @ "OP"  ??? ... 

Ок. Попробуйте изменить в вашем коде эту часть так:

Код:
on *:JOIN:#:{
  if (!$read($file_chans,nw,$chan)) { return }
  if ($nick == $me) && (%sbn_me_join == on) { .ial on | ialfill $chan | .timerSBN $+ $chan 1 5 scan_start $chan }
  if ($nick != $me) && (%sbn_nicks_join == on) { check_badnick $chan $nick }
}
;----------------------------------------------------------------------
on *:OP:#:{
  if (!$read($file_chans,nw,$chan)) { return }
  if ($opnick == $me) { echo -a Here the Bot must do something when it receives @OP on the channel $chan ... }
}

Это должно работать, но теперь это никак не будет связано с событием "ON OP", т.к. проверка будет запускаться при срабатывании события "ON JOIN".
Вы можете самостоятельно отрегулировать в таймере "timerSBN" подходящее вам время задержки в секундах. Сейчас оно настроено на 5 секунд.
Также, если после этого вам больше не требуется использовать обработчик события "ON OP", то просто удалите его из вашего кода, вместе с телом события.

Подпись автора

[html]<style>img {vertical-align:middle;}.hnet{color:#FFFFFF;}.hstar{color:#DE0000;}.htext{font-family:Verdana;font-size:13px;color:#6E1E00;}.heading{font-family:Verdana;font-size:13px;font-weight:bold;background-color:#4897E7;}.stitle{font-family:Verdana;font-size:12px;}.dot{color:#808000;}.desc{color:#ADADAD;}a .curl{font-family:Verdana;font-size:13px;color:#3A92CD;}</style><table><tr><td width="20px" height="20px"><img src="https://forumstatic.ru/files/000d/c9/8c/34681.jpg"></td><td><a href="https://forum.epicnet.ru/viewtopic.php?id=234"><span class="heading"> <span class="hstar">★</span> <span class="hnet">EpicNet.Ru</span> <span class="hstar">★</span> </span><span class="htext"> - IRC Чат © 2008</span></a></td></tr><tr><td></td><td><div class="stitle"><span class="dot">•</span> <span class="desc">Вход через вебгейт:</span> <a href="http://irc.epicnet.ru"><span class="curl">http://irc.epicnet.ru</span></a><br><span class="dot">•</span> <span class="desc">Сервер:</span> irc.epicnet.ru <span class="desc">Порты:</span> 6667, 6668 (ssl)<br><div></td></tr></table>[/html]


Вы здесь » EpicNet.Ru - Форум IRC Чата » HELP SCRIPTS - Помощь по mIRC скриптам » Auto scan for BadNicks when MyBot or users join a channel