Skip to content
This repository has been archived by the owner on Dec 16, 2022. It is now read-only.

Shout doesn't pass unknown commands #528

Open
Tea23 opened this issue Oct 30, 2015 · 4 comments
Open

Shout doesn't pass unknown commands #528

Tea23 opened this issue Oct 30, 2015 · 4 comments

Comments

@Tea23
Copy link

Tea23 commented Oct 30, 2015

So I have a few ircops on a network running inspircd mulling around on my bouncer. Set up Shout to make sure they have a way to get on from anywhere (cheeky reverse proxy to get around the workplace firewall) and all's pretty good.

Problem we're finding is that Shout isn't passing any server side commands. Inspircd has weird stuff like /sanick and /check which do handy stuff for ircops, but Shout is just dropping these without even declaring it.

To use them the ircops have to do /quote sanick Person Smelly_Person and that's a bit annoying where they want to do stuff a bit quicker.

Also, /check doesn't work at all, since the raw IRC server stuff doesn't get sent to the server tab. Should see something like:

* CHECK START Smelly
* CHECK nuh Smelly!~Smelly@areallycooldomain.name
* CHECK realnuh Smelly!~Smelly@ipv6:addr:esse:sare:long
* CHECK realname Smelly
* CHECK modes +Whios
* CHECK snomasks +AGJKOXadfgjkotvx
* CHECK server server.smellyirc.net
* CHECK uid 205AACEXN
* CHECK signon 2015-10-21 18:06:45 UTC (1445450805)
* CHECK nickts 2015-10-30 14:51:15 UTC (1446216675)
* CHECK opertype IRCOp
* CHECK onip ipv6:addr:esse:sare:long
* CHECK onchans #channel1 #channel2
* CHECK meta:accountname Smelly
* CHECK END Smelly
* CHECK START Smelly
* CHECK matches 0
* CHECK END Smelly

Instead, Shout just isn't picking this up at all. If I connect to my bouncer in another client though (like HexChat) I can see all that stuff in there if I run /check in Shout.

So there you go. Shout is dropping some server-side stuff, making stuff tricky for ircops.

@Xe
Copy link
Contributor

Xe commented Oct 30, 2015

/quote foo will pass command FOO to the server.

@dgw
Copy link

dgw commented Jan 21, 2016

It's also making things tricky for ZNC users. (Yes I know Shout is basically a browser-based bouncer. I like my ZNC. :P)

Obviously we can use /quote but we shouldn't need to—and Shout definitely shouldn't just silently ignore unknown commands. It should at least emit a notice to the user to the effect of "Unknown command FOO", if it's not going to send them to the server. (And what server doesn't know how to handle unknown commands?)

@hormigas
Copy link

Is there a reason to code the normal irc commands into the client individually rather than send them to the server to be executed? I would understand including custom client commands, but currently only a small fraction of valid commands work due to this implementation.

I can't upload anything at the moment, but I altered the client.js around line 229 file to the following

   if (text.charAt(0) !== "/") {

                text = "/say " + text;

        } else {

                text = "/quote " + text.substr(1);

        }

just to test this idea out... and it made it much easier to send normal irc commands. It's definitely only a hack right now, because it means that /part requires a channel name after it, but situations like that which would require a short fix are far fewer than the amount of work required to add all of the individual commands into plugins. Not to mention it future proofs against new bouncers, server side specific commands, and other abnormalities. Today it is /znc, but tomorrow perhaps it's /xznc or something.

@dgw
Copy link

dgw commented Apr 13, 2016

I know @astorije is usually the one to do this, but the community fork, The Lounge, solved this in thelounge/thelounge#154

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants