Гост
Jun 22 2008, 09:27 PM
Здравеите, този ТЦЛ забранява използването на командата .мсг от бота към ЦС и НС трябва да сте описан в ТЦЛ-а и тогава вече ще можете да я използвате НО има следният БЪГ, когато направите някои оунър и тои влезе на партилаин и използва командата: .мсг цс ,ацц #Канал лист и бота му вали листа, бъга е тази , , ако някои може да ми каже какво да сложа в ТЦЛ-а, как да го оправя моля нека да сподели, надявам се че това ще е нужно и на много други хора, също така и да сте ме разбрали за какво точно ви говоря, благодаря ви предварително.
zeraful
Jun 22 2008, 09:43 PM
До колкото се сещам имаше някакъв начин, от party line, да опишеш кой (+o/m/n) какви команди може да ползва. Обаче не се сещам как точно ставаше номера, а и мисля, че не можеше да се ограничават командите на глобалните +n, но най-вероятно греша, някой ще ме поправи ;>
Narf
Jun 22 2008, 11:30 PM
unbind ?
Polizei
Jun 23 2008, 01:07 AM
A .dump някой сеща ли се да го unbind-ва? :>
Гост
Jun 23 2008, 07:26 AM
Аз питам другоо .. вие къде отидохте .. казвам ви че има бъг когато някои оунър напише команда с .мсг нс или цс - и след това сложи , надявам се вече да сте ме разбрали.
Narf
Jun 23 2008, 10:51 AM
QUOTE (Polizei @ Jun 23 2008, 02:07 AM)

A .dump някой сеща ли се да го unbind-ва? :>
Good point.
QUOTE (Гост @ Jun 23 2008, 08:26 AM)

Аз питам другоо .. вие къде отидохте .. казвам ви че има бъг когато някои оунър напише команда с .мсг нс или цс - и след това сложи , надявам се вече да сте ме разбрали.
При unbind на командата, тя вече не съществува - ако щеш с китайски йероглифи се опитвай да я изпълняваш.
А за bugfix се обърни към developer-ите на eggdrop.
Polizei
Jun 23 2008, 01:29 PM
Доколкото разбрах, бъга явно е в TCL-а, но същият тук се споменава само по име.
Ако автора на темата го ъпне, няма да е проблем да се фиксне, така че само permowner (owner според конфиг файла -- ``set owner "MrLame,MsLame"`` ако не се лъжа :>) да може да ползва telnet командите .msg и .dump.
ПС. Доколкото си спомням една подобна боза, .msg се bind-ваше наново, само че за n| (по default май беше o|o)
ППС. Всичките тези "велики" TCL-ки са абсолютно безсмислени, стига човек да си подбира кадърно юзерите в бота. Поне на теория...
Гост
Jun 23 2008, 03:08 PM
bind dcc -|- die denied:die
unbind dcc n|n die *dcc:die
proc denied:die {hand idx arg} {
global owner
set date [strftime %d.%m.%Y@%H:%M]
set msg [string tolower [lindex $arg 0]]
set text [lrange $arg 1 end]
if {[matchattr $hand n]} {
if {$msg=="ns" || $msg=="cs" || $msg=="?cs" || $msg=="Gliner" || $msg=="*cs" } {
if {$hand == "'"} {
putquick "PRIVMSG $msg :$text"
} else {
setuser $hand COMMENT "$hand използва командата .die в $date"
putdcc $idx "Опаа, вие туко що направихте голяма грешка !"
chattr $hand "-fhopmhjtxlEPTYXW+dk"
save
boot $hand "Вие използвахте командата .die която е напълно ЗАБРАНЕНА, за това ще бъдете НАКАЗАН !"
}
} else {
putquick "PRIVMSG $msg :$text "
}
} else {
putdcc $idx "Опаа, вие туко що направихте голяма грешка !"
setuser $hand COMMENT "$hand използва командата .die в $date"
chattr $hand "-fhopmhjtxlEPTYXW+dk"
save
boot $hand "Вие използвахте командата .die която е напълно ЗАБРАНЕНА, за това ще бъдете НАКАЗАН !"
}
}
Ето дано някои успее да орпави бъга да не може да се ползва .мсг цс ,ацц #Канала лист и другите ... благодаря предварително.
Arruor
Jun 24 2008, 12:22 AM
QUOTE(Гост @ Jun 23 2008, 03:08 PM)

bind dcc -|- die denied:die
unbind dcc n|n die *dcc:die
proc denied:die {hand idx arg} {
global owner
set date [strftime %d.%m.%Y@%H:%M]
set msg [string tolower [lindex $arg 0]]
set text [lrange $arg 1 end]
if {[matchattr $hand n]} {
if {$msg=="ns" || $msg=="cs" || $msg=="?cs" || $msg=="Gliner" || $msg=="*cs" } {
if {$hand == "'"} {
putquick "PRIVMSG $msg :$text"
} else {
setuser $hand COMMENT "$hand използва командата .die в $date"
putdcc $idx "Опаа, вие туко що направихте голяма грешка !"
chattr $hand "-fhopmhjtxlEPTYXW+dk"
save
boot $hand "Вие използвахте командата .die която е напълно ЗАБРАНЕНА, за това ще бъдете НАКАЗАН !"
}
} else {
putquick "PRIVMSG $msg :$text "
}
} else {
putdcc $idx "Опаа, вие туко що направихте голяма грешка !"
setuser $hand COMMENT "$hand използва командата .die в $date"
chattr $hand "-fhopmhjtxlEPTYXW+dk"
save
boot $hand "Вие използвахте командата .die която е напълно ЗАБРАНЕНА, за това ще бъдете НАКАЗАН !"
}
}
Ето дано някои успее да орпави бъга да не може да се ползва .мсг цс ,ацц #Канала лист и другите ... благодаря предварително.
Това, което си написал - би трябвало да забранява команда .die
Но щом държиш да е скрипт ...
CODE
unbind dcc - msg *dcc:msg
bind dcc Z msg denied:msg
proc denied:msg {hand idx arg} {
set msg [string tolower [lindex $arg 0]]
set text [lrange $arg 1 end]
if {$hand=="handle1" || $hand=="handle2" } {
putserv "PRIVMSG $msg :$text"
putdcc $idx "msg to $msg: $text"
putcmdlog "#$hand# Message to $msg: $text"
} else {
putdcc $idx "What? You need '.help'"
}
}
Иначе е по-лесно:
CODE
unbind dcc m|m chattr *dcc:chattr
unbind dcc - msg *dcc:msg
unbind dcc - msg *dcc:dump
bind dcc Z msg dcc:msg
bind dcc Z msg dcc:dump
bind dcc Z chattr dcc:chattr
Като си set-ваш флаг +Z, преди да добавеш тези дефиниции, иначе няма да можеш да променяш флагове
Гост
Jun 24 2008, 09:10 AM
Мерси много всичко ми свърши работа и в предната тема БЛАГОДАРЯ, а сега да не отварям нова тема направо тук да попитам нужен ми е още 1 ТЦЛ, които праща ноте само на пернаментния оунър, праща му ноте когато някои махне/сложи бан или делне/адне някои усер ( в бота ) или ако е ставало флоод и т.н. с една дума праща му ноте за всичко, надявам се пак да съм бил максимално ясен, благодаря ви предварително и специялно на Arruor.
Arruor
Jun 24 2008, 10:18 AM
Добавяш следния код в скрипта, където се добавя потребител
CODE
foreach ppl ${notify-newusers} {
sendnote $hand $ppl "User $hand added $user ([strftime %d.%m.%Y@%H:%M:%S])."
}
като трябва да имаш задължително дефинирана като глобална променливата notify-newusers (дефинирана е в конфигурационния файл на бота, чрез нея се указва кои потребители да бъдат известявани за добавяне на нов потребител).
Можеш да си напишеш свой процес за въпросното известяване при определени събития, като си предаваш като параметър и съобщението на note-то (alltools.tcl е подходящо място да се опише въпросния процес

)
Гост
Jun 24 2008, 10:21 AM
Този код които си дал, го имам в ТЦЛ-а, но уви показва че ми праща ноте, но фактически нищо не получавам .нотес реад алл ... ако имаш други идеи ..
Polizei
Jun 25 2008, 03:36 PM
Гост
Jun 26 2008, 04:05 PM
ТЦЛ за ноте не работи !
Arruor
Jun 29 2008, 09:53 PM
QUOTE(Гост @ Jun 26 2008, 05:05 PM)

ТЦЛ за ноте не работи !
Не работи чушки!!!!
CODE
[22:45:35] #Arruor# +user test *!*@*
[22:45:35] Added test (*!*@*) with no password and no flags.
[22:45:35] [b]Note [Arruor]: Potrebitel Arruor dobavil test (29-06-2008@22:48).[/b]
[22:49:17] *** test joined the channel.
[22:49:22] .-user test
[22:49:22] #test# -user test
[22:49:22] Deleted test.
[22:50:44] .notes read all
[22:50:44] tcl: builtin dcc call: *dcc:notes Arruor 10 read all
[22:50:45] 1. test (Jun 29 22:52): Potrebitel test iztril test (29-06-2008@22:52).
[22:50:45] #Arruor# notes read all
Както се вижда - note се праща, в случая съм логнат и си го чета. Когато аз добавям/изтривам/модифицирам потребител. Би било глупаво да не знаеш какво правиш, че да искаш да ти се праща note от собствения ти бот. Идеята на този скрипт е, когато НЯКОЙ друг добави, модифицира и/или изтрие потребител - ТОГАВА да уведомява указан(и) потребител(и) за корекцията.
Ще те помоля за в бъдеще преди да публикуваш въпрос - да помислиш внимателно за какво точно става дума и най-вече да се опиташ да си решиш сам проблема, вместо да мрънкаш като изгонена свекърва.
Гост
Jun 29 2008, 11:05 PM
Ха ... и само при мен сигурно не работи а ?
Polizei
Jun 30 2008, 03:18 AM
100% не си лоднал някой модул :/ (notes?

)
EDIT: Окей, т'ва бепе тъпо.
Но все пак, ако ${notify-newusers} е сетнато като $owner (както е по default в eggdrop.conf), то foreach-а, така както е в момента, ще се счупи.
CODE
foreach ppl [split ${notify-newusers} ","] {
sendnote $hand $ppl "User $hand added $user ([strftime %d.%m.%Y@%H:%M:%S])."
}
Така ми се чини, че е по-правилно, тъй като foreach доколкото помня цепеше даден стринг по шпации. Ако има няколко owner-а, описани в конфига, ще е фънки...
Ае, май нашия човек (пардон, юзер

) каза "тцл за ноте", а това в крайна сметка е само фрагмент код, който да се добави към даден тцл...
Гост
Jun 30 2008, 07:03 AM
Лоаднат е, и съм пробал сички вариянти пробвах и това което каза сега .. няма никакъв ефект : )
Това е семпла версия на форума. За да видиш пълната версия, която има повече информация, по-добра подредба и снимки,
натисни тук.