1
0
dox/md/ircwalkthrough.md
2019-01-26 11:58:53 -08:00

212 lines
13 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Anarchy Planet IRC Walkthrough Tutorial
=======================================
basic commands: <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, its 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 &lt;notnull&gt;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.
&lt;notnull&gt; chanserv, nickserv, memoserv, all are Atheme Services
&lt;notnull&gt; when you register a channel you are sending a command to
ChanServ to keep track of it &lt;notnull&gt; similiarly w/ your nick and
nickserv &lt;notnull&gt; channels have properties that are set with
flags &lt;notnull&gt; can you op me rfa? &lt;notnull&gt; do !op notnull
&lt;rfa&gt; !op notnull /\* ChanServ gives channel operator status to
notnull &lt;notnull&gt; the ! is called 'fantasy mode' &lt;notnull&gt;
it is an alias for /msg chanserv &lt;notnull&gt; you can set it to be
whatever you want, but yes ! is atheme default for chanserv
&lt;notnull&gt; !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 **\*** &lt;notnull&gt; so channels have
'flags' that give them properties &lt;notnull&gt; 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
&lt;notnull&gt; so I can never remember what these stupid flags are, but
I'll just start with k, which is 'keyword' &lt;notnull&gt; 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 &lt;rfa&gt; yikes &lt;notnull&gt; so if you want to fix
that you have to remove it from the mlock &lt;notnull&gt; sooo the way
to do that is &lt;notnull&gt; !set mlock k -ChanServ- You may only alter
+OP modes. &lt;rfa&gt; !set mlock k &lt;notnull&gt; I got this result:
-ChanServ- You may only alter +OP modes. &lt;rfa&gt; "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 &lt;rfa&gt; only ops can do this
right? &lt;notnull&gt; 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. &lt;notnull&gt; yes and there
are also different access levels &lt;rfa&gt; and there's no need to lock
a normal, open channel, right? &lt;notnull&gt; !access list -ChanServ-
Entry Nickname/Host Role -ChanServ- ----- ---------------------- ----
-ChanServ- 1 rfa &lt;Custom&gt; -ChanServ- ----- ----------------------
---- &lt;notnull&gt; so, access lists are actually just 'templates' of
flag groups &lt;notnull&gt; there are channel flags and user flags
&lt;Fauvenoir&gt; flags... set... mode.... what's the difference?
&lt;notnull&gt; good question ;) &lt;notnull&gt; !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 &lt;\#channel&gt; -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 &lt;\#channel&gt; \[nickname|hostmask|group
template\] -ChanServ- Syntax: FLAGS &lt;\#channel&gt;
\[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 **\*\*\*** &lt;rfa&gt; oh do
i need to set auto op for me so if i log out i don't lose it?
&lt;notnull&gt; 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 &lt;notnull&gt; hehee &lt;rfa&gt; yikes
&lt;notnull&gt; !set mlock + will remove all of the mlock flags, but
only founders can do it. &lt;notnull&gt; !set mlock + -ChanServ- You may
only alter +OP modes. &lt;rfa&gt; !set mlock + &lt;rfa&gt; ChanServ:The
MLOCK for \#poetry has been removed. &lt;notnull&gt; there are some
other things like &lt;notnull&gt; !set topiclock on -ChanServ- You are
not authorized to perform this command. &lt;notnull&gt; that keeps the
topic even when you leave &lt;rfa&gt; !set topiclock on
-ChanServ/\#poetry- rfa enabled the TOPICLOCK flag &lt;notnull&gt; and
!set guard on/off controls whether chanserv hangs out &lt;rfa&gt; nice
&lt;notnull&gt; also, if you don't want ChanServ you can make a custom
bot! &lt;rfa&gt; oh yes &lt;rfa&gt; if cs leaves that's bad, right?
&lt;notnull&gt; if you do /bs assign milieu \#poetry &lt;rfa&gt; why
would i ever want no cs? &lt;notnull&gt; it will be milieu instead of
chanserv &lt;notnull&gt; just a cooler name :P &lt;rfa&gt; what's bs
stand for? &lt;rfa&gt; !set guard on &lt;rfa&gt; ah botserv
&lt;notnull&gt; so your whole hostmask is
hex3@anarchy-planete17.kfm.ujrisk.IP &lt;notnull&gt; hex = nick, hex3 =
ident, all that other shit = hostname &lt;notnull&gt; a vhost changes
the hostname to something custom. &lt;notnull&gt; to get a vhost, you
request it from me. &lt;hex&gt; Oh ok, I see, give me a moment to think
of my new hostname. &lt;notnull&gt; hehe I can just make something
temporary for you? &lt;hex&gt; Violence.solves.everything?
&lt;notnull&gt; LOL love it. &lt;notnull&gt; the bots 'recognize' you by
your hostmask: that's the whole thing (nick!ident@hostname)
&lt;notnull&gt; so now, when you come here, if you aren't 'logged in',
ChanServ won't recognize you. &lt;notnull&gt; next: group a nick.
&lt;notnull&gt; you just change your nick to whatever, and then you /ns
group &lt;notnull&gt; you might wanna group hex~afk~ for example
&lt;abyss&gt; next: access lists. &lt;abyss&gt; do this: &lt;abyss&gt;
!access add notnull aop -ChanServ- You are not authorized to perform
this operation. &lt;hex&gt; !access add notnull aop
-ChanServ/\#hexchannel- hex added notnull to the access list (with role:
aop). &lt;abyss&gt; sweet &lt;hex&gt; What is the aop? &lt;abyss&gt; so
now I will be auto-opped every time I enter this channel &lt;abyss&gt;
!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 **\*\*\*** &lt;abyss&gt; "AOP" in this context is
a template of permissions. &lt;abyss&gt; !access list -ChanServ- Entry
Nickname/Host Role -ChanServ- ----- ---------------------- ----
-ChanServ- 1 hex &lt;Custom&gt; -ChanServ- 2 notnull AOP -ChanServ-
----- ---------------------- ---- -ChanServ- End of \#hexchannel ACCESS
listing. &lt;abyss&gt; there I am, AOP-tastic! &lt;abyss&gt; you can
remove it too using !access del notnull &lt;abyss&gt; !access del
notnull -ChanServ- notnull was removed from the AOP role in
\#hexchannel. &lt;abyss&gt; 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.
&lt;hex&gt; I assume you'd do that by adding and removing them from
various lists? &lt;abyss&gt; yes but ... you can actually put individual
flags on people. access lists are just templates. &lt;abyss&gt; so for
example you can !flags notnull +F &lt;abyss&gt; ;) &lt;hex&gt; !flags
notnull +F -ChanServ/\#hexchannel- hex set flags +Ff on notnull
&lt;abyss&gt; MWAHAHAHA &lt;abyss&gt; !info &lt;abyss&gt; - Founder :
hex, notnull &lt;hex&gt; What does that do? &lt;abyss&gt; hehe
&lt;abyss&gt; it gives me Founder access which is basiclally the highest
level &lt;abyss&gt; !access add plast aop -ChanServ/\#hexchannel- abyss
(notnull) added plast to the access list (with role: aop). /\* ChanServ
gives channel operator status to plast &lt;abyss&gt; see, now I can do
shit like that &lt;abyss&gt; oh yes, novatore &lt;abyss&gt; 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. &lt;abyss&gt; so she takes
commands, her fantasy prefix is @ &lt;abyss&gt; but &lt;abyss&gt; you
have to register with her, just like you register with nickserv
&lt;abyss&gt; it doesn't have to be the same nick or anything
&lt;hex&gt; Is it helpful to use the same nick? &lt;abyss&gt; kind of...
but only slightly &lt;abyss&gt; nov recognizes you through your hostname
&lt;abyss&gt; whereas the Services bots authenticate your nick as well
&lt;abyss&gt; @help register &lt;novatore&gt; (register &lt;name&gt;
&lt;password&gt;) -- Registers &lt;name&gt; with the given password
&lt;password&gt; 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)
&lt;abyss&gt; @list &lt;novatore&gt; 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 &lt;abyss&gt; those are all of novatore's modules.