Proteus2Adium |
|
Submitted By Daniel Knippers (Knippers) |
DescriptionJava commandline utility to convert a Proteus History.db (where all your chat logs are stored) to AdiumX.I did look on this site and searched the web, but nothing I found fitted my needs. The Xtra will do all the work for you. But note only the conversion of ICQ, MSN, AIM, Yahoo! and Jabber are supported. If you would like another service added, see the readme.txt in the Xtra. The very basics to using this tool are: ChangesCommentsYou can reply to individual comments by clicking the "Reply" link next to each. # by dmz on 05/29/06 at 05:47:15This works very, very nicely (I unpacked the jar, added my extra Proteus services, recompiled, and ran)... except for one thing - it doesn't properly deal with Unicode characters (like Chinese) in Proteus' logs. I haven't taken a look at the code, so I don't know exactly how to address this, sadly.
# by jvas on 06/06/06 at 15:06:43Daniel's script works like a charm. I contacted him about yahoo! support and he was very responsive in turning around a working version to me. I am sure he will post it here eventually. Great work Daniel!
# by Knippers on 06/06/06 at 15:17:53The new version is thanks to jvas who contacted me about missing and incomplete Proteus services (for which I don't have accounts to test with).
# by cng on 07/04/06 at 11:30:00This was exactly what I needed to finish my migration from Proteus to Adium. I did the same as dmz (unpack, rebuild, etc) since I needed to also convert some Jabber logs. It was easy to do and worked without any problems. I've now got over 2 years of log history from Proteus (for all my accounts) that I didn't want to lose. PERFECT!
# by Knippers on 07/04/06 at 14:48:49Posted a new version (1.2) with Jabber support. Thanks to cng.
# by mpmchugh on 08/04/06 at 14:14:37Trying this to switch to Adium, but keep getting an error:
java.lang.Exception: Exit code 1, reason: SQL error: database is locked : Any idea how to reslove? Thanks - mpm # by Knippers on 08/04/06 at 14:16:52You probably have Proteus running while trying to run Proteus2Adium.
# by mpmchugh on 08/04/06 at 14:52:14nope, it wasn't running... I did just recently switch computers, and now I see that my History isn't even working... maybe it's damaged.
# by Knippers on 08/04/06 at 16:55:50Well in that case I don't have an idea what the problem is. I did a quick look at the sqlite code but could not find an obvious reason (except when the database is actually locked) to why a the "database is locked" error is raised.
The fact that your history does not work indeed suggests something is wrong with the database. But I am not that familiar with sqlite to help you out with that one. # by crucialgent on 08/04/06 at 19:13:25I'm getting the following error:
Exception in thread "main" java.lang.NoClassDefFoundError: Proteus2AdiumX Cnvert did not succeed, skip remaining tasks Any ideas? # by crucialgent on 08/09/06 at 14:58:37i saved a backup of my history.db file a while ago and want to merge that with my current history.db before i convert to adium... does anyone know how to do this?
# by Knippers on 08/09/06 at 16:38:42crucialgent:
I don't know how to merge two databases but why not import the two databases to adium. To do so edit the run.sh file and comment (or remove) the line: cp ~/Library/Application Support/Proteus/Profile/History.db CopyHistory.db after that copy the first History.db to same directory as run.sh and rename the file to CopyHistory.db, then run run.sh, after that repeat the same for the other History.db. # by crucialgent on 08/09/06 at 17:09:41knippers:
I deleted the line "cp ~/Library/Application Support/Proteus/Profile/History.db CopyHistory.db" , copied the history.db file to the folder, renamed, and i this was the log: scd:~ sharvinwhitted$ /Users/sharvinwhitted/Desktop/proteus2adium_8_6446_2810/./run.sh Create copy of History.db first create log files Exception in thread "main" java.lang.NoClassDefFoundError: Proteus2AdiumX Cnvert did not succeed, skip remaining tasks scd:~ sharvinwhitted$ any thoughts? thanks for the help btw # by Knippers on 08/09/06 at 17:13:27You need to run the run.sh from the /Users/sharvinwhitted/Desktop/proteus2adium_8_6446_2810/ directory.
# by crucialgent on 08/09/06 at 17:37:24i am, i'm in /Users/sharvinwhitted/Desktop/proteus2adium_8_6446_2810/run.sh
is that not right? # by solidfox on 01/11/07 at 16:42:00I get this when I try to run the script. I'm on a Core 2 duo MacBook. What's wrong?
c-128ae255:~/Desktop/proteus2adium_8_6446_2810 suu$ ./run.sh Create copy of History.db first create log files start java.lang.Exception: Exit code 139, reason: at Proteus2AdiumX.execQuery(Proteus2AdiumX.java:242) at Proteus2AdiumX.main(Proteus2AdiumX.java:55) Cnvert did not succeed, skip remaining tasks # by Knippers on 01/12/07 at 05:56:44solidfox I don't know what the exitcode 139 means. It's coming from the sqlite executable. Could you therefore run the following command (from same location as you execute run.sh):
./sqlite -header -separator ^_^ CopyHistory.db "SELECT name FROM sqlite_master WHERE type='table' ORDER BY name;" Note the " characters before the SELECT and after the ORDER BY name;, these chars are needed. This command is the first one executed within the Proteus2Adium utility. # by DawnFaerie on 02/06/07 at 04:46:01I'm trying to run this on a G3 iBook, but I get this error.
Create copy of History.db first create log files start java.lang.Exception: Exit code 5, reason: dyld: ./sqlite can't open library: /usr/lib/libncurses.5.4.dylib (No such file or directory, errno = 2) : at Proteus2AdiumX.execQuery(Proteus2AdiumX.java:242) at Proteus2AdiumX.main(Proteus2AdiumX.java:55) Cnvert did not succeed, skip remaining tasks I would definitely appreciate any help. Thanks! # by Knippers on 02/06/07 at 06:10:03DawnFaerie you are probably not running Mac OS X 1.4? (if that will even run on a G3). I have no way to test with a pre 1.4 release or on a G3.
The workaround would be to copy your Proteus history DB (/Library/Application Support/Proteus/Profile/History.db) to a machine with OS X 1.4. Place it in the same directory where you are going to execute run.sh and rename it to CopyHistory.db. BEFORE executing run.sh make sure you comment the line cp ~/Library/Application Support/Proteus/Profile/History.db CopyHistory.db (add a # in front of line). Hope this will work for you. # by DawnFaerie on 02/07/07 at 03:01:25Thanks for the quick response! I tried your suggestion and it worked beautifully.
# by olgunia on 03/28/07 at 02:55:39knippers:
I have the same problem as crucialgent had. [Olgunia:~] olgunia% /Users/olgunia/Desktop/proteus2adium_8_6446_2810/run.sh Create copy of History.db first create log files Exception in thread "main" java.lang.NoClassDefFoundError: Proteus2AdiumX Cnvert did not succeed, skip remaining tasks Crucialgent understood what to do, but I didn't... What does it mean: You need to run the run.sh from the /Users/sharvinwhitted/Desktop/proteus2adium_8_6446_2810/ directory? If this in Terminal: /Users/olgunia/Desktop/proteus2adium_8_6446_2810/ then it says tcsh: /Users/olgunia/Desktop/proteus2adium_8_6446_2810/: Permission denied. Please help to solve this problem. Thanks in advance :) # by Knippers on 03/28/07 at 05:02:29If you are indeed logged in as olgunia you should be able to open a terminal window.
On the prompt type: cd Desktop/proteus2adium_8_6446_2810 Then run the tool: ./run.sh If you keep getting the Permission denied error try the above to commands with sudo in front of it. Sudo will ask for your olgunia account password and if valid will execute the above commands with root privileges. # by olgunia on 03/28/07 at 07:03:55Here is what it says now:
[Olgunia:~] olgunia% cd Desktop/proteus2adium_8_6446_2810 [Olgunia:~/Desktop/proteus2adium_8_6446_2810] olgunia% ./run.sh Create copy of History.db first create log files start Found '2' tables is db java.lang.Exception: No AdiumX servicename for (null) at Proteus2AdiumX.main(Proteus2AdiumX.java:73) Cnvert did not succeed, skip remaining tasks [Olgunia:~/Desktop/proteus2adium_8_6446_2810] olgunia% # by Knippers on 03/28/07 at 18:00:00olgunia, I have no idea what happens but somehow the first record in the table name query returns the value (null). Could you run the following command from the same location as you executed run.sh:
./sqlite -header -separator ^_^ CopyHistory.db "SELECT name FROM sqlite_master WHERE type='table' ORDER BY name;" Note the " characters before the SELECT and after the ORDER BY name;, these chars are needed. If you get any error please report it and try to run the same statement but now add sudo in front of it. Also note the result and please report it back # by olgunia on 03/29/07 at 01:20:24OK, here is the result:
[Olgunia:~/Desktop/proteus2adium_8_6446_2810] olgunia% ./sqlite -header -separator ^_^ CopyHistory.db "SELECT name FROM sqlite_master WHERE type='table' ORDER BY name;" name (null) icq [Olgunia:~/Desktop/proteus2adium_8_6446_2810] olgunia% # by Knippers on 03/29/07 at 05:01:05olgunia, please try the p2a version from: http://www.tudra.net/stuff/Proteus2Ad...iumX_06.zip
If that version works I will post it as new version of this Xtra. btw according to the table result I got you only use ICQ. Is that correct? if not what other services do you use? # by olgunia on 03/29/07 at 06:53:33It converted logs now! Thanks a lot! But there is one more thing - all chats written in Russian are unreadable... :(
Yes I use only ICQ-account with Proteus. But sometimes I use also .mac account (with iChat) and Skype... # by Knippers on 03/29/07 at 16:51:56olgunia, please try http://www.tudra.net/stuff/Proteus2Ad...iumX_06.zip again. I made a small adjustment so hopefully your russian conversations are converted correctly.
# by olgunia on 03/30/07 at 10:09:52Now it's OK with Russian conversations!!! Great! :)
BUT somehow: 1. I had to rename the folder with your utility... 2. I had to make the copy of History.db and rename it manually... 3. It didn't make backup of previous logs... 4. It didn't put the logs into the folder from which Aduim could read them... I found new converted logs only in the folder Proteus2AdiumX_06. I put several logs there manually to check the Russian. This is all what I did in Terminal: [Olgunia:~] olgunia% cd Desktop/Proteus2AdiumX_06 1 tcsh: cd: Too many arguments. [Olgunia:~] olgunia% cd Desktop/Proteus2AdiumX_06 [Olgunia:~/Desktop/Proteus2AdiumX_06] olgunia% ./run.sh Create copy of History.db first create log files start Proteus history db (CopyHistory.db) not found Cnvert did not succeed, skip remaining tasks [Olgunia:~/Desktop/Proteus2AdiumX_06] olgunia% ./run.sh Create copy of History.db first create log files start Found '2' tables is db Found tablename '(null)', it will be skipped Provide AdiumX login/username for accounttype ICQ: XXXXX Creating logs for 'XXXXX' (this might take some time) Create logfile: Logs/ICQ.XXXXX/YYYYY/YYYYY (2004-10-04).html ... Create logfile: Logs/ICQ.XXXXX/ZZZZZ/ZZZZZ (2005-02-10).html done. [Olgunia:~/Desktop/Proteus2AdiumX_06] olgunia% # by olgunia on 03/30/07 at 10:16:13Im very sorry, but the #1 is my mistake, I left the previos folder with your utility on the desktop and Mac added 1 automatically...
# by Knippers on 03/30/07 at 17:42:38Olgunia, great news that Russian (and probably all other languages containing non ascii characters) works! The problems you had with the last version where my bad. I commented some lines in de run.sh for testing and forgot to change it back before building it. I posted the fixed build as new Xtra version.
btw thanks for testing. Post a New CommentYou must be logged in to post comments. |
# by evands on 05/18/06 at 18:15:02