You should've spent that 12 hours actually reading the documentation, particularly the tcl-commands.doc that comes with eggdrop, and then you would have come across the documentation about "bind" and in particular:
(4) PUB
bind pub <flags> <command> <proc>
procname <nick> <user@host> <handle> <channel> <text>
Description: used for commands given on a channel. The first word
becomes the command and everything else is the text argument.
Module: irc
and then you would have figured out the command ".kicksource" is a command you type in channel, not dcc.
As far as changing console triggers, that's not so easy, you'd have to modify the source code afaik. Fortunately, since you're dealing with a pub bind, you just need to change THAT command's trigger from ".kicksource" to "!kicksource" if you wish.
from: bind pub n .kicksource kicksource
to: bind pub n !kicksource kicksource
Of course, you could change the bind to a dcc bind, but be aware that the dcc bind uses different parameters for the proc:
(2) DCC
bind dcc <flags> <command> <proc>
procname <handle> <idx> <text>
Description: used for partyline commands; the command is the first
word and everything else becomes the text argument. The idx is
valid until the user disconnects. After that, it may be reused,
so be careful about storing an idx for long periods of time.
Module: core
The script segment you posted does not appear to use the parameters from the pub bind (
nick host handle chan text) so it
should be safe to change the bind to a dcc bind (
but I'm assuming there is not more to the script that uses any of those parameters.)
If you change the bind to a dcc bind, you also have to change the parameters given to the proc:
Code: Select all
bind dcc n kicksource kicksource
proc kicksource {handle idx text} {
BUT..
Even if you change it to a dcc bind/proc, you'd still have to use the "dot" character to use the command, in other words:
bind dcc - !mycommand whatever
would still have to be activated like:
.!mycommand
usually dcc binds, just use "command" without any predicate, so when you run them, you do "dot<command>"
You could also make the trigger a msg bind/proc, if you just want to use the command privately, read the tcl-commands.doc about the various bind types.
Also, is there a particular reason you're running egghttp rather than the http package that comes with eggdrop? egghttp is deprecated afaik, and was replaced with the http package.