Jump to content

Помощ за ТЦЛ


Препоръчан пост

Здравейте!

Може би всеки е запознат с IRC(Internet relay chat), както навсякъде така и тука се нуждаем от 'телохранители' и роботи, които да свършват работата ни, когато ни няма ;)

От скорошното разбъркване на сервайсите, опциите и командите закъса и моят пазач, а по нета.. с тези новите изменения- няма. ;)

Една команда от новите изменения е.. от "/msg ns identify parola" - вече невалидна и заменена "/ns identify parola" или "/quote ns parola". Чудя се как ще стане синтаксиса -> за миналата беше : putserv PRIVMSG "NS: identify parola" , отдавна не бях се занимавал и това като ми дойде.. онемях.

И другото.. е поради честата злоупотреба на АКИК буг-а, *!*@* - добавянето на тази хостмаска към акик и това докарва до абсолютно "изчистен" канал.

Ще приложа два тцл-и, които са свързани с това, но в 'миналото', само да се редактира малко.. може би

Първото за глобален бан:

bind mode - *+b* e:bprot

proc e:bprot {n u h c m w} {

if {[string match "$w" "$::botname"]} {

putserv "PRIVMSG CS :akick $c add *!*@[lindex [split $uhost "@"] 1] $n don't ban (*!*@*) in this channel!"

putserv "PRIVMSG CS :akick $c del *!*@*"

}

}

 

Второто (по-дълго) за идентификация:

# tuk vuvedete vashata parola

set nsparola "password"

set nsnick "NS"

set csnick "CS"

set nshost "NS!NickServ@UniBG.Services"

set cshost "CS!ChanServ@UniBG.services"

 

bind notc - * e:rbsup

proc e:rbsup {n u h t d} {

if {([string tolower $n!$u] == [string tolower $::cshost]) && ([string match "You must be logged*" $t])} { identify x}

if {([string tolower $n!$u] == [string tolower $::nshost]) && ([string match "This nickname is owned*" $t])} { identify x}

if {[string match "Login successful" $t]} { set ::identified id }

if {[string match "Insufficient access on*" $t]} { set ::notadded([lindex $t 3]) x; timer 10

  1. )]

putlog "No acces to [lindex $t 3]"

}

}

 

bind dcc n rbsup e:dccrbsup

proc e:dccrbsup {h i a} {

set c [lindex $a 0]

if {$c == ""} { putdcc $i "Please specify a channel";return }

if {![validchan $c]} {putdcc $i "That channel doesnt't exist!"; return}

if {[string tolower [lindex $a 1]] == "off"} {

channel set $c need-op ""

channel set $c need-unban ""

channel set $c need-invite ""

putdcc $i "rbsup is off"

} {

channel set $c need-op "rbsup_op $c"

channel set $c need-unban "rbsup_unban $c"

channel set $c need-invite "rbsup_inv $c"

putdcc $i "rbsup successful setted to $c"

}

}

bind evnt - init-server identify

proc identify {type} {

if {[info exists ::identified]} {return}

if {$::botnick != $::nick} {putserv "$::nsnick :regain $::nick $::nsparola"; putlog "regain";return}

putserv "$::nsnick :id $::nsparola"

putlog "Identifying"

return

}

proc rbsup_op {c} {

if {![info exists ::identified]} { identify x }

if {[info exists ::notadded($c)]} { return }

putserv "$::csnick :op $c"

return

}

proc rbsup_unban {c} {

if {![info exists ::identified]} { identify x }

if {[info exists ::notadded($c)]} { return }

putquick "$::csnick :unban $c"

putserv "JOIN $c"

}

proc rbsup_inv {c} {

if {![info exists ::identified]} { identify x }

if {[info exists ::notadded($c)]} { return }

putserv "$::csnick :invite $c"

putquick "JOIN $c"

}

 

Надявам се да обърнете внимание на проблема ми.

Link to comment
Сподели другаде

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гост
Отговори на тази тема

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   Не можете да качите директно снимка. Качете или добавете изображението от линк (URL)

Loading...
×
×
  • Създай ново...