To start off, IRC Hostmasks.
My bot has an auth system built in, however, due the fact that you cant DM IRC users via the IRC itself with your current setup, I have to add user hostmasks to the user’s account in the conf files. The format you use for hostmask’s appears to be nonstandard (ex of normal hostmask: nick!user@twitch.tv). I’d like to see a document built to educating the framework of the IRCd, or a link to a similar version, so dev’s can build around a set guideline. If someone would help me with the the format, I’d be grateful, as currently anyone with drtankhead in their name has root to the bot. Not very secure…
This may be a good time to bring up a second item, which basically if existed, would remove the need for the first item. the ability to DM another client via the IRC, or possibly route the whisper system through it, so one can DM a bot or user (so long as they are online). This feature could be limited if needed, and if you(twitch) need to, loggable,
Next item, Integrating IRC perm/access levels!
To give an example of what I mean, I’ll refer to UnrealIRCd, a popular Internet relay chat daemon.
Unreal has channel and server perm levels, Ill list them:
Server-Level:
Root [Above all else, nothing higher, can do everything.
Network Administrators [Your staff, These people can kill, ban, kick, shun, set spam filters, set defcon, force people to join/leave channels, force a usermode, etc.]
Helper [Support/help]
Channel:
Owner [Your Brodcaster, can fully administer the channel they are in (SA(Server Admin) still overrides).
Admin [Cannot be kicked/banned by OPs, good for the existing channel admin feature. has same perms as OP.
OP [Your Moderators, with a kick, these guys can mod other people. Same as halfop + can op others.]
HalfOP [Can kick, ban, do everything a mod does.]
Voice [your subscribers, they cannot moderate, but are exempt from +m, or “sub only mode”
Normal [Your regular joe, can chat, and make Kappa’s]
–
These levels would introduce so much options for bots and channel broadcasters.
For example, My bot can auto-mode people, so when they join the channel, they are given one of those perm levels, useful if something breaks, or to just get a grip on who’s where. These systems are sorta there, but integrating the various parts would simplify everything, yet keeping it secure.
That I guess covers it.
Feel free to comment on any of the above. or if you have any questions on application. Also, If you would like a code example, ask me. I can resolve any misunderstandings any of you might have.