How to block specific phrases from your channel
May 31st
/mode #channel +b ~T:Action can either be ‘block’ or ‘censor’. ‘block’ will stop any line containing ‘text’ from being sent to users of the channel and ‘censor’ will replace the banned phrase with ‘<censored>’. Text can also be a wildcard string (i.e. * matches anything). For example, sugar* would match ‘sugar’, ‘sugarpuffs’, ‘sugarstuff’, etc. Example usages of this command are::
/mode #channel +b ~T:block:sugarThe result of this is:
(20:26:15)sugar #foo Message blocked due to a text ban (#foo)
/mode #channel +b ~T:censor:sugar*The result of this is:
(20:27:31)Because of the way IRC works, as with chmode +G, the person saying the censored word will not see it as censored on their client however every other channel user will.I love <censored>
If you have any questions, come see us in #help.
Redirecting one channel to another
May 13th
/cs redirect #oldchannel #newchannel
There are various restrictions on this command. These are as follows:
- You must be the real founder of #oldchannel
- You must be a founder of #newchannel
- You cannot create loops or chains by redirecting a channel to one which is already a redirect
- Once the command is done, you cannot undo it! This must be done by a services admin
The following restrictions apply to active redirects:
- A redirected channel will be dropped 60 days after you set the redirect
- You can change the channel the redirect points to but this will not reset the 60 day expiry time
- If the new channel is +L users will not be redirected. This is to stop chaining and looping
- The redirect will walk any keys (+k) you have on the new channel. This means you can redirect a keyed channel to another keyed channel
- The redirect will not walk any other channel mode restrictions (+l, +O, +A, +R, +b, +I, +z). If any of those modes are set, the user will have to conform with their requirements to be successfully redirected
This can be used with the ChanServ MIGRATE command to move all of your settings from one channel to another. Example use of this is:
/cs migrate #oldchannel #newchannel
Setting a ban appeal procedure for your channel
Apr 15th
Note: Because of the nature of services, this web page may be up to 5 mins out of date. Every channel with a ban appeal procedure specified will show up on this web page. If you do not wish your channel to show up do NOT specify a ban appeal procedure.
To specify ban appeal information for your channel use the following command:
/cs SET channel BANINFO [info]
An example of this would be:
/cs set #phil baninfo Bans cannot be appealed
To remove this, do the command with no appeal procedure specified. For example:
/cs set #phil baninfo
If you have any questions, ask in #help.
How to add a list of users in your GeekShed IRC channel to your website
Apr 4th
The XML output can be found at http://www.geekshed.net/usertable.php?chan=
<?php
// Edit This
$chan = 'phil';
// Don't edit this
$xml = simplexml_load_file('http://www.geekshed.net/usertable.php?chan='.$chan);
?>
<!-- Edit this HTML to suit your layout -->
<table>
<tr>
<td style="text-align: center;"><strong>Nickname</strong></td>
<td style="text-align: center;"><strong>Status</strong></td>
<td style="text-align: center;"><strong>Clones</strong></td>
<td style="text-align: center;"><strong>Active (Not Away)</strong></td>
</tr>
<?php
foreach ($xml->user as $user) {
echo "\t<tr>\n";
echo "\t\t<td style=\"text-align: center;\">{$user->nick}</td>\n";
echo "\t\t<td style=\"text-align: center;\">{$user->status}</td>\n";
echo "\t\t<td style=\"text-align: center;\">{$user->clones}</td>\n";
echo "\t\t<td style=\"text-align: center;\">{$user->away}</td>\n";
echo "\t</tr>\n";
}
?>
</table>
You can also access the away message left by a user who is away using $user->awaymsg inside the foreach loop.
The DTD for the XML can be found at http://www.geekshed.net/xml/userlist.dtd.
As at 08 April 2010 the returned XML now has double escaped entities (e.g. < goes to < and ASCII char 2 goes to ). SimpleXML in the above example will do a single unescape on these such that < goes to < such that it can be used in web pages whilst keeping them valid. If you use it for anything else you will need to be sure to unescape sufficiently to give you the original characters.
If you have any questions about this, ask in #help.
Can I Make A Private/Secret/Restricted Channel?
Mar 29th
Every channel is able to be either private (+p), or secret (+s). The two modes are similar, but it is possible for people to find out about a channel that is marked private (+p). Therefore, if you want a channel nobody will be able to find out about unless they’re told, it is recommended that you mark it as secret, +s. Unless you are in the channel or an IRCop, the server will pretend that the channel doesn’t exist.
There is also channel mode +i, which will let people in only when they have been invited. If the channel is registered with chanserv, those on the access list can
/msg chanserv invite #channel, and chanserv (or the botserv bot, if the channel has one) will invite the person into the channel. Standing invites can also be set using channel mode +I, which takes a nick!ident@host mask as a parameter. If the person is not on the access list, and does not have +I set for themselves, they are able to “knock” on the channel by doing /knock #channel optional_message.You can also set a “key” on the channel using channel mode +k, which takes the key to use as a parameter. If I wanted to set a key on my channel, I would do
/mode #serenity +k Kaylee. In order to get in the channel, someone would need to specify the key when they try to join – /join #serenity Kaylee. Alternatively, they can also be invited into the channel and will not need the key.If the channel is registered, those modes can be mlock’ed, so that they will be reapplied when the channel is recreated (i.e. is empty and someone joins). It is important to note that if the channel is empty, needing a key or an invite is not necessary to join the channel. That is where the next item comes into play.
It is also possible to set a channel to have restricted access. When this option is set, only the people you add to the access list will be able to join. When someone that is not on the list attempts to join, they are kickbanned by chanserv (or the botserv bot, if you have added one) with the reason “You are not permitted to be on this channel”.
Since when you set your channel to restricted access you normally don’t want people to know about it, it is recommended to also mlock it +s. To set both the restricted access and mlock, you need to enter the following two commands, replacing #channel with your actual channel:
Note: If you already have some modes set with mlock, you will need to respecify them when you add +s. So if you have +n (no external messages) set with mlock, you would need to do/msg chanserv set #channel mlock +s
/msg chanserv set #channel restricted on
/msg chanserv set #channel mlock +sn.Should you have any questions concerning setting your channel to restricted access, feel free to stop in #help and ask.
Grouping a Nick: Why and How?
Mar 12th
Well luckily for you, there is. You are able to group nicks together so that permissions and other data are shared among accounts. Some of the items that are shared include (but are not limited to): channel ownership, permission levels (owner, halfop, etc.) on channels, group info that was provided when you registered, password, and virtual host. Pretty much anything your single nick has associated with it will be associated with the group of nicks that you have registered.
Here’s how to group a nick to one that you already have registered:
- Switch to the nick that you want to group
NOTE 1 : Before you enter the next command, make sure that you are using the nick you want to add to your existing group. Do NOT be using your main nick. Example: if I wanted to group JayneCobb to my account, I would /nick JayneCobb.NOTE 2 : If you use a registered nick when the next step if performed, it will first be dropped, then grouped to the main nick. Example: if I try to group JayneCobb (which is registered) to my main nick MalcolmReynolds, Services will first drop JayneCobb, then have it join the MalcolmReynolds group. By being dropped, any permissions JayneCobb had will be gone.
- Enter the following command in the server/status window:
/msg nickserv group main_nick password, wheremain_nickis your primary nick, andpasswordis the password belonging to the primary nick.
Example: I want to group JayneCobb to my primary nick, MalcolmReynolds, and the password for it is S3reni+yV@ll3y (you do use something secure for your passwords, right?). I would type the following as JayneCobb: /msg nickserv group MalcolmReynolds S3reni+yV@ll3y - Look for nickserv to either tell you that you have joined the group of your primay nick or give you an error message, such as “you must wait at least 60 seconds before using the group command again”.
/nick theNewNick
/msg nickserv group main_nick passwordNow what if you want to delink a nick, i.e. remove it from the group, is there some way to do that? Yes there is, you just drop it by switching to the nick, and doing /msg nickserv drop. Doing that will make nickserv completely drop the nick – it will no longer exist, have any permissions, etc.
Is there someway to delink it without dropping, or without it losing the permissions and other information? Not currently, although I suppose it is possible that it could end up in a future version of anope, or someone could create a module that could drop a nick and register it using the credentials of the former group and preserving permissions, etc.
Should you have any questions about grouping nicks, feel free to leave a comment here, or to join #help and ask in there.
Can I Link Two Channels?
Mar 10th
In any case, linking two channels together is very easy, as it only involves setting two channel modes – the first sets a limit of X people that can be in the channel, and the second sets the channel to send people to after X people have joined the main channel. Also, you are not limited in the number of channels that can be linked together, with the exception that a channel can only forward users to one channel. #Chan1 can forward to #chan2, which can forward to #chan3, etc.
lSo if I wanted to forward my channel #Inara to #Adria, I would do the following:= Channel may hold at most of users [o] (This mode is a lowercase L, not a capital i)
L= Channel link (If +l is full, the next user will auto-join ) [q]
/mode #Inara +lL 1 #Adria. If I wanted to always have the channel set like that, so that nobody could change it, I would use chanserv’s mlock option, and do: /msg chanserv set #Inara mlock +lL 1 #Adria.If you are linking an old channel to a new one (i.e. you’ve moved channels), the number must be 1, and there must be someone in the channel for it to work (note: botserv bots do not count. It can be a bot that you run though). If you have linked a primary channel to an overfill one, the number can be anything equal to or greater than 1.
NOTE: Linked channels do not share the same permissions, you will need to add people to the aop/sop/hop/vop lists in each channel.
Should you have any questions about linking channels, feel free to leave a comment here, or to join #help and ask in there.
How Do I Embed My Chatroom Onto My Website?
Feb 22nd
One thing to note before starting is that you need to be able to post HTML, and not have it filtered. If you are using wordpress.com, or WPMU and are not the site/super admin, your HTML is filtered and you will not be able to see the chat box when you post the post/page you’re trying to put it onto. If you cannot post HTML, it will not work because it will treat the code as text instead.
Having said that, here are 5 easy steps to embedding your chat onto a site.
- Get the embed code from our website. At the very minimum, you should change the channel name. Unless you know better dimensions for your site’s layout, it might be best to leave the default size; you can always change that later (it is just two variables in the embed code).
- Add a new Page or Post like you normally would, and give it a title. While still in the visual editor (if you use it), feel free to add anything that you would like above and/or below the chat box and associated items.
- Next, if you aren’t already in HTML mode, click on the HTML button.
- Paste in the code you copied from step 1 in the appropriate place (depending on if you added text for above/below [step 2]). At this point, you will see the code, which may not make sense to you. Click the Save Draft button, then Preview.
- Depending on your theme, you might need to change the size of the chat. Once you are happy with how it looks, Publish the post.
GeekShed Management Script
Jan 5th
We have checked out the tags directory at http://www.geekshed.net/gs-script/ so you can find each version of the script. We recommend using the latest version (i.e. the one with the highest version number). The script is the one ending in .mrc. The .sig file is the GPG signature of the script and has been included from versions 1.8 for posterity. Public key Phil Lavin (Freelance Programmer) can be found on major key synchronizing servers.
Load it into the remotes section of your script editor just like any other script or place it in your mIRC install dir and type:
/load -rs gs-chanscript.mrcAny problems, come see us in #help on irc.geekshed.net
Access System Tutorial
Dec 10th
On GeekShed, we have two access systems. Standard access system, and XOP. XOP is a simplification of the access system to make things a bit easier. However, with simplification comes a loss of features.
XOP is enabled by default for newly registered channels. It has 4 ChanServ commands – VOP, HOP, AOP and SOP for auto voice, auto halfop, auto op and auto admin, respectively. See ChanServ Commands for help with those commands.
The regular access system really isn’t very difficult to get your head around and provides you with much more control over your channel. To use it, you must first turn XOP off with the command:
/cs set #channel xop off
Following this, you must use the access level system to give people certain privileges in your channel. The access level system uses numbers to represent access. They range between -2 and 10000. The list below shows which levels, by default, map to which access within the IRC server:
-2 – Unable to join the channel
-1 – Not allowed to be oped in the channel
0 – Regular user
3 – Voiced user
4 – Halfop user
5 – Full op user
10 – Admin user
9999 – Channel owner
To change the access level of a user, use the following command:
/cs access #channel add
An example of the use of this command is:
/cs access #chills add Phil 5
This would make Phil level 5 (an op, by default) in #chills.
However, there is much more to the access system than this. You can customize many aspects of your channel.
These are:
AUTODEOP :: Channel operator status disallowed
AUTOHALFOP :: Automatic mode +h
AUTOOP :: Automatic channel operator status
AUTOPROTECT :: Automatic mode +a
AUTOVOICE :: Automatic mode +v
NOJOIN :: Not allowed to join channel
SIGNKICK :: No signed kick when SIGNKICK LEVEL is used
ACC-LIST :: Allowed to view the access list
ACC-CHANGE :: Allowed to modify the access list
AKICK :: Allowed to use AKICK command
SET :: Allowed to use SET command (not FOUNDER/PASSWORD)
BAN :: Allowed to use BAN command
BANME :: Allowed to ban him/herself
CLEAR :: Allowed to use CLEAR command
GETKEY :: Allowed to use GETKEY command
HALFOP :: Allowed to use HALFOP/DEHALFOP commands
HALFOPME :: Allowed to (de)halfop him/herself
INFO :: Allowed to use INFO command with ALL option
KICK :: Allowed to use KICK command
KICKME :: Allowed to kick him/herself
INVITE :: Allowed to use INVITE command
OPDEOP :: Allowed to use OP/DEOP commands
OPDEOPME :: Allowed to (de)op him/herself
PROTECT :: Allowed to use PROTECT/DEPROTECT commands
PROTECTME :: Allowed to (de)protect him/herself
TOPIC :: Allowed to use TOPIC command
UNBAN :: Allowed to use UNBAN command
VOICE :: Allowed to use VOICE/DEVOICE commands
VOICEME :: Allowed to (de)voice him/herself
MEMO :: Allowed to list/read channel memos
ASSIGN :: Allowed to assign/unassign a bot
BADWORDS :: Allowed to use BADWORDS command
FANTASIA :: Allowed to use fantaisist commands
GREET :: Greet message displayed
NOKICK :: Never kicked by the bot’s kickers
SAY :: Allowed to use SAY and ACT commands
These levels are all minimum levels, except AUTODEOP and NOJOIN, which are maximum levels. Thus, any user with an access level higher than the one defined for a particular access level name will have permission to do that.
To see how these are currently configured in your channel, use the command:
/cs levels #channel list
Any of these can be customized using the command:
/cs levels #channel set
So… If you would like users of level 7 and above to be able to read channel memos in #chills, you would do:
/cs levels #chills set memo 7
As you can see, the power provided by the non-XOP access system is incredibly diverse. Give it a try – you never know, you might like it.
Any questions, ask in #help.
