Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
BitchX
GitHub Repository: BitchX/BitchX1.3
Path: blob/master/doc/botlink.txt
1069 views
1
BitchX bots mini-howto.. by Rwf, date: 08/17/97
2
3
Table of contents:
4
(1) Overview of BitchX's bot mode
5
(2) Basic steps to link two (or more) clients
6
(3) Using the partyline
7
(4) Frequently asked questions
8
(5) Contacts / miscellaneous information
9
10
Note: this document targets BitchX 72p2 and higher.. if you don't have
11
at least 72p2, check out the contacts section info on how to get
12
a newer copy of BitchX.
13
14
15
(1) Overview of BitchX's bot mode
16
17
BitchX includes an eggdrop-like bot mode.. it allows you to create a DCC
18
'partyline' between several BitchX clients. This document explains how
19
to create a network like this, and answers some of the questions surrounding
20
the linking in general.
21
22
(1a) Single-bot partylines
23
24
Yes, it is possible to create a partyline on just one client. It looks a
25
little like this:
26
Bot A
27
Client A / | \ Client C
28
|
29
Client B
30
31
In this situation, Clients A, B, and C can be any kind of IRC client who
32
is active in a chat with Bot A. Bot A relays all the text between the three
33
clients, allowing them to talk to each other through the bot.
34
35
(1b) Dual-bot partylines
36
37
Dual-bot partylines are structured like this:
38
39
Bot A ------------------------------- Bot B
40
Client A / | Client C / | \ Client E
41
Client B Client D
42
43
Here, Bots A and B are linked together. Clients A and B hold DCC chat
44
connections to Bot A, while clients C, D, and E have DCC chat connections
45
to Bot B. On each of the bots, the chat works the same way as it does in
46
the single-bot situation. However, the two bots also relay the information
47
between themselves, and pass that information on to their clients. For
48
example, if Client A typed a line of text, that same line would show up
49
on Client C's screen as Client A's nickname followed by Bot A's nickname,
50
to let Client C know where the message was coming from.
51
52
(1c) Three (and more) bot partylines
53
54
Client A \ / Client B
55
Bot A
56
Bot B / \ Bot C -- Client F
57
Client C / | |
58
Client D Client E
59
60
In this diagram, Bot A serves as the hub bot. Bots B and C are linked to
61
Bot A, and all the bots have clients attached to them. Here, if Client A
62
sends a message, it is relayed to Bots B and C by Bot A, as well as being
63
relayed to Client B. Bots B and C take the message and further relay it to
64
their clients. Now, if Client F were to send a message, the message would
65
be relayed by Bot C to Bot A and Client E. Bot A would pass the message to
66
its clients, and to Bot B, which would further pass the message along to
67
the clients attached to Bot B.
68
69
More complicated uplinks are possible, but i'm getting a little sick of
70
drawing nice pictures. :) Section 2 explains how the linking takes place.
71
72
73
(2) Basic steps to link two (or more) clients
74
75
This can be done in just a few steps, but you have to pay attention..
76
Notice: This is not for the idle-minded, stop by #teenchat sometime. :)
77
78
a) Make sure you actually have two (or more) clients to do the linking
79
with. How you choose to run the clients is up to you, although a lot
80
of people (including myself) prefer running them under screen. again,
81
check the contacts section to find out how to get screen.
82
83
b) Decide which bot you want to be the hub bot.. it doesn't make too much
84
difference in a two-bot network, but its always nice to have a
85
designated driver, you know? :)
86
87
c) Pick a bot to start with.. (preferably the hub, unless you enjoy doing
88
things the hard way like a complete fool) Use the /addbot command to
89
add each of the other bots to the internal bot list. The syntax of the
90
/addbot command is this:
91
92
/addbot BotB #MyChannel 2 2 i_am_lame
93
| | | | | |
94
the command | | | | password
95
bot nick | | \
96
/ | protection level
97
channel for bot \
98
auto-op level
99
notes:
100
BotB - the nickname can also be a hostmask.. however, you MUST specify
101
a nickname somewhere. for example, BotB!*mybot@*.lame.net
102
#MyChannel - channel the bot will sit in
103
auto-op - desired auto-op level for the other bot, just like in a
104
normal userlist. see /bhelp userlevels
105
protection - always a good idea to wear it.
106
oh come on, that should be self-explanatory.. :)
107
password - this is a *MUST-HAVE* !!!! its a good idea to make sure
108
its the same thing across all the bots... either that
109
or i hope you own stock in Tylenol.
110
111
For each of the non-hub bots, use the same procedure to add the hub
112
bot to the botlist. Its pretty simplistic.
113
114
d) Now that all the bots know who each other are, its time for a formal
115
introduction. (if you have more than two bots, start with the hub and
116
one of the other bots, add the rest later.) From the hub bot, issue
117
this command:
118
119
/dcc bot BotB
120
121
where BotB is the nickname of the second bot. This will send the second
122
bot a DCC BOT request, which will be checked against its bot list.
123
124
Next, flip over to BotB, and enter the command:
125
126
/dcc bot BotA
127
128
You should already have seen some CTCP & DCC messages from BotA, and
129
issuing that command causes BotB to finish off the link.
130
131
To test the link, type this:
132
133
/csay hi there
134
135
This will send a message as if the bot itself was speaking. Try looking
136
at BotA to make sure the message showed up.. it should look like this:
137
138
(BotB(xlink)) hi there
139
140
If you see a message like that, you're in business. Read on.
141
142
e) Finishing touches..
143
144
1. make sure every bot has its settings correct..
145
type /set bot , and check these settings:
146
147
.......................BOT_LOG ON
148
...................BOT_LOGFILE tcl.log
149
......................BOT_MODE ON
150
....................BOT_PASSWD has no value
151
....................BOT_RETURN has no value
152
.......................BOT_TCL OFF
153
154
The most important setting being BOT_MODE .. make sure its
155
turned on, otherwise the bot will refuse DCC chats.
156
157
2. In BitchX 72p2 and up, the bots will only accept chats from
158
persons in their userlist (see /bhelp adduser for details),
159
*OR* persons who have been .invite 'd into the chat session.
160
See the command list in the next section for details.
161
162
3. Make sure to do a /saveall to save all important settings.
163
164
165
(3) Using the partyline
166
167
To join the partyline, start a dcc chat with one of the bots. After the
168
DCC is connected, type .chat into the DCC to join the partyline. You
169
can then talk to any other people already there, and use the available
170
commands in the DCC:
171
172
.act <action> - sends <action> to chat line
173
.boot <nick> <msg> - boot <nick> from network
174
.chat - once a dcc is started send .chat to enter
175
the party line
176
.cmsg <nick> <msg> - sends <msg> to <nick> in chat
177
.echo - toggle echo back to you on/off
178
.help <topic> - help for commands or <topic>
179
.invite <nick> - invites <nick> to join the partyline
180
.msg <nick> <msg> - send <msg> to <nick>
181
.say <msg> - say <msg> to the channel
182
.quit - quit partyline, but not the chat.
183
.tcl <tcl_command> - tcl command
184
.who <botnick> - who is on bot or <botnick>
185
.whom - shows all users on network
186
187
Just typing text in the DCC causes the bot to relay it to the partyline.
188
189
(4) Frequently Asked Questions
190
191
Its time for the big FAQ list.. a lot of these I asked myself at one time,
192
but its good info so be sure to read it ALL.
193
194
q) What's BitchX?
195
a) Uhm... this isn't the file you were looking for.
196
197
q) The bots didn't link but I have botlist entries for them each!
198
a) Check the passwords. They *MUST* be identical. Also check the usermasks
199
for the bots for typos, etc.
200
201
q) The bots linked, but I can't chat to them.
202
a1) Make sure you've added yourself to the bot's userlists.
203
a2) Make sure BOT_MODE is turned ON.
204
205
q) Some of the commands in the chat don't work.
206
a) Many of the commands require the specified userlevel in .help to use
207
them. Make sure to add yourself to the bot's userlist.
208
209
q) Can the bots share userfiles like in eggdrop?
210
a) No. The bots do not share userfiles..
211
212
q) Can the bots link to eggdrops?
213
a) No. Eggdrops link via telnet, not DCC.
214
215
q) Where can i get BitchX?
216
a) See the contacts section.
217
218
q) Where can i get screen?
219
a) See the contacts section.
220
221
q) Where can i get Windows?
222
a) Press the power button.
223
224
q) Can the bots share userfiles like in eggdrop?
225
a) Dumbass.
226
227
q) Who the hell is Rwf?
228
a) God.
229
230
q) Who the hell is panasync?
231
a) The big god.
232
233
q) Can the bots share userfiles like in eggdrop?
234
a) You can go away now.
235
236
q) Does chicken come in a can?
237
238
....
239
240
(5) Contacts & information
241
242
Where to get bX:
243
244
As always, there's the #BitchX channel on EFNet.
245
Get BitchX via FTP: ftp://aurora.bridges.edu
246
Get screen from the same places.
247
248
Contacts:
249
250
Rwf - find me on EFNet.. #Lb, or #BitchX. [email protected]
251
panasync - find him on EFNet too, in #BitchX.
252
253