]> arthur.barton.de Git - ngircd-alex.git/blob - doc/Services.txt
Update ChangeLog file
[ngircd-alex.git] / doc / Services.txt
1
2                      ngIRCd - Next Generation IRC Server
3                            http://ngircd.barton.de/
4
5                (c)2001-2011 Alexander Barton and Contributors.
6                ngIRCd is free software and published under the
7                    terms of the GNU General Public License.
8
9                               -- Services.txt --
10
11
12 ngIRCd doesn't implement a "special IRC services interface", but services
13 acting as a "regular servers" ("pseudo servers") are supported, either
14 using the IRC protocol as defined in RFC 1459 or RFC 2812.
15
16 Support for Services has been tested using
17  - Anope 1.9.8 or later (<http://www.anope.org/>)
18  - Atheme 7.0.2 or later (<http://www.atheme.net>)
19  - "IRC Services" 5.1.x by Andrew Church (<http://achurch.org/services/>)
20
21 This document describes setting up ngIRCd and these services.
22
23 Please let us know if you are successfully using other IRC service packages or
24 which problems you encounter -- thanks!
25
26
27 Setting up ngIRCd
28 ~~~~~~~~~~~~~~~~~
29
30 The "pseudo server" handling the IRC services is configured as a regular
31 remote server in the ngircd.conf(5). In addition the variable "ServiceMask"
32 should be set, enabling this ngIRCd to recognize the "pseudo users" as IRC
33 services instead of regular IRC users.
34
35 Example:
36
37   [SERVER]
38      Name = services.irc.net
39      MyPassword = 123abc
40      PeerPassword = 123abc
41      ServiceMask = *Serv
42
43
44 Setting up Anope 1.9.x
45 ~~~~~~~~~~~~~~~~~~~~~~
46
47 Anope 1.9.8 or later (<http://www.anope.org/>) can be used with ngIRCd using
48 the "ngircd" protocol module.
49
50 At least the following settings have to be tweaked, in addition to all the
51 settings marked as required by Anope:
52
53 In conf/services.conf:
54
55   define
56   {
57         name = "services.host"
58         value = "services.irc.net"
59   }
60
61   uplink
62   {
63         host = "server.irc.net"
64         port = 6667
65         password = "123abc"
66   }
67
68   # Load ngIRCd protocol module
69   module { name = "ngircd" }
70
71   networkinfo
72   {
73         # Must be set to the "MaxNickLength" setting of ngIRCd!
74         nicklen = 9
75
76         chanlen = 50
77   }
78
79 In conf/nickserv.conf:
80
81   nickserv
82   {
83         # not required if you are running ngIRCd with a higher nickname limit
84         # ("MaxNickLength") than 11 characters, but REQUIRED by default!
85         guestnickprefix = "G-"
86   }
87
88
89 Setting up Atheme 7.0.2 or later
90 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
91
92 Atheme 7.0.2 or later (<http://www.atheme.net>) may be used with ngIRCd using
93 the "ngircd" protocol module.
94
95 The following settings need to be in atheme.conf:
96
97   loadmodule "modules/protocol/ngircd";
98
99   uplink "server.irc.net" {
100         password = "123abc";
101         port = 6667;
102   };
103
104 The documentation of Atheme can be found in the doc/ directory of the
105 Atheme source distribution.
106
107
108 Setting up IRC Services 5.1.x
109 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
110
111 IRC Services 5.1.3 and above can be used with ngIRCd using the "rfc1459"
112 protocol module.
113
114 Please note that versions up to and including 5.1.3 contain a bug that
115 sometimes causes IRC Services to hang on startup. There are two workarounds:
116  a) send the services process a HUP signal ("killall -HUP ircservices")
117  b) apply this patch to the IRC Services source tree:
118     <ftp://ngircd.barton.de/ngircd/contrib/IRCServices513-FlushBuffer.patch>
119
120 At least the following settings have to be tweaked, in addition to all the
121 settings marked as required by IRC Services:
122
123 In ircservices.conf:
124
125   Variable              Example value
126
127   RemoteServer          server.irc.net 6667 "123abc"
128   ServerName            "services.irc.net"
129   LoadModule            protocol/rfc1459
130
131 In modules.conf:
132
133   Module                protocol/rfc1459
134
135 The documentation of IRC Services can be found here:
136 <http://www.ircservices.za.net/docs/>