264 lines
13 KiB
HTML
264 lines
13 KiB
HTML
Nbasic IRC commands to get you started: http://pad.anarchistnews.org/p/irc-how-to
|
||
|
||
|
||
Questions
|
||
|
||
Q: will you leave the channel? I want to see what hpapens to ops, e.g., can I take them
|
||
A: One needs to leave and join again to take over an empty channel.
|
||
|
||
Q: How do i identify the bot automatically using SASL or certificates?
|
||
A: http://doc.supybot.aperio.fr/en/latest/use/identifying_to_services.html
|
||
^ f you get an error about “Insufficient parameters for CERT”, CertFP is supported, and if you get an error about unknown command, it’s not supported.
|
||
^ this is why I was trying to figure out how to enable SASL...
|
||
|
||
Inspircd
|
||
inspircd user modes: https://wiki.inspircd.org/User_Modes
|
||
inspircd channel modes: https://wiki.inspircd.org/Channel_Modes
|
||
|
||
to become an IRC pro, do these tasks!
|
||
register a nick
|
||
get a hostmask
|
||
group another nick
|
||
Register a channel
|
||
set MLOCK
|
||
set entry msg
|
||
make private, secret, keyword-enabled
|
||
Add people to access lists
|
||
Fantasy Mode
|
||
atheme flags: https://chanop.wordpress.com/2011/03/12/atheme-service-commands/
|
||
|
||
|
||
Limnora (i.e. Novatore)
|
||
register with novatore
|
||
create an alias
|
||
add an RSS
|
||
|
||
Register a Channel
|
||
<notnull>This IRC is two different things: Inspircd and Atheme. Athme provides "services" which the best way to think about them is that they are bots that take commands.
|
||
<notnull> chanserv, nickserv, memoserv, all are Atheme Services
|
||
<notnull> when you register a channel you are sending a command to ChanServ to keep track of it
|
||
<notnull> similiarly w/ your nick and nickserv
|
||
<notnull> channels have properties that are set with flags
|
||
<notnull> can you op me rfa?
|
||
<notnull> do !op notnull
|
||
<rfa> !op notnull
|
||
/* ChanServ gives channel operator status to notnull
|
||
<notnull> the ! is called 'fantasy mode'
|
||
<notnull> it is an alias for /msg chanserv
|
||
<notnull> you can set it to be whatever you want, but yes ! is atheme default for chanserv
|
||
<notnull> !info
|
||
-ChanServ- Information on #poetry:
|
||
-ChanServ- Founder : rfa
|
||
-ChanServ- Successor : (none)
|
||
-ChanServ- Registered : Jan 01 19:30:41 2019 -0800 (1h 33m 11s ago)
|
||
-ChanServ- Mode lock : +nt-lk
|
||
-ChanServ- Flags : VERBOSE GUARD FANTASY
|
||
-ChanServ- Prefix : ! (default)
|
||
-ChanServ- *** End of Info ***
|
||
<notnull> so channels have 'flags' that give them properties
|
||
<notnull> the channel info shows the Mode lock: +nt-lk shows that this channel has the n and t flags locked as being on, and the l and k flags locked as being off
|
||
<notnull> so I can never remember what these stupid flags are, but I'll just start with k, which is 'keyword'
|
||
<notnull> this channel is 'locked' to have a -k flag, which means you can' tset a keyword (i.e. password) for it because chanserv is guarding it
|
||
/* notnull sets channel keyword to paswd
|
||
/* ChanServ removes channel keyword
|
||
/* Channel #poetry modes: +nst
|
||
/* Channel #poetry created on Tue Jan 1 22:29:50 2019
|
||
<rfa> yikes
|
||
<notnull> so if you want to fix that you have to remove it from the mlock
|
||
<notnull> sooo the way to do that is
|
||
<notnull> !set mlock k
|
||
-ChanServ- You may only alter +OP modes.
|
||
<rfa> !set mlock k
|
||
<notnull> I got this result: -ChanServ- You may only alter +OP modes.
|
||
<rfa> "ChanServ:The MLOCK for #poetry has been removed."
|
||
/* notnull sets channel keyword to passwd
|
||
/* Channel #poetry modes: +knst passwd
|
||
/* Channel #poetry created on Tue Jan 1 22:29:50 2019
|
||
<rfa> only ops can do this right?
|
||
<notnull> so you'll have to go through all the flags, I cna never remeber what they all are, but you can, e.g.,make channels private, invite only, all kinds of stuff.
|
||
<notnull> yes and there are also different access levels
|
||
<rfa> and there's no need to lock a normal, open channel, right?
|
||
<notnull> !access list
|
||
-ChanServ- Entry Nickname/Host Role
|
||
-ChanServ- ----- ---------------------- ----
|
||
-ChanServ- 1 rfa <Custom>
|
||
-ChanServ- ----- ---------------------- ----
|
||
<notnull> so, access lists are actually just 'templates' of flag groups
|
||
<notnull> there are channel flags and user flags
|
||
<Fauvenoir> flags... set... mode.... what's the difference?
|
||
<notnull> good question ;)
|
||
<notnull> !help flags
|
||
-ChanServ- ***** ChanServ Help *****
|
||
-ChanServ- Help for FLAGS:
|
||
-ChanServ-
|
||
-ChanServ- The FLAGS command allows for the granting/removal of channel
|
||
-ChanServ- privileges on a more specific, non-generalized level. It
|
||
-ChanServ- supports nicknames, groups and hostmasks as targets.
|
||
-ChanServ-
|
||
-ChanServ- When only the channel argument is given, a listing of
|
||
-ChanServ- permissions granted to users will be displayed.
|
||
-ChanServ-
|
||
-ChanServ- Syntax: FLAGS <#channel>
|
||
-ChanServ-
|
||
-ChanServ- Otherwise, an access entry is modified. A modification may be
|
||
-ChanServ- specified by a template name (changes the access to the
|
||
-ChanServ- template) or a flags change (starts with + or -). See the
|
||
-ChanServ- TEMPLATE help entry for more information about templates.
|
||
-ChanServ-
|
||
-ChanServ- If you are not a founder, you may only manipulate flags you
|
||
-ChanServ- have yourself, and may not edit users that have flags you
|
||
-ChanServ- don't have. For this purpose, +v grants the ability to grant
|
||
-ChanServ- +V, +h grants the ability to grant +H, +o grants the ability
|
||
-ChanServ- to grant +O, and +r grants the ability to grant +b.
|
||
-ChanServ-
|
||
-ChanServ-
|
||
-ChanServ-
|
||
-ChanServ- If you do not have +f you may still remove your own access
|
||
-ChanServ- with -*.
|
||
-ChanServ-
|
||
-ChanServ- Syntax: FLAGS <#channel> [nickname|hostmask|group template]
|
||
-ChanServ- Syntax: FLAGS <#channel> [nickname|hostmask|group flag_changes]
|
||
-ChanServ-
|
||
-ChanServ- Permissions:
|
||
-ChanServ- +v - Enables use of the voice/devoice commands.
|
||
-ChanServ- +V - Enables automatic voice.
|
||
-ChanServ- +h - Enables use of the halfop/dehalfop commands.
|
||
-ChanServ- +H - Enables automatic halfop.
|
||
-ChanServ- +o - Enables use of the op/deop commands.
|
||
-ChanServ- +O - Enables automatic op.
|
||
-ChanServ- +a - Enables use of the protect/deprotect commands.
|
||
-ChanServ- +q - Enables use of the owner/deowner commands.
|
||
-ChanServ- +s - Enables use of the set command.
|
||
-ChanServ- +i - Enables use of the invite and getkey commands.
|
||
-ChanServ- +r - Enables use of the kick, kickban, ban and unban commands.
|
||
-ChanServ- +R - Enables use of the recover, sync and clear commands.
|
||
-ChanServ- +f - Enables modification of channel access lists.
|
||
-ChanServ- +t - Enables use of the topic and topicappend commands.
|
||
-ChanServ- +A - Enables viewing of channel access lists.
|
||
-ChanServ- +F - Grants full founder access.
|
||
-ChanServ- +b - Enables automatic kickban.
|
||
-ChanServ- +e - Exempts from +b and enables unbanning self.
|
||
-ChanServ-
|
||
-ChanServ- The special permission +* adds all permissions except +b and +F.
|
||
-ChanServ- The special permission -* removes all permissions including +b and +F.
|
||
-ChanServ-
|
||
-ChanServ- Examples:
|
||
-ChanServ- /msg ChanServ FLAGS #foo
|
||
-ChanServ- /msg ChanServ FLAGS #foo foo!*@bar.com VOP
|
||
-ChanServ- /msg ChanServ FLAGS #foo foo!*@bar.com -V+oO
|
||
-ChanServ- /msg ChanServ FLAGS #foo foo!*@bar.com -*
|
||
-ChanServ- /msg ChanServ FLAGS #foo foo +oOtsi
|
||
-ChanServ- /msg ChanServ FLAGS #foo TroubleUser!*@*.troubleisp.net +b
|
||
-ChanServ- /msg ChanServ FLAGS #foo !baz +*
|
||
-ChanServ- ***** End of Help *****
|
||
<rfa> oh do i need to set auto op for me so if i log out i don't lose it?
|
||
<notnull> no you would always be op as founder of the channel
|
||
/* rfa (rfa@nihilist.abyss) has left
|
||
/* rfa (rfa@nihilist.abyss) has joined
|
||
/* ChanServ sets mode +q on #poetry rfa
|
||
/* ChanServ gives channel operator status to rfa
|
||
<notnull> hehee
|
||
<rfa> yikes
|
||
<notnull> !set mlock + will remove all of the mlock flags, but only founders can do it.
|
||
<notnull> !set mlock +
|
||
-ChanServ- You may only alter +OP modes.
|
||
<rfa> !set mlock +
|
||
<rfa> ChanServ:The MLOCK for #poetry has been removed.
|
||
<notnull> there are some other things like
|
||
<notnull> !set topiclock on
|
||
-ChanServ- You are not authorized to perform this command.
|
||
<notnull> that keeps the topic even when you leave
|
||
<rfa> !set topiclock on
|
||
-ChanServ/#poetry- rfa enabled the TOPICLOCK flag
|
||
<notnull> and !set guard on/off controls whether chanserv hangs out
|
||
<rfa> nice
|
||
<notnull> also, if you don't want ChanServ you can make a custom bot!
|
||
<rfa> oh yes
|
||
<rfa> if cs leaves that's bad, right?
|
||
<notnull> if you do /bs assign milieu #poetry
|
||
<rfa> why would i ever want no cs?
|
||
<notnull> it will be milieu instead of chanserv
|
||
<notnull> just a cooler name :P
|
||
<rfa> what's bs stand for?
|
||
<rfa> !set guard on
|
||
<rfa> ah botserv
|
||
<notnull> so your whole hostmask is hex3@anarchy-planete17.kfm.ujrisk.IP
|
||
<notnull> hex = nick, hex3 = ident, all that other shit = hostname
|
||
<notnull> a vhost changes the hostname to something custom.
|
||
<notnull> to get a vhost, you request it from me.
|
||
<hex> Oh ok, I see, give me a moment to think of my new hostname.
|
||
<notnull> hehe I can just make something temporary for you?
|
||
<hex> Violence.solves.everything?
|
||
<notnull> LOL love it.
|
||
<notnull> the bots 'recognize' you by your hostmask: that's the whole thing (nick!ident@hostname)
|
||
<notnull> so now, when you come here, if you aren't 'logged in', ChanServ won't recognize you.
|
||
<notnull> next: group a nick.
|
||
<notnull> you just change your nick to whatever, and then you /ns group
|
||
<notnull> you might wanna group hex_afk for example
|
||
<abyss> next: access lists.
|
||
<abyss> do this:
|
||
<abyss> !access add notnull aop
|
||
-ChanServ- You are not authorized to perform this operation.
|
||
<hex> !access add notnull aop
|
||
-ChanServ/#hexchannel- hex added notnull to the access list (with role: aop).
|
||
<abyss> sweet
|
||
<hex> What is the aop?
|
||
<abyss> so now I will be auto-opped every time I enter this channel
|
||
<abyss> !help access
|
||
-ChanServ- ***** ChanServ Help *****
|
||
-ChanServ- Help for ACCESS:
|
||
-ChanServ-
|
||
-ChanServ- The following subcommands are available:
|
||
-ChanServ- ADD Add an access list entry.
|
||
-ChanServ- DEL Delete an access list entry.
|
||
-ChanServ- INFO Display information on an access list entry.
|
||
-ChanServ- LIST List channel access entries.
|
||
-ChanServ- SET Update an access list entry.
|
||
-ChanServ-
|
||
-ChanServ- For more information, use /msg ChanServ HELP ACCESS command.
|
||
-ChanServ- ***** End of Help *****
|
||
<abyss> "AOP" in this context is a template of permissions.
|
||
<abyss> !access list
|
||
-ChanServ- Entry Nickname/Host Role
|
||
-ChanServ- ----- ---------------------- ----
|
||
-ChanServ- 1 hex <Custom>
|
||
-ChanServ- 2 notnull AOP
|
||
-ChanServ- ----- ---------------------- ----
|
||
-ChanServ- End of #hexchannel ACCESS listing.
|
||
<abyss> there I am, AOP-tastic!
|
||
<abyss> you can remove it too using !access del notnull
|
||
<abyss> !access del notnull
|
||
-ChanServ- notnull was removed from the AOP role in #hexchannel.
|
||
<abyss> so you can get veeerrry precise about what kind of access you give others. I don't use it that much, the server is just too small. auto-op is one of the main ones that's important.
|
||
<hex> I assume you'd do that by adding and removing them from various lists?
|
||
<abyss> yes but ... you can actually put individual flags on people. access lists are just templates.
|
||
<abyss> so for example you can !flags notnull +F
|
||
<abyss> ;)
|
||
<hex> !flags notnull +F
|
||
-ChanServ/#hexchannel- hex set flags +Ff on notnull
|
||
<abyss> MWAHAHAHA
|
||
<abyss> !info
|
||
<abyss> - Founder : hex, notnull
|
||
<hex> What does that do?
|
||
<abyss> hehe
|
||
<abyss> it gives me Founder access which is basiclally the highest level
|
||
<abyss> !access add plast aop
|
||
-ChanServ/#hexchannel- abyss (notnull) added plast to the access list (with role: aop).
|
||
/* ChanServ gives channel operator status to plast
|
||
<abyss> see, now I can do shit like that
|
||
<abyss> oh yes, novatore
|
||
<abyss> novatore is a python-based IRC bot, but the best way to think about it is that it's v. similar to the way services work.
|
||
<abyss> so she takes commands, her fantasy prefix is @
|
||
<abyss> but
|
||
<abyss> you have to register with her, just like you register with nickserv
|
||
<abyss> it doesn't have to be the same nick or anything
|
||
<hex> Is it helpful to use the same nick?
|
||
<abyss> kind of... but only slightly
|
||
<abyss> nov recognizes you through your hostname
|
||
<abyss> whereas the Services bots authenticate your nick as well
|
||
<abyss> @help register
|
||
<novatore> (register <name> <password>) -- Registers <name> with the given password <password> and the current hostmask of the person registering. You shouldn't register twice; if you're not recognized as a user but you've already registered, use the hostmask add command to add another hostmask to your already-registered user, or use the identify command to identify just for a session. This command (and all other (1 more message)
|
||
<abyss> @list
|
||
<novatore> Admin, Alias, Anonymous, AttackProtector, AutoMode, Channel, Conditional, Config, Games, Google, Later, LinkRelay, MessageParser, Misc, Network, NickAuth, Note, Owner, PluginDownloader, Quote, RSS, Reply, SedRegex, Seen, User, Utilities, and Web
|
||
<abyss> those are all of novatore's modules.
|