Skype for Linux command-line utilities
======================================

Collection of utilities for Skype for Linux.

Requires:
  Skype for Linux (at least 1.4)
  Python
  Python Xlib bindings (python-xlib)

  Unless specified otherwise, the scripts also require the Skype4Py Skype API Wrapper
  See https://developer.skype.com/wiki/Skype4Py for download
  and installation instructions.

Author:
  Vincent Oberle <vincent@oberle.org>
  http://www.oberle.org/skype_linux_tools/


===================================== Warning =====================================
=                                                                                 =
= The first time you will execute any of these utilities, the Skype application   =
= will show a window asking you if you want to authorize this application to      =
= connect to Skype. Answer yes.                                                   =
=                                                                                 =
= Programs authorized to connect to Skype are shown in Options => Public API.     =
====================================================================================


The scripts are classified into 2 categories, depending how they should be run:
* Some are just command-line utilities that are executed when needed;
* Some should run all the time, as daemon;


Command-line utilities
======================

Finding old chats
~~~~~~~~~~~~~~~~~
Usage:
$ ./find_chat.py

	Searches through all multi-chats and allows to open them.
	
	Since loading all chats at the same time might hang Skype, by default only 5% of the chats
	are loading in each search. Press 'm' to search more. This percentage can be changed
	by passing the -c parameter to the script.
	
	NB: Uses the deprecated custom Python API Wrapper, not Skype4Py.


Sending SMS messages
~~~~~~~~~~~~~~~~~~~~
Usage:
$ ./send_sms.py PHONENUMBER Hello world

	Sends an SMS.


Sending individual chat messages to all members of a multi-chat
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Usage:
$ ./chat_send_all.py

	See http://www.oberle.org/blog/2007/12/11/scripting-skype/ for details.


Open file transfer from command-line
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Usage:
$ ./send_file.py SomeUser

	Starts a Skype File Transfer.
	The open file dialog is set to the current directory.
	The users to send to are searched through their Skype name and their full name.

	See http://www.oberle.org/blog/2007/12/20/more-scripting-skype-moods-to-twitter-and-command-line-file-transfer/


Changes your Skype online status (availability)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Usage:
$ ./change_availability.py NA

	Usefull for adjusting the status from some script. For example, you can
	have a script that locks the screen and sets you to not available.


Daemons
=======
These scripts must be started after Skype and left running. Under KDE, if your Skype client starts
automatically when login in, the show_edited_chats.py can be started by adding a 2 line shell script
to your .kde/Autostart directory:
	sleep 40
	python /usr/local/bin/show_edited_chats.py
The sleep is to let time for the Skype client to start.

Showing edited chat messages
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Usage:
$ ./show_edited_chats.py

	Recent version of Skype for Windows allow to edit already sent chat messages.
	Unfortunately, Skype for Linux won't show the edited version unless you reload the chat history.
	
	This little script will warn you when someone edited a message by showing a popup window.
	You just need to reload the chat history then to see the new version.
	
	By default the script is set up for KDE. Gnome and other window manager users should change
	the constants at the beginning of the script.
	
	NB: Uses the deprecated custom Python API Wrapper, not Skype4Py.


Sends your own mood messages to Twitter
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Usage:
$ ./mood_to_twitter.py twitter_username twitter_password

	See http://www.oberle.org/blog/2007/12/20/more-scripting-skype-moods-to-twitter-and-command-line-file-transfer/



DEPRECATED: Python API Wrapper
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
A much better wrapper in Python is Skype4Py, available at https://developer.skype.com/wiki/Skype4Py

A simple Python wrapper around the Public API. Skype for Linux offers two transport mechanism, 
X messages or Dbus. The wrapper uses X, since it is the one with the less dependencies issues.
