Related to
https://forums.mirc.com/ubbthreads.php/topics/257381/v7-44-54-vmsg-does-not-work-when-voiced

Since /wallchops /wallvoices /vmsg are not documented in F1, it's not clear to me what's the intent for these commands, however the presence of WALLVOICES in 005 seems to cause different behavior at Undernet compared to other networks.

As I understand it, the 005 token WALLCHOPS is a deprecated indicator that @#channel and +#channel were a valid target, but this lingers as an 005 token at most networks as a reduntancy of the STATUSMSG= string. But Undernet is the only network where I've found WALLVOICES in the 005 message, so I'm not sure whether that has also had a different historical meaning, or whether /wallvoices was added to mIRC solely in order to support Undernet.

At Undernet, they've been using the WALLCHOPS keyword with a completely different behavior, and uses WALLVOICES the same way. Instead of WALLCHOPS being an alert that @#channel and +#channel are valid targets, you're supposed to actually use these as explicit commands which produce slightly different behaviors than the prefix#channel target:

sent: /quote WALLCHOPS #channel message
rcvd: NOTICE @#channel :@ message

sent: /quote WALLVOICES #channel message
rcvd: NOTICE @#channel :+ message

... where WALLVOICES makes the receiver see the message having the wrong target and you're supposed to see the character inserted in front of your message to figure out the actual target.

When not using /quote, mIRC traps these 2 /commands, and instead does:

input::: /wallchops #channel :message
display: -> @#channel: message
sent:::: NOTICE @#channel :message
receive: -sender:@#channel- message

input::: /wallvoices #channel message
display: -> +#channel: message
sent:::: NOTICE +#channel :message
receive: Not received

Even though Undernet displays STATUSMSG=@+ they don't actually support NOTICE to the +#channel target, and they don't support either of the @#chan or +#chan targets for PRIVMSG

* *

Undernet now says that the reason +#channel as a target for NOTICE doesn't work is because that's for an opless channel, whatever that's supposed to mean, as I wasn't able to create a channel name beginning with '+'.

Also, the Undernet implementation of WALLVOICES doesn't match the +#channel behavior elsewhere, because normally the +#channel target is sent to voice-and-higher, but Undernet's /quote WALLVOICES sends only to the voice level

* *

There's also something about Undernet's settings that are confusing the /omsg and the undocumented /vmsg commands, because at SwiftIRC and other networks the '/vcmd #channel message' is sent as a PRIVMSG to target +#channel, and the receiver sees it in the channel window as a group /msg.

However the same /vcmd command at Undernet is instead going outbound as a query window message.

Likewise at SwiftIRC and other networks, the /omsg is sent as a PRIVMSG to target @#channel and shows in the channel window, while at Undernet it's sent as a query window message