source: skype/README @ 54c269d

Last change on this file since 54c269d was 54c269d, checked in by VMiklos <vmiklos@…>, at 2007-09-05T14:34:30Z

README: a note about why a skype instance is still required

  • Property mode set to 100644
File size: 5.4 KB
Line 
1= Skype plugin for BitlBee
2Miklos Vajna <vmiklos@frugalware.org>
3
4== Status
5
6One day I browsed the BitlBee bugtracker and found
7http://bugs.bitlbee.org/bitlbee/ticket/82[this] ticket. Then after a while I
8returned and saw that it was still open. So I wrote it. Not a big deal, I wrote
9it in two days or so (and not because I'm a genius or anything ;-) ). I think
10it's pretty stable, but it needs wider testing. Also see the 'Known bugs'
11section, I really hope those random hangups will be fixed soon by Skype.
12
13Oh, before I forget. I'm not a wizard, the Skype API documentation is
14https://developer.skype.com/Docs/ApiDoc[here] if you're interested.
15
16NOTE: You will see that this implementation of the Skype plugin still requires
17a Skype instance to be running. This is because I'm not motivated to reverse
18engineer Skype's
19http://en.wikipedia.org/wiki/Skype_Protocol#Obfuscation_Layer[obfuscation
20layer]. (Not mentioning that you should ask your lawyer about if it is legal or
21not..)
22
23== Requirements
24
25* Skype 1.4.0.99. 1.4.0.74 did *not* work for me.
26* bitlbee-dev >= rev245. Previous versions need patching.
27* Skype4Py >= 0.9.28.1. Previous versions uses DBus by default.
28* Python 2.5. Skype4Py does not work with 2.4.
29* pygobject
30
31== How to set it up
32
33Before you start. The setup is the following: BitlBee can't connect directly to
34Skype servers (the company's ones). It needs a running Skype client to do so.
35In fact BitlBee will connect to `skyped` (a tcp server, provided in this
36package) and `skyped` will connecto to your Skype client.
37
38NOTE: The order is important. First you have to start Skype. Then `skyped` can
39connect to it, finally BitlBee can connect to `skyped`. (In fact `skyped`
40automatically reconnect if you restart Skype.)
41
42- If you happen to be a happy Frugalware user, you can install the `bitlbee`
43  and `bitlbee-skype` packages from
44  http://ftp.frugalware.org/pub/other/people/vmiklos/bmf/[my repo].
45
46- You need the BitlBee bzr branch:
47
48----
49bzr branch http://code.bitlbee.org/bitlbee/
50----
51
52NOTE: You no longer need additional patches, as of revision 245.
53
54- Now compile and install it:
55
56----
57./configure
58make
59make install install-dev
60----
61
62- Get the plugin code:
63
64----
65git clone http://ftp.frugalware.org/pub/other/people/vmiklos/bitlbee-skype/.git
66----
67
68(Or you can use the tarballs below, see the Changelog about what
69features/bugfixes will you miss in this case).
70
71- Compile and install it:
72
73----
74make prepare
75./configure
76make
77make install
78----
79
80- Install http://skype4py.sourceforge.net/[Skype4Py].
81
82(You may remember that previous versions of `skyped` did not require this
83package. This because it now uses the X11 interface of Skype (because the
84previously used DBus interface had
85http://forum.skype.com/index.php?s=&showtopic=94545&view=findpost&p=431710[known
86problems]), but I wanted to prevent a large code duplication from that project.
87In addition it then no longer requires the `dbus-python` package, just
88`pygobject`.)
89
90- Start Skype and `skyped` (the tcp server):
91
92----
93skype
94skyped
95----
96
97NOTE: It's important to start skyped on the same machine and using the same
98user as you run Skype as it uses the session DBus for communication!
99
100- Start your IRC client, connect to BitlBee and add your account:
101
102----
103account add skype <user> <pass>
104account set 0/server localhost
105----
106
107IMPORTANT: <user> should be your skype account name. This way you won't see
108yourself joining to `&bitlbee`.
109
110NOTE: the <pass> option is not used currently.
111
112== Setting up Skype in a VNC server (optional)
113
114Optionally, if you want to run Skype on a server, you might want to setup up
115a VNC server as well. I used `tightvnc` but probably other VNC servers will
116work, too.
117
118First run
119
120----
121vncpasswd ~/.vnc/passwd
122----
123
124and create a password. You will need it at least once.
125
126Now create `~/.vnc/xstartup` with the following contents:
127
128----
129#!/bin/sh
130
131sleep 1
132skype &
133sleep 5
134skyped
135----
136
137Adjust the permissions:
138
139----
140chmod +x ~/.vnc/xstartup
141----
142
143Then start the server:
144
145----
146vncserver
147----
148
149Then connect to it, and set up Skype (username, password, enable autologin, and
150allow the `SkypeApiPythonShell` client when Skype asks about it).
151
152== What works
153
154- Download nicks and away statuses from Skype
155
156- Noticing joins / parts while we're connected
157
158- Sending messages
159
160- Receiving messages
161
162- Receiving away status changes
163
164- `skyped` (the tcp daemon that is a gateway between Skype and tcp)
165
166- Error handling when `skyped` is not running and when it exits
167
168- Marking received messages as seen so that Skype won't say there are unread messages
169
170- Adding / removing contacts
171
172- Set away state when you do a `/away`.
173
174- When you `account off`, Skype will set status to `Offline`
175
176- When you `account on`, Skype will set status to `Online`
177
178- Detect when somebody wants to add you and ask for confirmation
179
180== What needs to be done (aka. TODO)
181
182- Group chat support. Sadly I'm not too motivated to implement this at the
183  moment.
184
185- Add a question callback for calls.
186
187== I would like to have support for ...
188
189If something does not work and it's not in the TODO section, then please
190contact me!
191
192In fact, of course, I wrote this documentation after figured out how to do this
193setup, so maybe I left out some steps. If you needed 'any' additional tricks,
194then it would be nice to include them here.
195
196== Known bugs
197
198- None at this time.
199
200== Screenshots
201
202You can reach some screenshots http://frugalware.org/~vmiklos/pics/shots/bitlbee-skype/[here].
203
204== Changelog
205
206You can reach the Changelog link:Changelog[here].
207
208// vim: ft=asciidoc
Note: See TracBrowser for help on using the repository browser.