summaryrefslogtreecommitdiff
path: root/README
blob: 241e4d0d61a39ca4cd5ebfc61e658f67b0351d0f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
	                      _
	                     (_)
	 _ __   ___   ___ _____  ___
	| '_ \ / _ \ / _ \_  / |/ _ \
	| |_) | (_) |  __// /| | (_) |
	| .__/ \___/ \___/___|_|\___/
	| |
	|_|

Homepage:	http://poezio.eu
Forge Page:	http://codingteam.net/projet/poezio

Poezio is a console Jabber client. Its goal is to use anonymous
connections to let the user join MultiUserChats. This way, the user
doesn't have to create a Jabber account, exactly like people are using
IRC. It doesn't handle contact list at all.
Poezio's commands are designed to be (if possible) like IRC
clients (weechat, irssi, etc).

=======================
	Install
=======================
You just need python
the xmpppy lib is provided with poezio, as many
distributions still use xmpppy 0.4.1 which doesn't
work with anonymous connexion.
This will be eventually fixed latter on.

Before launching poezio you need to type
make
in order to build the xmpppy library.

you can then launch poezio with
sh launch.sh

or you can install it with (as root or with sudo)
make install
(`make uninstall` works, don't worry ;))
you can then launch poezio

You can edit the config file (~/.config/poezio/poezio.cfg by default)
or data/default_config.cfg (if you want to edit the config before the
first launch)

See the online documentation for more information:
http://codingteam.net/project/poezio/doc

Please DO report any bug you encounter and ask for any
feature you want.

If you are testing poezio, and get a crash but no error, please
take a look at the src/errors file.

=======================
	Authors
=======================
Florent Le Coz (louiz') <louizatakk@fedoraproject.org> (main developper)

=======================
    Contact/support
=======================
Jabber ChatRoom:   poezio@conference.codingteam.net
Forum:             http://codingteam.net/project/poezio/forum
Report a bug:      http://codingteam.net/project/poezio/bugs/add

=======================
	License
=======================
Poezio is Free Software.
(learn more: http://www.gnu.org/philosophy/free-sw.html)

Poezio is released under the Gnu GPLv3 license
Please read the COPYING file for details

The artwork logo is made by Gaëtan Ribémont and released under
the Creative Commons BY license (http://creativecommons.org/licenses/by/2.0/)

=======================
	Thanks
=======================
= People =
 Link Mauve - Code
 Erwan Briand - Handler and MultiUserChat classes
 Gaëtan Ribémont (http://www.bonbref.com) - Logo design
 Ovart - Testing
 mathieui - Testing
= Project =
 Gajim - send_vcard method and common.py

======================
       The code
======================

Classes:
  - Connection *receives* messages from the Jabber network
  - MultiUserChat *sends* messages to the Jabber network
  - Gui displays everything on the screen and gets the user inputs
  - Handler is the "link" between all these classes :
a class emits a signal and the others classes listen to this signal
and do what they have to do whenever this signal is emitted by any class

Q: Why not use Connection to receive AND send the messages to Jabber network?
A: I like it this way.

Q: Could you please make a nice ASCII art, so I could understand all
   the beauty and the complexity of this awesome software ?
A: Of course, here it is:

                 ___________________________
                /                           \
                |                           |
                |     Jabber Network        |
                |   (roomchats and people   |
                |       inside them)        |
                |                           |
                \__________________________/
                    |                   ^
                    | receive     send  |          ____ Poezio ____
                    v                   |
           /----------------\   /-----------------\
           |                |   |                 |
           |   Connection   |   |  MultiUserChat  |
           |                |   |                 |
           \----------------/   \-----------------/
                ^ |emit             emit | ^
                | |      /---------\     | |
       connect  \ \----> |         |<----/ / connect
                 \______ | Handler |______/
                         |         |
                         \---------/
                             | ^
                     connect | | emit
                             v |
          /----------\   /---------\
          |          |   |         |
          |  Window  |<--|   Gui   |
          |   etc    |   |         |
          \----------/   \---------/
              |               ^
              |               | Keyboard
              |               |
              \          /---------\
               \Screen   |         |
                \        |   YOU   |
                 ------->|         |
                         \---------/