Open
Bug 44423
Opened 24 years ago
Updated 14 years ago
Tracker Bug, implement irc [76] commands
Categories
(Other Applications :: ChatZilla, enhancement, P3)
Other Applications
ChatZilla
Tracking
(Not tracked)
NEW
People
(Reporter: timeless, Unassigned)
References
Details
<general> dns, hash, ison, kill, kline, list, mode, notice, links, time, trace, unkline, user, userip, userhost, users, version, wallops, whowas <moznet> admin, die, dline, error, htm, info, locops, lusers, oper, operwall, pass, rehash, restart, set, sjoin, squit, stats, svinfo <undernet> cnotice, connect, cprivmsg, create, destruct, desynch, gline, map, proto, settime, silence, uping, wallchops <efnet> capab, knock, locops, ltrace, testline <dalnet> akill, dccallow, chanserv, chatops, globops, gnotice, goper, identify, memoserv, operserv, rakill, samode, services, statserv, svskill, svsmode, svsnick, svsnoop, unsqline, watch, zline -- Those are the only commands i know we're missing. How to tackle this bug? It probably needs to be blocked by a few bugs, one for each network, and some for general features. Where should these things be implemented? I think the general features should go w/ the core chatzilla, but special network specific commands should probably go into scripts that are grouped with the irc network that supports them. This list was designed to not include duplicates, and I surveyed the networks in the order listed, many of the commands probably should be considered general, but I'm not advocating them [die is a general command but it's a server command that probably isn't used often; hash is a general server command that is also rarely used but isn't dangerous]
Updated•24 years ago
|
QA Contact: rginda → David
Comment 1•24 years ago
|
||
*MASS SPAM* Changing QA contact on all open or unverified ChatZilla bugs to me, David Krause, as I am now the QA contact for this component.
Comment 2•24 years ago
|
||
I like the way mIRC just sends a command to the server if it isn't familiar with the command. That works for all comands that don't require a colon.
Comment 3•23 years ago
|
||
with the recent landing of the new chatzilla code some of these commands can be marked as completed: list for example is now implemented. :) Others are successfully passed through to the server as suggested previously, after the client mentions that they're unrecognized and it's just guessing. (dns, ison, time, kline, links, users, userhost, version, whowas, mode... there are probably more, but most of the interesting ones require ircop status, so I can't really test them.) One other has been aparently removed... quit. (it shows up on the opening info list, but trying to call it barfs with command not implemented.)
Comment 4•23 years ago
|
||
before all these changes, there was an /exit command to disconnect from all servers and close chatzilla, and /quit to just disconnect from the current server. I figured I wasn't the only one who could never remember which command did what, so I renamed /quit to /disconnect, but left the help info for /quit there (it says "This command has been replaced by /disconnect".) I'll probably either take /quit out altogether, or make it an alias for /exit in the next round of patches.
Comment 5•23 years ago
|
||
/quit shouldn't be listed in help if typing /quit just results in the message "use /disconnect to disconnect from a single server or /exit to leave chatzilla".
Comment 6•23 years ago
|
||
Should there be an /ignore command in chatzilla?
Comment 7•23 years ago
|
||
If someone were to provide reasonable parameters and helptext for each of these commands, they would be helping alot. See <http://lxr.mozilla.org/mozilla/source/extensions/irc/xul/locale/en-US/chatzilla.properties> for an example of the existing commands. Any command that can be implemented by just sending the command an list of parameters directly as supplied by the user can be implemented by providing the helptext and hooking it up to "onSimpleCommand" in commands.js.
Status: NEW → ASSIGNED
/ignore is now bug 111475
Comment 9•23 years ago
|
||
Please add support for SQUERY - ircnet's way of talking to services. Syntax is SQUERY <target> :<text>.
Comment 10•23 years ago
|
||
For reference: all common IRC commands, including special features of the ircu servers (undernet-like): http://www.student.uib.no/~st01369/ccosmos/ccosmos.html I would also like to see the variant of /whois /whois <nick> <nick> (the nick repeated two times) implemented. For networks with multiple servers (the big four, and many others), it takes some more information from the local server of <nick> such as the user idle time. This would be very useful... at least for me :)
Comment 11•22 years ago
|
||
Remove myself from QA of 33 open Chatzilla bugs and change to default QA contact, since I have no way to verify these easily. Still no working Mozilla on my primary platform and it doesn't look like it will happen anytime soon. :(
QA Contact: mozilla → samuel
Comment 12•21 years ago
|
||
dns, hash: I believe these are debugging commands and aren't intended for general use (esp by clients), at least on undernet. ison: http://www.zvon.org/tmRFC/RFC1459/Output/chapter5.html#sub8 used to implement NOTIFY (which isn't a server command) kill: /kill <nick> :message IRC operator command to remove a user from a network (with "message") kline: Not on Undernet list: /list, different networks provide different features, On Undernet /list <parameters> Where (parameters) is a space- or comma-separated list of one or more of: < max_users Show all channels with less then max_users. > min_users Show all channels with more then min_users. C < max_minutes Channels that exist less then max_minutes. C > min_minutes Channels that exist more then min_minutes. T < max_minutes Channels with a topic last set less then max_minutes ago. T > min_minutes Channels with a topic last set more then min_minutes ago. For example: /list <3, >1, C <10 lists channels with less than three users and more than one (i.e., two) and which are less than 10 minutes old. A simpler example (and more typical of the way people use it) is /list >10, to list channels with more than 10 people. As it always has, the /list command does not list secret or private channels (see section 3 for more information on these). mode: there are channel modes and user modes Undernet channel modes: b +b <mask> or -b <mask> - ban/unban a user i +i or -i - set invite only k +k <key> or -k <key> - set/remove a key (password) for a channel l +l <limit> or -l - set/remove a limit (note -l doesn't take a parameter) m +m or -m - set/clear moderated, only +v or +o users can speak n +n or -n - set/clear no external notices, only people on the channel can speak o +o <nick> or -o <nick> - set/clear ops on a channel p +p or -p - set "Private" channels (don't appear in /list), cannot be set at the same time as +s s +s or -s - set "Secret" channel (don't appear in /list or /whois), cannot be set at the same time as +p t +t or -t - ops only can set topic v +v <nick> or -v <nick> - voiced can speak on +m channels (on undernet, can speak if +ban'd too) User modes: d - sets the user unable to recieve public messages, used by services and bots. Undernetism. i - invisible, doesn't show up in queries (such as /who) unless you are on a common channel o - oper'd s - +s [<snomask>] or -s [<snomask>] snomasks are an Undernetism, documented http://cvs.undernet.org/cgi-bin/viewcvs.cgi/undernet-ircu/ircu2.10/doc/snomask.html?rev=1.2&content-type=text/vnd.viewcvs-markup w - recieves /wallusers k - unkillable, unkickable. this user cannot be /kill'd or /kick'd, cann't be set by users (set only by services) g - recieve debuG messages undernetism. x - host hidden. if set, and user is logged in, their host is shown as @<username>.users.undernet.org, undernetism. notice: /notice <target> :<message> <target> = channel @<channel> = ops on a channel (not supported by all networks) +<channel> = voice+ops on a channel (not supported by many networks, conflicts with modeless channels) <ident>@<server> = send to user on specific server, used especially on undernet to talk to services. Note <ident> isn't nick. $<mask> = send to all users on a server matching mask (undernet only?) $#<mask> = send to all users who's host matches <mask> (undernet only?) links: http://www.zvon.org/tmRFC/RFC1459/Output/chapter4.html#sub3 time: Shows the server time, http://www.zvon.org/tmRFC/RFC1459/Output/chapter4.html#sub3 trace: shows the hops between you and a server/channel/user /trace <target> oper only on Undernet. http://www.zvon.org/tmRFC/RFC1459/Output/chapter4.html#sub3 unkline: Not on undernet user: Used in registration, USER <preferedident> <unused> <unused> :<realname> userip: Undernetism, /userip <nick> shows the users real IP, used to catch users spoofing DNS. Works just like USERHOST. userhost: /userhost <nick> returns the users nick. Often used by scripts or clients. (often used to implement /ban <nick>, get the userhost of <nick> then ban them) users: the command is /lusers, syntax /lusers [<server match>] [<server>] server match is ignored on undernet. Remote queries are oper only on Undernet. version: /version <server> returns the version that the server is running. Oper only on undernet. wallops: /wallops :<message> Sent to all +w users, oper only. On Undernet it's sent to all opered +w clients only, use /wallusers :<message> to send to all +w users. whowas: /whowas <nick> looks up <nick> in the whowas information. admin: /admin [<server>] = returns the admin contact for a server, oper only under undernet. Some servers allow this command during registration. die: /die [:<reason>] = causes the IRC server to exit. Oper only. error: Ignored by the server, sent by the server in case of critical errors (before dumping the client). /error :<message> htm: High Transfer Mode. Hybridism. info: /info [<server>] returns the GPL and who worked on the daemon and other useless information. oper: /oper <nick> :<password> allows an IRC operator to become uh, an oper. sets usermode +o (may also set +w and +s depending on the server) operwall, oper only wallops. pass: sends password for passworded I:lines, needed to connect. rehash - reload the config oper only restart - /restart <message>, restarts the irc server, Oper only, sjoin - server <->server only command, hybridism squit - /squit <server> :<reason> disconnects a server stats - /stats <type> [<server>], queries information about the server. cnotice - /cnotice <nick> <channel> :<message> sends <message> to <nick> who is on <channel> which you have ops on, without using up a "target", Undernetism. Mostly automatically used by clients/scripts instead of /notice when the criteria is met. connect - /connect <servera> [<port>] [<serverb>], connects <servera> to the network, using port <port> (if not defined used the one from the config), from serverb if defined. cprivmsg - same as cnotice create - ignored destruct - ignored (server to server) desynch - server<->server only gline - /gline <mask> show all glines matching mask /gline +<mask> <duration> :<reason> - sets a temp server ban on <mask>, oper only /gline -<mask> <duration> :<reason> - removes a ban on <mask>, oper onyly map - show a pretty version of /links, undernetism, oper only. proto - unused settime - oper only command to change the servers idea of time silence - /silence +<mask> - add mask to your silence list (can't recieve messages from mask> /silence -<mask> - remove mask from your silence list /silence [<nick>] - show <nick>'s silence list (if not specified your own) uping - oper only feature to send a udp ping to a server to test it for connectivity while it's squit - /uping <dest> [<number>] [<fromserver>] wallchops - /wallchops :<message> sent to all +w users (irrespective of if they are +o or not) These are all off the top of my head, let me know if you want clarifications :)
Updated•20 years ago
|
Product: Core → Other Applications
Comment 13•19 years ago
|
||
I felt we needed an update on this one, so here goes. I'll do Timeless' list first, and then I'll see if there's any other ones we still miss as per comment #12. General commands: dns, hash, ison, kill, kline, mode, time, trace, unkline, userip, userhost, users, version (the server version, that is, right now /version maps to /ctcp <nick> version ) <undernet> cnotice, connect, cprivmsg, create, destruct, desynch, gline, map, proto, settime, silence, uping, wallchops <efnet> capab, knock, locops, ltrace, testline <dalnet> akill, dccallow, chanserv, chatops, globops, gnotice, goper, identify, memoserv, operserv, rakill, samode, services, statserv, svskill, svsmode, svsnick, svsnoop, unsqline, watch, zline I'm not sure what to do about the server-specific commands though. While some are quite easy to handle, I'm wondering if and how they should be excluded, especially if they work by the 'guess' method (which just sends everything to the server)
Comment 14•18 years ago
|
||
It would seem to me that the right way to handle this is to use /quote for what it's for, and simply add aliases for all of these commands. There's no need to hard-code anything server specific. See http://hacksrus.com/~ginda/chatzilla/faq/#alias I would think that if anything is to be done in the application, it would be to provide default per-network scripts for features supported on those networks. There really is no advantage to having these built in to the client over what aliases will provide.
Comment 15•18 years ago
|
||
adding myself as CC
Updated•15 years ago
|
QA Contact: samuel → chatzilla
Comment 16•14 years ago
|
||
This is a mass change. Every comment has "assigned-to-new" in it. I didn't look through the bugs, so I'm sorry if I change a bug which shouldn't be changed. But I guess these bugs are just bugs that were once assigned and people forgot to change the Status back when unassigning.
Status: ASSIGNED → NEW
You need to log in
before you can comment on or make changes to this bug.
Description
•