Purple Twitter Syncup Application
Purple Twitter Syncup is a Linux based desktop application to set Users Tweet as Pidgin IM Status Message.
This is the first release of this application and there are couple of features coming soon.
PS: libpurple is the pidgin library so when I say Purple please consider it as Pidgin.
This application uses D-Bus to communicate with the Pidgin/Purple IM client and Twitter OAuth authentication to read user Tweet.
This application is tested on 32 and 64 bit Ubuntu OS 10.10 and 11.10
Installation and Usage
- Download the appropriate tar ball purple-twitter-syncup-0.1-bin_linux_x86_32.tar.gz
- extract the tar ball to the location where you want to place this application.
$tar -zxvf purple-twitter-syncup-0.1-bin_linux_x86_32.tar.gz
It should extract to the folder "purple-twitter-syncup-0.1"
- cd purple-twitter-syncup-0.1/
Configure Twitter account details User Name and Password in conf/Twitter.properties
$ vi conf/Twitter.properties
- goto bin directory and execute startSyncup command to start the syncup application.
- To stop or terminate the syncup application execute following script.
Make sure Pidgin IM client is started before running the application.
log files will be created in the logs directory under purple-twitter-syncup-0.1.
Please check log file if you are facing some problem.
How to compile
checkout the source of Purple Twitter Syncup
$ git clone https://firstname.lastname@example.org/yogeshpathade/purple-twitter-syncup.git
Make sure you have the dependent library/jars required to compile this project.
- I have used java dbus binding.
The jave dbus binding depends on common unix libraries and jars written by same author
please download the dependent source from here.
set JAVA_HOME and perform make in the libmatthew-java-0.8 directory. It will create jars and .so files (you may want to rename the jars to remove the versions since the Makefile refers to jars without versions)
then to compile dbus-java jars set following environment variables and then do make in the java dbus directory.
export JAVAUNIXLIBDIR=<location to>/libmatthew-java-0.8
export JAVAUNIXJARDIR=<location to>/libmatthew-java-0.8
- It needs pidgin/purple interface for dbus to create connection and invoke methods on its objects (please read dbus documentation to know more about dbus)
use d-feet tool which is a kind of debugger and dbus viewer. Check the dbus using dfeet and note down the purple dbus name im.pidgin.purple.PurpleService
Now use the dbus java implementation to create the Interface which will be needed to use DBus Purple object.
$ ./CreateInterface im.pidgin.purple.PurpleService /im/pidgin/purple/PurpleObject > im/pidgin/purple/PurpleObject.java
- For the Twitter connection and reading tweets I have used famous Twitter4j Java library.
You need to download and use twitter4j-core-xxx.jar
- For logging I have used slf4j and log4j please download this if you haven't got one in your labs :D
To compile Purple Twitter source you will need following jars and libs from the above dependency
unix.jar debug-disable.jar debug-enable.jar hexdump.jar and libunix-java.so from libmatthew-java
libdbus-java-2.7.jar from dbus-java
purpleinterface.jar containing im/pidgin/purple/PurpleObject.class
slf4j-api-1.6.1.jar slf4j-log4j12-1.6.1.jar log4j-1.2.16.jar
Since I have written the Makefile to look for lib folder in the same directory where source is placed. Please copy all of above dependency jars and library files to the lib folder.
Then make to compile code.
It will create syncup-xx.jar and purpleinterface.jar. Copy it in lib directory of your project and start using Purple Twitter Syncup application with Pidgin.
For any help, queries or bugs please drop me a mail --> email@example.com