Improve Error Messages for Send Chat Message
When switching from IRC to the "Send Chat Message" Helix endpoint in a third party chat client, we noticed that the error messages were less descriptive when compared to some of the NOTICE messages received through IRC.
When a user is timed out and attempts to send a message, they get a
drop_reasonof "You are timed out from talking in the room." (code: usertimedout). Over IRC, the user would've received a NOTICE with amsg-id=msg_timedoutand a message that includes the remaining duration in seconds. At the very least, the message in Helix should include the seconds. Ideally, thedrop_reasoncontained an additional field with just the remaining timeout duration in seconds (if that's the reason) so clients can format (potentially localize) the message.When attempting to send a non-existing command through the API (e.g. sending "/foo" or ".foo"), the message is dropped with a generic error: "Your message is being checked by mods and has not been sent." At the very least, that error should hint at the command. Ideally, that message is sent as-is.
In general, we noticed, that "Your message is being checked by mods and has not been sent" is a frequent error. However, in many cases, it's wrong, and the message will not be seen by mods as it never went through.
Documentation for the error codes would be great too (there's an open issue for it).
-
LosFarmosCTL
commented
Almost a year later and it's still exactly the same broken mess...