Our pseudo-wiki is under construction, for now only important information.
TAPS is a fork from PTlink Software by two members of its former development team. ^Stinger^ and openglx are available for comments at #taps, please feel free to reach them.
We're always at #taps at irc.ircworld.nl, please join our conversations. English is prefered, but Portuguese is nice too.
/server irc.ircworld.nl /join #taps
TAPS 6.21.1 was released for production in 01 March 2011, being a urgent fix for problem find at Issue 62.
CHANGES are listed below:
TAPS6.21.1 (01 Mar 2011) ================================================================== What has been fixed ? --------------------- [Issue 0000062] Opers aren't being able to issue Kills TAPS6.21.0 (31 Jan 2011) ================================================================== What is new ? --------------------- [issue 0000006] VIP features for users [Issue 0000046] Create module to maintain vlink (virtual servers) database [Issue 0000054] Antispam system for channels and privmsgs What has been fixed ? --------------------- [Issue 0000047] IRCd crashes on x86_64 environment
Enjoy, and report us ANY issue!
Development is active. More information at taps-ircd gitweb.
PTlink Services 2 reached end of life several years ago, dropped for PTlink Services 3. PTlink Services 3.10.0 was it final release before PTlink closure. TAPS is in active process to release a new version. Check out our git repository for taps-services, branch 3.11.0.
Expected release is in later January 2011 (early February, now). For now, snapshot for latest merges is at:
taps-services branch 3.11.0 snapshot
All interaction is made under our bug reporting handler at TAPS bugs. Please, create an account and read all features request.
Bug reports are welcome, and major fixes are priorized.
PTlink Software became famous for its feature-full set of IRC daemons. IRCd, based on rock-solid Hybrid6 code, a modular and SQL-based Services from scratch, plus other tools for easing networking administration.
Our set of services is currently one of most technologic advanced daemons for DALnet-lik services, including NickServ, ChanServ, MemoServ, OperServ and BotServ. At 3.11.0 a new HostServ is expected to debut. Everything is modular, so you can choose to have some or all modules at any time. Dynamic loading works in most platforms.
Everything is backed by it SQL support. There are not database files: you can insert or modify entries directly at database server and have services acting a new way immediatily.
Modular system using event-based interactions, it's just straight forward to create a new functionality. Git access needs user, ask openglx for more information.
We eat our own dog food, ya' know. Alas, our lack of documentation is shameful. :) Secondary projects to create documentation are undergoing, anyhow.
Get source code (links are above), uncompress and compile:
./configure --help <<<--- See if there are any interesting options to you ./configure make make install
Default target is $HOME/ircd. Binary is at bin/ircd. Configuration files are at etc/.
Configuration file | Description |
---|---|
etc/ircd.conf | Daemon configuration file, mostly Hybrid6 configuration |
etc/main.dconf | Server-wide configuration, such as flood limits and so |
etc/network.dconf | Network-wide configuration, such as Services server |
Get source code (links are above), uncompress and compile:
./configure --help <<<--- See if there are any interesting options to you ./configure make make install
Default target is $HOME/ircsvs. Binary is at bin/ircsvs. Configuration files are at etc/. Those files have default modules to load at start, and database configuration.
Before running ircsvs, take a look on configuration it holds at SQL entries. To do so, check
~/ircsvs/bin/ircsvs conf list
You also may export those entries to a shell script and update them more easily.
cd ~/ircsvs/bin/ ./ircsvs conf export > my_config.sh
Now edit my_config.sh, and run it to have configuration set up.
IMPORTANT: pay attenttion to nickserv.Root setting: it must be set only when first configuring your ircsvs. After you configure it, add yourself to Root group at /NickServ GROUP and remove previous conf.
I'd recommend add yourself also to Admin and Oper groups, as our ROLE/GROUP system isn't recursive: being at *Root** group doesn't grants you access to features restricted to an Oper, for example.
TAPS6.21.0 and TAPS Svs3.11.0 introduces virtual link support, mimicking an old BrasNET controversial feature. Virtual servers are something RFC1459 (to know, see setion 4.1.3) introduced "by mistake". As clients send servername on which they are trying to connect, it was possible to track where user tried to connect. Think of Named Hosts on an HTTP/1.1 specification.
Feature is considered controversial due it power-hungry background: many person went into buying domainnames and paying to have a virtual link connect to the network, leading to an economic relation between virtual link owners and network owner. That's not actual reason why BrasNET went under large DDoS attacks until its shutdown. But, I for one, really consider that it has much to do with it.
Anyhow, as BrasNET used PTlink Software for their systems, and many brazilian networks also made (private) PTlink project forks, VLinks are a top request for several years. In 2011, we finally decided to give it a go. Now, Svs3.11.0 can manage virtual links and virtual opers.
Load vlinks and os_vlink modules. Append them at etc/ircsvs.modules listing to automaticly load them at services startup.
To configure a virtual server, you first need to create two groups at Nickserv GROUP.
/NickServ GROUP CREATE group[automodes] master_group description
Something like:
/NS GROUP CREATE VLinkAdmins Admin My nice admin group /NS GROUP CREATE VLinkOpers VLinkAdmins Opers, can be managed by those at VLinkAdmins too
Now, create VLink:
/OS VLINK ADD irc.my.vlink.server.name VLinkAdmin VLinkOper Description to new server
Now, when an user from VLinkAdmins or VLinkOpers identify their nicknames after connecting to irc.my.vlink.server.name, they will receive special privileges. Those privileges are limited to their own vlink.
To get some statistics, see
/OS VLINK USAGE
Have fun, just don't start DoS'ing others. :)
Major difference from PTlink Services 2 to 3 is ROLE system. Previously, all channel management was made using LEVELS and ACCESS. You gave an user ACCESS to channel, which was a numerical value (ranging from -9999 to 9999). According to their number, it matched a LEVEL.
Each permission had a numerical attribute, configured by LEVEL. If you had ACCESS equal or higher than that LEVEL required, you were granted.
ROLE much more granular, fine grained. But, being different from IRCServices-based system (dated 1996), many are not used to it.
A ROLE is an hierarchical system, which each individual channel chooses it organization. Each role has a master (can be null), a list of action and a list of permissions.
#taps has three roles. admin has no master role, so only channel founder can change its members. Anyone at admin will have aadmin, aop and msg actions performed once they join the channel, and will be able to do all functions listed after the : separator.
operator is managed by *admin**, and has one less action (will not aadm), and much less permissions.
voice is managed by operator, will only have avoice and msg actions, and can only voice themselves.
-ChanServ- *** Roles on #taps -ChanServ- admin [] aadm,aop,msg:set,kick,opdeop,hopdehop,voice,list,view,invite,unban,clear,akick -ChanServ- operator [admin] aop,msg:kick,opdeop,voice,list,invite,unban -ChanServ- voice [operator] avoice,msg:voice -ChanServ- *** End of role list
Actions available:
Action | Meaning |
---|---|
aadm | auto admin on join (+a) |
aop | auto op on join (+o) |
avoice | auto voice on join (+v) |
notice | send notice to the channel on join |
msg | send message to the channel on join |
Permissions available:
Permission | Meaning |
---|---|
set | can use SET |
kick | can use KICK |
opdeop | can use OP/DEOP |
voice | can use VOICE/DEVOICE |
invite | can use the INVITE command |
unban | can use the UNBAN command |
clear | can use the CLEAR command |
view | can use the ROLE VIEW comzand |
list | can use the ROLE LIST command |
akick | can use the AKICK command |
Currently, ony channel founder can change actions and permissions for roles. More information is available at /CS HELP ROLE.
In 2006, BrasNET made a new service called VIP. Many users paid to get some privileges like higher limit for memos and channel, special vhost, spy mode, etc.
Since TAPS started we've received many requests from brazilians to provide VIP features. Now, we have it. VIP features was merged into our source in January 2011.
In order to use, you must follow the below steps:
1) Load module using /OperServ MODULE LOAD os_vip
Note: Append os_vip on ircsvs.modules to load automatically
2) Create VIP management group, just type:
/NickServ GROUP CREATE VipAdmin Admin description
Note: VipAdmin is a default value, you can change it using ircsvs set conf operserv.VipRole new_value
3) Add users to the VipAdmin group, type:
/NickServ GROUP ADD nick VipAdmin
Now, all users that belong VipAdmin group, can manage VIP Users.
/OperServ VIP ADD nick +time Note: 0d as time value means VIP won't expire
/OperServ DEL nick
/OperServ VIP LIST
These are the main commands. To further informations, use /OperServ HELP VIP