Automatically Voicing Users in Your Channel

You can automatically voice all users or all registered users as they join your channel. Some people use this command to help manage their channel. With everyone in the channel voiced, it’s simple to set the channel to moderated (/mode #channel +m) and devoice any troublemakers. Using the setting that voices only registered users can keep trolls and flooders from interrupting your channel.

There are important limitations to note however. Since the Autovoice command voices everyone who joins, someone you devoice can simply part and rejoin the channel to regain voice. It’s generally more effective to ban and kick the person instead.

Here’s how to use the Autovoice command. To voice everyone in the channel:

/msg chanserv autovoice #channel all 

For example: /msg chanserv autovoice #topgear all. In your status window, you’ll see something like this:

 -ChanServ- Autovoice option for #topgear set to ALL.

For other autovoice options, you change the last word in the command to the setting you’d like, as these examples show:

Purpose Command
To voice registered users only:
/msg chanserv autovoice #channel reg
To see the autovoice status:
/msg chanserv autovoice #channel status
To turn off autovoice:
/msg chanserv autovoice #channel off

If you are using Access Levels in your channel, you have another way to automatically give voice to all users who join your channel:

/msg chanserv levels #channel set autovoice 0

For example: /msg chanserv levels #topgear set autovoice 0. Access level zero (0) is the level for regular users.

To remove the command, use the disable command, as in this example:

/msg chanserv levels #channel dis autovoice


—posted by Tengrrl/Bunny


Setting More Specific Channel Bans

Last week, I explained how to set a simple channel ban that takes care of most situations. Occasionally, you need a stronger or different kind of ban. This week I’ll explain the more complicated channel bans that you can use. Check the Extended Ban tutorial for additional options.

First, you need to understand the different parts of a person’s connection information, which you can find using the WHOIS command. This is the way that information is included in a ban:


Here is what that information means, with examples from the WHOIS information for LordBaconCheeseburger, which is

  • nick = the user’s nickname
    LordBaconCheeseburger in our example

  • ident = the user information, either set by the client or set by the user in the client’s settings
    TFlash in our example

  • specific-hostmask = the unique part of the person’s network connection information
    protectedhost-BACONYUM in our example

  • domain-info = the more general information about the network connection in our example

You can set a ban using any of this information. The basic format stays the same. You simply vary the unique information necessary to identify a person. I’ll provide examples for several options below:

To ban someone who uses a specific nick: /mode #channel +b nick!*@* For example, to ban anyone using the nick LordBaconCheeseburger from the channel #topgear, you would use this command: /mode #topgear +b LordBaconCheeseburger!*@*

To ban someone whose nick changes slightly: You can also use the * as a wildcard in the nickname. Say the person has a habit of adding endings to the nickname (like |away, |home, and |work). Just add a wildcard at the end of the nickname to ban all the different versions. Your command would look like this:
/mode #topgear +b LordBaconCheeseburger*!*@*

To ban someone who always has the same ident: /mode #channel +b *!ident@* Because this information can by set by the client, be careful with these bans. In the case of web-based clients like GeekShed’s Flash client or Mibbit, the ident is the same for everyone. For example, this command: /mode #topgear +b *!TFlash@* would ban everyone using GeekShed’s Flash client from the channel #topgear.

To ban everyone who uses a specific network connection: /mode #channel +b *!*@*domain-info. You can make this ban as specific as you like. Here are some examples, using the information for banning LordBaconCheeseburger from the channel #topgear:
      /mode #topgear +b *!*@* bans everyone using Comcast
      /mode #topgear +b *!*@* bans everyone in Georgia using Comcast
      /mode #topgear +b *!*@* bans everyone using the Comcast hsd1 server in Georgia

To combine bantypes: You can also combine these different banning techniques. For instance, you have had a lot of trouble with people using the GeekShed Flash client who connect from Georgia using Comcast. To ban them all from the channel #topgear, use this command: /mode #topgear +b *!TFlash@*

Before you try any of these bans, of course, be sure to check the information against others in the channel to avoid accidentally banning someone. Be sure that you have set the appeal information for your channel, so that people know what to do if they are banned accidentally.

Finally, for more details on how these bans work, check out the Bans & Mask Type Definitions from the Undernet website.

—posted by Tengrrl/Bunny


Setting a Simple Channel Ban

Channel bans allow you to block someone from joining your channel. These bans offer a lot of flexibility, letting you ban someone in several different ways. This article will explain a simple ban. You can check the Extended Ban tutorial for additional options. You can also use the AKICK command to ban someone permanently.

To ban someone from your channel, you need to know the hostmask for the connection. Use the WHOIS command to get the details. For the user LordBaconCheeseburger, you’d use this command:

/whois LordBaconCheeseburger 

In your status window, you’ll see something like this in response:

LordBaconCheeseburger is 
LordBaconCheeseburger is a registered nick
LordBaconCheeseburger on #jupiterbroadcasting #theshed
LordBaconCheeseburger using
LordBaconCheeseburger has been idle 3mins, signed on Fri Sep 28 21:00:28
LordBaconCheeseburger End of /WHOIS list.

You need the information from the first line to set your ban. The information listed after the @ symbol is the hostmask. To set a simple ban for your channel, use this command:

/mode #channel +b *!*@hostmask

If you wanted to ban LordBaconCheeseburger from the channel #topgear, for instance, you’d type:

/mode #topgear +b *!*

That’s all there is to it. Anyone with that hostmask is now banned from #topgear. Next week’s post will explain more complicated channel bans, so be sure to come back!

—posted by Tengrrl/Bunny


How to Choose Staff for Your Channel

Once you register your channel, you can add staff to help you keep order or enforce any rules you have for your channel. The commands for making someone a permanent admin, operator or half-operator are relatively simple. You can even add someone as a founder (though we don’t recommend it).

The harder part is choosing people who will make good staff. Promoting someone in your channel gives them control over what happens there. To make sure your channel stays YOURS and that it’s run the way you want it to be, you need to be cautious about choosing your staff.

Before you make someone an op or hop, ask yourself these questions:

  • Do I know the person well?
  • Do I trust the person?
  • Does the person have good judgment?
  • Is the person polite, helpful, and knowledgeable?
  • Is the person cool under stress?
  • Will the person follow my instructions?
  • Does the person follow the channel and network rules?
  • Has the person been in my channel for a while?
  • Is the person active regularly?

If you can honestly answer “Yes” to all those questions, then the person could make a good member of your channel staff. If you answer “No” to even one, you should probably choose someone else.

The worst people to choose are the people who ask to be staff members. Anyone who demands, begs, or continually asks to be network staff does not have the patience for the job. Worse yet, some trolls will ask for ops in a channel only to cause trouble. Save yourself a lot of trouble, and just don’t make these folks a member of your channel staff. You’ll have a lot less drama to deal with!


[If you ended up on this page because you were looking for information on becoming a member of GeekShed network staff, visit Can I be an Oper on GeekShed?]


—posted by Tengrrl/Bunny


Setting a ban appeal procedure for your channel

We have written and loaded a module into services to allow you to specify a ban appeal procedure for your channel. This module will allow users to see your ban appeal information when they do /cs info #yourchannel and also online at We have made this URL easy to remember so that you can point people to it if they enter your channel asking about a ban in another channel.

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.

Can I Make A Private/Secret/Restricted Channel?

At least twice a month, someone will come into #help asking about private channels or how they can secure their channel to prevent anyone except those they want in it. Since there are probably those that would like to know, but don’t ask, here is the quick and dirty guide to private/secret channels.

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:
/msg chanserv set #channel mlock +s
/msg chanserv set #channel restricted on
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 +sn.

Should you have any questions concerning setting your channel to restricted access, feel free to stop in #help and ask.

Extended Bans Tutorial

Silencing Users with Extended Bans

You can use extended bans to set up an alternative kind of ban that will give you more options, like silencing users. You can also read about how to set a simple channel ban and how to set more specific channel bans.

When you silence a user, you allow the person to stay in the channel, but block the person’s ability to participate in the discussion or change nicks. It’s an online equivalent of a short timeout, where the person has to sit quietly for several minutes before rejoining discussion.

To silence a user manually, you’d type:

/mode #YourChannel +bb ~q:nick! ~n:nick!

That command sets two bans, which is why the host information is listed twice. The first one (~q:nick! prevents the user from participating in the discussion (unless the user is +v or higher). The ~q stands for quiet. The second one (~n: nick!ident prevents the user from changing nicks. The ~n stands for nick.

In #YourChannel, bans are normally set by the user’s host, so an example ban would look like this:

/mode #YourChannel +bb ~n:*!* 

That example bans anyone (with any nick or ident) with the hostmask


Removing a Silence Extended Ban

If you silence a user manually, you have to remove the ban manually as well. Since you set the ban with +b, you will remove it by using the same command, but with -b. So to remove the ban, you would type:

/mode #YourChannel -bb ~q:nick! ~n:nick!

Everything is the same. You’re just removing the ban. Here’s the way to remove the example ban from above:

/mode #YourChannel -bb ~n:*!* 

Setting a Channel Extended Ban

There are two other kinds of extended bans:

  • ~c sets an extended ban based on a channel users are in
  • ~r sets an extended ban based on a user’s real name

You are unlikely to need either of these bans, but for the sake of thoroughness here is how they work.

To set an extended channel ban, you’d type:

/mode #YourChannel +b ~c:#channel

That ban would prevent anyone in #channel from joining #YourChannel.

Let’s pretend there’s a channel called #YourChannelHaters. We might decide that we do not want anyone from #YourChannelHaters to join #YourChannel. We could use this extended ban to prevent them from joining #YourChannel:

/mode #YourChannel +b ~c:#YourChannelHaters

You remove this kind of ban by switching to -b, so I could remove the ban on folks from #YourChannelHaters like this:

/mode #YourChannel -b ~c:#YourChannelHaters

Setting a Real Name Extended Ban

To set an extended ban based on a user’s real name, you’d type:

/mode #YourChannel +b ~r:*real_name*

The * character works as a wildcard, just as it does in other bans. Use the underscore character ( _ ) to represent spaces in the user’s real name. The underscore is also interpreted as an actual underscore character. In other words, the ban above would block someone using either “real name” (with a space) or “real_name” (with an underscore).

Here’s an example:

/mode #YourChannel +b ~r:*Jane_Doe*

That ban would prevent anyone who was using the real name “Jane Doe” or “Jane_Doe” from joining #YourChannel. Because of the * wildcard, someone with a real name like “Jane Doe rules” or “Jane_Doe_rules” would also be banned.

You remove this kind of ban by switching to -b, so I could remove the ban on “Jane Doe ” like this:

/mode #YourChannel -b ~r:*Jane_Doe*

—posted by bunny/tengrrl