Add hasupload.
[doldaconnect.git] / README
1                         Dolda Connect - README
2
3                              Introduction
4
5 Dolda Connect is a  peer-to-peer file sharing program, designed around
6 the  Direct Connect  protocol.  It is  written  in a  fashion that  is
7 intended  for  flexibility  and  easy  extension.  It  currently  only
8 supports  the normal  Direct  Connect protocol,  but  support is  also
9 planned  for the  ADC protocol,  and  it can  most likely  be made  to
10 support a great deal of other file sharing protocols as well.
11
12                             Extensibility
13
14 Dolda Connect is  built around a client-server model,  in the way that
15 there  is  a server  (daemon)  program  carrying  out all  the  actual
16 file-sharing work, and a number of client programs that connect to the
17 server in order to command  it and display its status. The interaction
18 between  the client  and server  is carried  out using  a well-defined
19 protocol, making it  fairly easy to write new  clients for specialized
20 tasks.
21
22 To make it  easier to write new clients, a C  library has been written
23 to make  common functions easier, such  as connecting, authenticating,
24 sending requests and  parsing the responses. The C  library also has a
25 wrapper  module for  GNU  Guile, so  that  clients can  be written  in
26 Scheme. As of 0.3, there is also a Python module available seperately.
27
28 None of these are documented (yet), but there are a number of examples
29 scattered around the source tree, so  it should not be awfully hard to
30 figure out  how to  do simple  things. If in  doubt, just  contact the
31 author.
32
33                                Clients
34
35 So far, the following clients are distributet along with the source
36 tree:
37
38  * A Gtk2 based GUI, which loosely resembles a normal Direct Connect
39    client program.
40  * A GNOME panel applet for showing the status of current downloads in
41    progress.
42  * A Gaim chat plugin for chatting in hubs and writing private
43    messages.
44  * A command-line automatic downloader written in Scheme.
45  * A chat logger written in Scheme.
46  * A hub manager written in Scheme.
47
48 The GNOME applet and Gaim plugin are somewhat experimental. The applet
49 seems to be working well, but the installation have some quirks (since
50 GNOME does  not normally look in  /usr/local, care must  be taken with
51 the installation prefix). The  Gaim plugin has some performance issues
52 and seems to  be leaking some memory. The  performance problems lie in
53 Gaim itself, however, and the Gaim developers have indicated that they
54 will be fixed in Gaim 2.0.0.
55
56                              Installation
57
58 See the INSTALL file.
59
60                             Documentation
61
62 Documentation is still  spotty at best. For any  information not found
63 in  the README or  INSTALL files  (or the  source code,  if you  are a
64 programmer), contact the author.
65
66                                Credits
67
68 Dolda Connect is primarily written  by Fredrik Tolf. He can be reached
69 through  the e-mail address  <fredrik@dolda2000.com>. His  homepage is
70 <http://www.dolda2000.com/~fredrik/>.
71
72
73
74 This documented was last updated 2006-11-22, reflecting release 0.3 of
75 Dolda Connect.