For complete up-to-date command listing, and help topics, /msg H HELP (when online superchat). To register your channel on SuperChat, visit our on-line registration page at http://www.superchat.org/register.html ----------------------------------------------------------------- (+) FAQ and Reg'd forms for Serv v7.03 -- Updated last: 04.05.98 ================================================================= What is Serv? o Serv is a multitasking channel service that is a free service provided by SuperChat. Serv is a channel robot, that you can register to your channels, so you can 1) Keep your channel open, 2) Give you ops, and 3) Offers protection from channel takeovers. Serv is unique, and is only avaliable on the SuperChat network. Also, unlike the other networks, Serv is a stable robot, it goes offline only a few seconds, when restarted, to run a newer upgrade. I've tried to keep Serv simple, as in not a lot of really long syntax needed for commands, while at the same time, expanding what Serv can do, and how it can better do its work. NOTE: Serv is several bots coded into one, and all respond to the same commands. Its kinda like having 24 bots, all of whom respond to the same central computer, and all who know the same userfiles and channel information. In the online helps in Serv, you'll notice H sends the helps, and a lot of the commands, rather than Serv. H is the Serv help-nick. Reason for H, rather than Serv doing that, is that H is a smaller nick, with a small IP, some users (unix is the one that comes to mind first) have no GUI interface (in their shells), so all of IRC appears in one window, and that window is 80 characters wide. If someone sends a NOTICE to them, they see: -play(darkmind@SuperChat.Org)- hello So a long nick / IP will make the text formatting wrong, so thus the H nick. I recommend sending all commands to H, since H is not only the easiest to type, but that H nick, isn't going to be changed or replaced. All the other nicks (except Serv) will be replaced, if there are not enough users using them. ----------------------------------------------------------------------------- When is it gonna be finished? You are looking at a production copy of Serv online right now as I have completed Serv till it has quite a few commands and now, no bugs - tada:) ----------------------------------------------------------------------------- Who wrote Serv? Serv is written by: play , also try: /msg H help about ----------------------------------------------------------------------------- How do I set Autops? To get autoped, you must do the following: 1) Already have a passwd set 2) Login to Serv 3) Join your channel If the above are followed in that order, you will be autoped upon joining your channel. Heres a step-by-step instruction on how (type it as seen): /msg serv@superchat.org login [#chan] 0 /msg H pass <#chan> Then you've set your pass in <#chan>! Not too hard 'eh? :) ----------------------------------------------------------------------------- Serv really sucks, you keep changing stuff! I actually have had users complain about changes, the changes are not to confuse users, rather, to upgrade and improve Serv. I will add/update Serv when I see something thats needed to be added, or something is brought to my attention. Email ideas and comments to jason@superchat.org ----------------------------------------------------------------------------- Where can I get more information? If you have questions or problems, join #cservice and ask. Other than this faq, you might want to check out: http://www.superchat.org/serv.html for other online helps. ----------------------------------------------------------------------------- Can I have the source for Serv, and what is it written in? Serv is written in ansi c, under under BSD/OS. At this point (03.22.98), Serv is about 240k of .c source. The source is not pubically avaliable. ----------------------------------------------------------------------------- What are the Serv commands? Serv's Commands: Level 000: ACCESS, UP, INFO, PASSWORD, SHOWCOMMANDS LOGIN, LOGOUT, IGNORES, TOP, SETPASS OPERS, KILL, NICKS, CSERVICE, MASK Level 050: KICK, VOICE, DEVOICE Level 100: OP, DEOP, TOPIC, KICKBAN, BANLIST, SOUND NOTE, NOTES, INVITE, REOP, ROLL, HISTORY BAN, UNBAN Level 200: CLEARBANS, MODE, CLEARCHAN, WHO, CACCESS Level 300: JOIN, PART, CYCLE, FKICK Level 400: ADDUSER, DELUSER, PERMBAN, DELBAN, MODINFO SETTOPIC Level 450: SETNICK, SAY, ME Level 499: SETINFO, SETMODE, SETJOIN, WHOADD SHOWMODES, DELNOTES, STRICTOPS SETURL, DELURL Since Serv's commands are always changing, you can see the latest commands with: /msg H COMMANDS <#chan> ----------------------------------------------------------------------------- What are the levels on a channel and how does it affect me? The person who registered the channel, will be added at level 500. You cannot add users at the same level as yourself, however, you can add up to the level just below yourself, so if your 450, you can add at 449. Also, keep in mind, you cannot delete any user with equal, or higher access than you, so if you ask for a co-owner, its not possible for you to ever delete them, without getting some help, and then explaining why, and so forth, I advise to just add your very close friends at 499, saves both you, and cservice time. ----------------------------------------------------------------------------- I can't get Serv to op me! One of the major reasons would be that Serv doesn't recognize you. Check your ip (/whois yournick), and see if your ip has changed (ie; now in numerics instead of words, or whatnot). If that's correct, then you may want to check your username (user@host.ip), if I change my username "play" to let's say... "playdoh", and try to ask Serv to do something, it will not recognize me. It recognizes by user@host, so keep that in mind if you plan on changing your personal info in your client's setup. ----------------------------------------------------------------------------- How many times can I change Serv's nick? Well there is no limit, change his nick as much as you think your channel needs :) How many nicks are there? There is also no limit, oh, wait, nevermind, theres twenty-four. ----------------------------------------------------------------------------- Why can't I add anymore users or permbans? Serv has a max limit for users / permbans in its database per channel. The current limit, its 30 Permbans, and 80 users. ----------------------------------------------------------------------------- Serv and unused channels: Intresting subject.. after a while, there has been a lot of channels who have been registered, but no users frequent it, and the bots waste resources idling in unused channels, so here's my solution: Serv leaves all channels alone... however, it keeps track of users as they join, if you login for a channel, you'll update the channel TS (time stamp), meaning, Serv now sees the channel as last used at the time you joined. This happens for any user of the channel who is in the ACCESS list. If no one joins, the channel TS remains the same, at that date the last user joined, if it gets up to a certain time period things happen: 7 days - At one week, the channel is made +s, as not to clutter the channel listings with unused channels. 8 days - At 8 days, the channel is given a warning in the topic that the channel is idle. 10 days - The channel is now on the purge list, and is given a diffrent warning in the topic. 14 days - The channel has had NO users at ALL join for two weeks, so its pretty safe to assume the channel is dead, and no one frequents it -- so the channel is automaticly purged, and logged as "Purged due to inactivity." ----------------------------------------------------------------------------- _____________ SERV COMMANDS: ~~~~~~~~~~~~~ NOTE: To get further help on a command, type /msg H help . The bot will send you a descriptive help on the topic specified. When asking for help, the characters '<' and '>' are not included as part of the . For example, to get help on the command called kick, the user would type: /msg H help kick --- Level 0: KILL [0]: This command will allow you to kill your ghosts, for times when you get disconnected from IRC, or whatever, you can regain your nick (as long as your u@h matches your ghost's u@h). Syntax: /msg H KILL Example: /msg H KILL play NICKS [0]: Will list all the avaliable Serv nicks, along with some usage numbers. Syntax: /msg H NICKS TOP [0]: This command will show the top Serv channels, /msg H TOP ACCESS [0]: This will show the user(s) channels/access. /msg H ACCESS <#chan> |=||INFO> /msg H ACCESS Examples: /msg H ACCESS #Serv play /msg H ACCESS #SuperChat 400 /msg H ACCESS #newbies ALL /msg H ACCESS #blah INFO To search for a keyword with ACCESS: /msg H ACCESS #chan = Example: /msg H ACCESS #fireplace = aol To list all users above, or below a given access level: /msg H ACCESS #chan <> level Example: /msg H ACCESS #superchat > 300 Lists users over 300 access /msg H ACCESS #chat < 450 Lists users under 450 access The INFO command will reply the number of users on each level, thus you can look up users easier by levels (since you know what levels have users.) UPTIME [0]: Shows Serv's current uptime, number of users inside the bot, and number of commands issued by users to Serv. /msg H UP INFO [0]: Shows specific info about the channel specified, such as the current bot's nick, setjoin status, who the channel owner is, and so forth. /msg H INFO <#chan> SHOWCOMMANDS [0]: Will show all available commands for you in the specified channel. /msg H SHOWCOMMANDS #chan LOGIN [0]: login will log you into Serv. Once logged in you`ll be able to do commands with access levels greater-than zero. When issued without a channel, Serv will try to verify you in the registered channels you are in. If you are not in any channels, Serv will be unable to verify you unless you specify a channel. If you have more than one channel with the same pass, you can login like: /msg serv@superchat.org login #chan1,#chan2,#chan3 MyPass NOTE: login must be sent to serv@superchat.org instead of H. /msg serv@superchat.org LOGIN MyPass To check what channels a user is verfied for: /msg H ACCESS LOGOUT [0]: Will log you out of Serv. /msg H LOGOUT IGNORES [0]: Returns the list of users currently being ignored. This list is checked every five minutes. /msg H IGNORES OPERS [0]: Shows a list of IRCops currently online. /msg H OPERS CSERVICE [0]: Gives a list of CService Admins, and they're global access level. /msg H CSERVICE MASK [0]: Will show an example wildcard for the specified user. /msg H MASK SETPASS [1]: Changes your password on ALL your cached channels in one go. Channels you are cached (verfied) for can be seen with: /msg H access Once this command is issued, your current login pass is auto- updated, so there is no need to logout/login again. This cmd removes the need to /msg h pass #chan for EACH of the channels you have access in. /msg H SETPASS PASS [1]: Setting a password will enable autops. If you have no pass set yet, type: /msg serv@superchat.org login 0 After you login, you may then set a pass. A password has a max of 30 characters length. - To set a passwd for the 1st time: /msg H PASS <#chan> NOTE: you have to login first, so type this before setting a pass: /msg serv@superchat.org LOGIN 0 - To change a password: /msg H PASS <#chan> KICK [50]: Kick command will kick a user from your channel: /msg H KICK <#chan> [kick message] VOICE [50]: Voices the specified nicks. If no nicks are specified Serv assumes you are the target and voices you. /msg H VOICE <#chan> DEVOICE [50]: Devoices the specified nicks. If no nicks are specified Serv assumes you are the target and devoices you. /msg H DEVOICE <#chan> ----------------------------------------------------------------------------- Level 100: OP [100]: There are two ways to use the OP command: To op yourself: /msg H OP <#chan> To op other users: /msg H OP <#chan> DEOP [100]: Syntax to deop: /msg H DEOP <#chan> TOPIC [100]: Will make Serv change the topic in your channel: /msg H TOPIC <#chan> BAN [100]: This bans the user specified. If is sent, Serv will use it to ban the user in question. If only is sent, Serv will ban the user's host automaticly. If a level (1/2/3) is sent, Serv will ban the specified user accordingly: 1 - *!*user@host.isp 2 - *!*@host.isp 3 - *!*@*.isp /msg H ban <#chan> [level] Examples: /msg H ban #SuperChat play /msg H ban #Pog *!play@*.cajun.net /msg H ban #CService play 3 KICKBAN [100]: This kickbans the user specified. /msg H kickban <#chan> [reason] BANLIST [100]: Lists the hosts that are in the permanent ban list. /msg H BANLIST <#chan> To delete a permban, just use the DELBAN command. /msg H help delban SOUND [100]: Makes Serv play a SOUND in your channel. Syntax: /msg H SOUND <#chan> Example: /msg H SOUND #superchat tada.wav NOTE [100]: Allows a user to add a NOTE to your channel's noticeboard. All 100 level+ users can read/write to this noticeboard. It will let you leave notes to other channel members if they are not present when you were online, or other important info. Syntax: /msg H NOTE <#chan> Example: /msg H NOTE #superchat Oper meeting at 10pm! After 20 notes is posted, the oldest will auto-expire. NOTES [100]: Lets a user read the noticeboard for your channel. Syntax: /msg H NOTES <#chan> Example: /msg H NOTES #cservice INVITE [100]: Allows you to have Serv invite you to your channel. Note Serv does not have to be in your channel to invite you. Syntax: /msg H INVITE <#chan> Example: /msg H INVITE #play REOP [100]: This command will "reop" your channel. If Serv doesn't have chanops, this will give him ops back. Syntax: /msg H REOP <#chan> ROLL [100]: Rolls the specified die in your channel. Die being the number of sided dice to roll. This can be any positive integer. Syntax: /msg H ROLL <#chan> HISTORY [100]: History will tell you issued the last fourty commands in your channel. If number is specified, Serv will display the last number commands. ie; history #blah 5 Will return the last 5 commands for #blah. Please note that the [number] option will only work if the chan has 40 entries in the history. Syntax: /msg H HISTORY <#chan> [number] UNBAN [100]: Unbans the specified nick or address. Syntax: /msg H UNBAN <#chan> Example: /msg H UNBAN #SuperChat *!*user@*.iadfw.net Example: /msg H UNBAN #CService play ----------------------------------------------------------------------------- Level 200: CLEARCHAN [200]: The CLEARCHAN command will be used more by users who choose to leave the bot OUTSIDE the channel. If they leave Serv outside, sometimes others come in and get ops so a simple CLEARCHAN: will clear them of any modes and allow you to regain your channel. /msg H CLEARCHAN <#chan> CLEARBANS [200]: This will clear a channel's banlist: /msg H CLEARBANS <#chan> MODE [200]: Makes Serv change channel modes: /msg H MODE <#chan> +/- Example: /msg H MODE #Serv +i WHO [200]: Shows all users who are in the specified channel, along with all modes (ie; chanops and voiced). Syntax: /msg H WHO <#chan> CACCESS [200]: Displays all on-line users who currently have (cached) access for the specified channel. In other words, all users who currently have access to do commands. Syntax: /msg H CACCESS <#chan> ----------------------------------------------------------------------------- Level 300: JOIN [300]: Makes Serv join your channel: /msg H JOIN <#chan> PART [300]: Makes Serv part your channel: /msg H PART <#chan> CYCLE [300]: CYCLE will make Serv part, then rejoin your channel: /msg H CYCLE <#chan> FKICK [300]: FKICK will kick any users in the specified channel that match the given mask. The mask must be given in *user@host or *host format. If a reason is supplied, it will be used as the kick comment. Syntax: /msg H FKICK <#chan> [reason] ----------------------------------------------------------------------------- Level 400: ADD [400]: To add a user to your channel. Adding a user with a passwd will save the user from having to login to serv with the passwd of 0 then setting a passwd. If your having problems with figuring out the hostmask (u@h) see help on mask: /msg H ADD <#chan> [user@host.ip] [pass] Example of adding mregit (mregit@wh1-207.eclipse.net): /msg H ADD #play mregit mregit@*.eclipse.net 450 or with a password: /msg H ADD #play mregit mregit@*.eclipse.net 450 mregits_passwd If mregit was online, specifying her user@host mask is optional. If you do not specify, Serv will create the correct u@h mask for the user, and add accordingly. Example: /msg H add #superchat Viking 100 NewPass DEL [400]: To delete a user from your channel: /msg H DEL <#chan> Example: /msg H del #play play /msg H del #play *play@*.cajun.net NOTE: If you delete by , you will delete all occurrences of that user in the channel database. If you would like to delete just one of that user's IP addy's, then use a wildcard: *user@host.ip. Or, you can add your users with different nicks: nick1, nick2, and delete nick1 if its the unnecessary host.ip later. PERMBAN [400]: PermBAN will disallow any users you want from your channel. Syntax: /msg H PERMBAN <#chan> *userid@*.host.ip Example: /msg H PERMBAN #superchat *@*.ptd.net DELBAN [400]: Will delete a permban from your channel's database. Syntax: /msg H DELBAN <#chan> Example: /msg H DELBAN #superchat *play@*.superlink.net NOTE: The DelBAN command must match the ban in the BANLIST exactly, or it will not delete the permban. MODINFO [400]: Modifies a user's entry in the ACCESS list for a channel. MODINFO has three types of modifications available: ADDRESS - Modifies an entry's address. LEVEL - Modifies an entry's level. ADDHOST - Adds a second u@h entry for specified user. Examples: /msg H MODINFO #fun ADDRESS play jason@*superlink.net Will modify 'play's host to jason@*superlink.net /msg H MODINFO #fun LEVEL bob@*.snet.com 500 Will modify user matching host "bob@*.snet.com" to access level 500 /msg H MODINFO #fun ADDHOST play jason@*.eclipse.net Adds a second user@host entry for 'play' SETTOPIC [450]: This will make Serv set the topic to whatever you specify when it joins your channel: /msg H SETTOPIC <#chan> To make Serv not set any autotopic: /msg H SETOPIC <#chan> 0 NOTE: This is NOT to change topics with. This sets a DEFAULT topic for your channel. If you want to change a topic, use the TOPIC command. ----------------------------------------------------------------------------- Level 450: SAY [450]: Makes your current Serv nick talk in your channel. /msg H SAY <#chan> Example: /msg H SAY #superchat hey folks! ME [450]: Makes your current Serv nick action in your channel. /msg H ME <#chan> Example: /msg H SAY #superchat grins:) SETNICK [450]: This allows a user to change the default Serv nick for that channel. This nick change is only for your channel, and can be redefined to any of the nicks allowed, this is IS saved: /msg H SETNICK <#chan> EXAMPLE: /msg H SETNICK #newbies Athena For a list of possible nicks: /join #serv If you have suggestions for future Serv nicks, email nickideas@superchat.org ----------------------------------------------------------------------------- Level 499: SETINFO [499]: The channel owner can set the channel information (what is shows on /msg H INFO <#chan>. This should have something about the channel, or a URL, or a regular channel greeting: /msg H SETINFO <#chan> SETMODE [499]: Sets a permanent channel mode in a channel (default is +tn). Whenever Serv joins a channel, it will set the chanmodes according to whatever is set in SETMODE. And if the channel modes are changed, it will enforce whatever was set. If you want to set your channel to +tnk KEY, here's an example: /msg H SETMODE <#chan> +tnk KEY Let's say.. you don't want your channel to ever be +il: /msg H SETMODE <#chan> +tn-il There isn't a command to view the current settings, cause if you have a +key, and someone wanted to know the key, they need only request the modelock info. :) NOTE: The default setting for a newly registered channel is: +tn-lkispm SETJOIN [499]: This will make Serv join your channel if set ON, if set OFF, will remain outside the channel unless told to join. This is for the channels who'd rather Serv be an outside channel bot. To make NOT join your channel: /msg H SETJOIN <#chan> OFF For autojoin (default setting): /msg H SETJOIN <#chan> ON I will later make Serv deop users who create your channel when no one is there (thus getting the ops), so your channel can remain intact. WHOADD [499]: This just shows who added the channel, and when: /msg H WHOADD <#chan> SHOWMODES [499]: Shows the current SETMODE for the specified channel. /msg H SHOWMODES <#chan> DELNOTES [499]: Deletes the current NOTES file for the channel. /msg H DELNOTES <#chan> STRICTOPS [499]: StrictOp will only allow authenticated users to be op. Please note that StrictOp will only deop users who have been given ops while Serv was online. /msg H STRICTOPS <#chan> SETURL [499]: Adds data into an online web server. Data added is viewable at http://www.superchat.org/homepages/chan.html /msg H SETURL <#chan> This is useful for putting up links to a channel's homepage, and other links. You can set up to 20 SETURL's max. To delete your page, see help on DELURL. To undo the last ADDURL added, use the UNDO command. More advanced users will SETURL with html codes: /msg H SETURL #blah Mypage /msg H SETURL #blah etc.. DELURL [499]: Deletes the SETURL page for specified channel. /msg H DELURL <#chan> UNDO [499]: Undoes the last SETURL sent to Serv. /msg H UNDO <#chan> ============================================================================= I registered Serv, now what? (QUICKIE INTRO TO DEAL WITH SERV) Once you register Serv, it will join your channel, and set the channel modes +tn, as well as set the topic. You will want to change the default info Serv uses for the channel: COMMAND - How to get help on the command - Quick definition ------- - ------------------------------ - ----------------------- -> SETINFO - /msg H HELP SETINFO - Sets a channel greeting -> SETTOPIC - /msg H HELP SETTOPIC - Sets a default topic -> SETMODE - /msg H HELP SETMODE - Sets default chan modes -> SETNICK - /msg H HELP SETNICK - Changes Serv's nick -> SETJOIN - /msg H HELP SETJOIN - Can make Serv stay outside the channel Once you change the default settings, your channel will be ready to go, you will want to add your channel operators into Serv's userlist, as well as permban any users you've had trouble with previously. Remember that when you add users at high levels, and they abuse the powers the high level gives them, YOU ARE HELD RESPONSIBLE. As channel mannager, you are responsible for all goings on in your channel. Take care in who you trust with access. ============================================================================= Now that I read this... what happens? You should now know a basic idea of how Serv works and Anyways, if you still have problems with Serv, join #cservice and ask.. Send all comments and ideas for Serv to ideas@superchat.org ..