blob: 723262995de50b813affa07327549884c3727821 (
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
|
=======================
= Poezio =
=======================
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.
=======================
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 =
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 |
------->| |
\---------/
|