Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I have Skype 2.8 on Mac OS X 10.5.8.

Under the the chat menu is an option called "Recent Chats". This allows me to see logs of recent chats, but not of older ones.

I know the older ones are stored because they are in ~/Library/Application Support/Skype/username/chatmsg256.dbb. This file when put in a text editor has text chat information from all my previous Skype chats. It is however stored in an unknown file format that I do not know how to parse.

Does Skype have a built-in log viewer (like Adium's) that I can use to access these older logs?

share|improve this question
3  
they used to have the very nice feature to export chat history to HTML. unfortunately, this feature is history since version 4. –  Molly7244 Jan 9 '10 at 22:48

4 Answers 4

up vote 9 down vote accepted

I'm not sure if this shows the entire history, but try the following. Whether the contact is online or offline, pop up the chat window.

Click blue chat button

Then click "All" under "View earlier messages:".

Click all

Alternatively, click the gear icon for the contact and select "View Chat History". That generates an html file that is opened in your web browser window.

The reason I'm not sure if this shows all the history is because I can't fully remember when my chat history began on this computer.

share|improve this answer
1  
Thanks for your answer. This seems like the way you're supposed to do this in Skype. The weird thing is that this will not work to find chats with people who are not on your list anymore. I'm not sure how that is supposed to be done. This also suggests that there is no way to do a keyword search. This type of message history interface is seriously weak compared to Adium's Chat Transcript Viewer. –  hekevintran Jan 10 '10 at 1:13
    
I definitely agree. I really like Adium's chat history viewer as well. For Windows, I found an app called skypr (osiwanlan.de/skypr) that I've never used, but it would still depend on there being chat history to display, which may not be the case for deleted contacts. –  fideli Jan 10 '10 at 1:27
    
The chat logs with deleted contacts are in the log file. I just don't know how to get to them (or if you can even get to them) from Skype's interface. –  hekevintran Jan 10 '10 at 1:35

Skype stores its chat history in a SQLite database: ~/Library/Application Support/Skype/YourSkypeName/main.db. You can use the command line sqlite3 tool to view the chat logs.

Find out user names of your chat partners

The following command in Terminal (I'm assuming you're using the bash shell) lists all your chat partners' user names:

sqlite3 /Users/danielbeck/Library/Application\ Support/Skype/YourSkypeName/main.db 'SELECT DISTINCT(dialog_partner) FROM Messages;'

Extract all messages to and from a specific chat partner

Option A. Write to terminal

To print all messages to and from a certain chat partner (theOtherPersonsUserName), use the following command:

sqlite3 /Users/danielbeck/Library/Application\ Support/Skype/YourSkypeName/main.db "SELECT author, from_dispname, datetime(timestamp, 'unixepoch') as date, body_xml FROM Messages where dialog_partner = 'theOtherPersonsUserName' ORDER BY timestamp;"

This will print one message per line, chronologically, with sending username, display name, date, and text, like the following:

danielbecks-username|Daniel Beck|2012-02-03 08:47:53|Just testing something

Option B. Write to file

You can write this chat log directly to a file. Run the following to write the log with theOtherPersonsUserName to the file theOtherPersonsUserName.log:

sqlite3 /Users/danielbeck/Library/Application\ Support/Skype/YourSkypeName/main.db "SELECT author, from_dispname, datetime(timestamp, 'unixepoch') as date, body_xml FROM Messages where dialog_partner = 'theOtherPersonsUserName' ORDER BY timestamp;" > "theOtherPersonsUserName.log"


Of course, you can also open main.db in any SQLite database viewer and go from there.

share|improve this answer
    
For other users with the same problem, if you have a lot of "chat partners", terminal may take some time to present you the list. In my case it was about two minutes. It seems like nothing is happening, so you may be tempted to close terminal, but you just have to wait. Then type the following command (SELECT author etc.), with the right user ID, and the conversation history will show up. Once your chat conversation appears in terminal, you can copy it into a word processor file and then polish it a little, if you want to. –  user226891 May 26 '13 at 6:02
1  
main.db has gone away: find -name main.db finds nothing. The content is in files like chatmsg256.dbb, but opening these results in "Error: file is encrypted or is not a database". Any idea what works these days? –  Jean Jordaan Aug 7 '13 at 12:27
    
@JeanJordaan What version of Skype? What operating system? I also have these files, but they're from 2010... –  Daniel Beck Aug 7 '13 at 18:57
    
@DanielBeck sorry for the incomplete information. Ubuntu Linux, Skype 2.2.0.35 This is from 2011, and I see there is a 4.2.0.11 available. I wonder if upgrading would migrate my old chats ... –  Jean Jordaan Aug 9 '13 at 5:46

I found a Mac tool that can help you: http://g-recorder.com/for-mac-users-en/ It exports chat history in Gmail, quite useful for later search and backup. Although there is Windows version as well.

share|improve this answer

Try SkypeHistoryViewer.

A small program that will allow the user to open all history of Skype activity that is on a PC, check your kids usage, who there talking to what there saying or check on a cheating partner. Currently for Windows Vista and 7.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.