Cottleston Pie

Fernando Felman’s thoughts on software development

MSN Messenger History Merger

Posted by Fernando Felman on March 21, 2007

As a consultant I’ve been sent to customers’ sites quite a lot. Many times I’m provided with a dedicated desktop for my work and I’m not allowed to plug my own laptop. This is usually no biggie as I’ve a USB flash drive that allows me to keep in sync all my settings, preferences, etc.

Saying that, there is one thing which I cannot keep in sync: the history files of the MSN Messenger. MSN Messenger saves conversations history in XML files – one file per recipient. Those files get updated every time a conversation is compete, e.g. every time the Messenger window is closed. This implementation means that each desktop saves its own history files and merging those history files is not an easy task. I tried to find a merging utility in the internet with no success so I’m left without options: I must implement the merging utility myself.

So, this is a long introduction to my latest open source project: the MSN History Merger. This utility will merge MSN Messenger history files from different instances into one complete history folder. The executable file can be downloaded from the Release page (no installation is required).

I do hope you’ll find it useful. If you do, please leave me a comment. Suggestions are also welcomed so feel free to use the discussion lists and the issues tracker to log suggestions and issues.

Advertisements

40 Responses to “MSN Messenger History Merger”

  1. Panthro said

    This is just what I have been looking for!
    I’m still surprised Microsoft has yet to incorporate something like this themselves, after all google are able to with their ‘google talk’ application.

    Thanks again.

  2. Cheers, mate,
    I’m happy you find it useful.
    I think MS has always followed the ‘we only support the majority’ guide line. The merging feature is only used by the minority power-users so I’m not too surprised it’s not in their to-do list…

    Enjoy.

  3. Jay said

    thanks for this wonderfull tool. i am not very much an IT pro, downloaded the patch, but couldn’t use it as the message : need .Net framework v 2.0.50727 is required.
    no clue how to do this.
    probably not the right place to post this, but told you, not that much into this, and i needed help.
    regards
    Jay

  4. The applicaiton requires the Microsoft .NET Framework Version 2.0.
    You can download the framework from Microsoft web site (for free): http://www.microsoft.com/downloads/details.aspx?familyid=0856EACB-4362-4B0D-8EDD-AAB15C5E04F5&displaylang=en

    Hope it helps.

  5. Charly said

    Wow man. I’ve been looking for this since long time ago. I have to confess I LOVE YOU! I could really kiss you. Tongue and everything. xP

    No, really, it works great. No matter the lenght of the .xml, and very fast also. And you even published the code… I’m a .NET developer… but lazy enough to not make this program. LOL.
    Maybe I will add a feature to recognize the old Messenger Plus logs I still have (from back on 2002). Sometime… LOL.

    Suggestion: when trace level is on “Warning”, information regardin which file has a problem would be useful.

    Thanks again,

    Carlos Sosa Albert

  6. Hi and thanks for the very worm appreciation… 🙂

    Please see yourself encouraged to add and modify the code – that’s the whole propose for me publishing the source code. If you want some explanation on how to code works (classes and interactions) please add a relevant request in the Project page and I’ll answer there. I’d like to maintain all the project-relevant documentation in the project web site (http://www.codeplex.com/MsnHistoryMerger), not this blog.

    As for your suggestions, I’m not quite sure I understand your request. The log level (None, Error, Warning, Verbose) are aggregative – that is, the Warning level will log Errors & Warning, so if there is a problem with one of the files you should defiantly be able to see an error log using the Warnings log level. If this is not the case, please add a new issue in the project page and include some sample so I’ll be able to reproduce and fix this.

    Enjoy.

  7. 10ha10ha said

    gosh, seriously im looking for this for ages.
    i’ve been saving my histories, didn’t manage to get them to merge.

    btw, msn has it archieve if it reaches 4-5mb as i notice.

    nice work 🙂

  8. lxltop said

    this tool is very good,i have link it here:http://www.imxl.net/read.php/81.htm
    thanks very much,i like it~

  9. CrAcK said

    i can’t understand! how i can make this work?
    if i got my msn at work when i connect home i will see the history from Work at home ?

  10. […] Fernando has created an application that merges multiple instances of conversation history, useful if you have two sets of logs, eg. at home and at work. […]

  11. CrAcK,
    please visit the project page for instructions on how to use this utility (http://www.codeplex.com/MsnHistoryMerger).

    In short, the utility will not let you “see the history from Work” when you’re connected at home, but it will allow to merge the histories from both environments. You will then be able to manually coy the merged histories to both your home and work machines.

    If you need further assistance, please leave a request in the project’s discussions page (http://www.codeplex.com/MsnHistoryMerger/Thread/List.aspx) and I’ll answer there.

  12. Cupid222 said

    Just wanna say “Thanks”. It’s great.

  13. Waqas said

    Thank you. Great program!

  14. Ricardo said

    Thank you… amazing little program and very usefull. Works like a charm. Been looking for something like this for sometime, too lazy to program it myself too… let’s call it professional lazyness or something.
    Thanks a lot… great work!

  15. Timmy! said

    Wow. Finally, an intelligent, robust, unbloated, stand-alone app that does what you need it to do. Impressive.

    I’ve been looking for this utility for quite a while. Thanks for creating it, and thanks especially for making it freeware.

    I’m going to post a note about this utility on Facebook, so don’t be surprised if your downloads jump as more people learn about it.

  16. Roded said

    Bless you.

  17. Vincent said

    Hi there!

    Great tool. Only problem I (!) have is that I often re-install my pc and sometimes install different languages of msn. So i can merge the files, but then the data isnt correctly ordered anymore (date notation is different and so on). Do you know of a program which converts it all to english?

    Thx,
    Vincent

  18. Thanks for the replay, Vincent.
    If you could open a new issue in the project site (http://www.codeplex.com/MsnHistoryMerger/WorkItem/List.aspx) I’ll look into it to get you a fix.
    It would be great if you could attach the sample files so I can reproduce the issues you’re experiencing.

    Cheers,
    F

  19. Vinzzz said

    Ok added it! Was the previous fix-request already fixed in your online release? In other words: what happens if i select duplicate files to merge?

    THX
    Vinzzz

  20. Please post all issue-related posts & feature requests in the project site (codeplex.com/MsnHistoryMerger).
    As for the question, duplicate messages are correctly handled by the latest version (1.3).

    F

  21. Mark said

    I am not sure mine is working correctly. Every time I load it, it reverts to the default directories (two dont exist and one is the wrong MSN account). I would have thought the application would store a preferences file so that you didn’t have to change these each time. If there is one, where is it stored as something is going wrong here I think?

  22. disarray said

    I was trying to keep track of the disaster associated with Messenger on two machines…each with their own history. Tried other methods to merge without much luck and plenty of lost time. Installed this History Merger with great hopes but couldn’t get it to fire up…..alas, it was me that was the culprit- I did not have the net frame installed. Downloaded the latest V3.0, installed it and the History Merger worked flawlessly! Very nice unbloated, concise program. I thank you and so do my contacts (I no longer start a conversation in the wrong place due jumbled histories)!!!!

  23. Eric said

    This is a magnificent piece of work. Due to its unstable nature, Windows XP crashed my machine quarterly, but thanks for your simple yet essential tool, all my MSN messages are now back into one piece. Now I am looking for a way to merge the MSN history on my mac – Microsoft manages MSN history on Windows and mac differently.

  24. Edvard said

    Hi!
    I just want to thank you for a wonderful program!
    I was unsuccessfully trying to merge the files with notepad and wordpad when I tried google and found your program which worked perfect and saved me a lot of time 🙂
    It’s really nice that it apparently can merge Swedish and English files successfully and do it in a consistent way.

  25. I need your help please said

    Does anyone know if MSN keeps a record of all conversations on their servers?

    Also the conversation that saves automatically on the local computer is in XML format and it seems pretty easy to actually change the contents of the conversation by using an XML editor such as Oxygen. So does that mean if anyone wanted to,with the correct knowledge and software, they would be able to change the conversation?

  26. Ronald said

    Hi,

    Just a simple question: does the save history option have to be selected of keeping history in messenger or does it save these xml files alltoether?

  27. Hi Ronald,
    I added a question on your behalf in the project site: http://www.codeplex.com/MsnHistoryMerger/Thread/View.aspx?ThreadId=23732.
    Please post all questions related to this tool in the project site and not in this blog.

    Cheers,
    F

  28. Peter said

    Hello!

    Great useful tool which is so simple and easy to use.

    I’ve been trying to find such software since I synchronised MSN history incorrectly and gained two files for each MSN contact. MSN History Merger solved that problems in seconds!

    Thank you.

  29. Mi22u said

    YOU’RE MY SAVIOUR!!

    You cannot remotely imagine how you made me happy!
    The mere thought of losing many years of history was making me sick.

  30. Jenny said

    Hello, its a wonderful tool. Tnx a lot 🙂 I switched to mac recently and I start wondering is there a way to merge histories from messenger for mac and windows live messenger?

  31. sarah said

    thanks , quite good

  32. mti131 said

    Thanks a lot !

  33. DuncanL said

    Just wanted to say “Thank you” for this tool – have tried and failed to manually merge several of these history files; to be able to give it two folders, push a button and have fixed up results in a new folder is marvellous!

    Thanks again.

  34. Eleni said

    Hello there,

    I just wanted to thank you, it’s one of the most handy tools I’ve come across:)

  35. Mark said

    Thank you! I’ve been looking for this for a long time. Works perfectly and quickly. Excellent job 🙂

    Another note, I use Dropbox (https://www.dropbox.com) to keep my conversation histories synced between all the computers I use. Just set the conversation history folder to the same folder inside your Dropbox on all your computers and you’re good to go. Also doubles as backup 😉

  36. Bert said

    Maybe I did something wrong, but it didn’t work for me. I’m not impressed so far. I selected 2 msn messenger folders to merge to one, and click merge, but when I check the merge folder, it’s empty. How do I this to merge into my messenger logs?

    • Hey Bert,
      Very difficult to help you with the limited knowledge you’re providing.

      Essentially, if you followed the instructions from the project’s page it should “just work”… If you’re experiencing a problem with the utility, I’d appreciate if you log a new issue, and please remember to add sample files so I can reproduce the problem and fix it.

      Cheers,
      F

  37. Hi Fernando,
    I have an unique problem.

    I have 2 years of messages parsed on XML files,
    2 years on simples TXT trought msn plus,
    1,5 yr in HTML files trought msn plus.

    MSN plus has a built in reader, that its good, but its not everything,

    I want to do a Dabatase program,
    wich handles logs and conversations across plataforms.

    SMS backup in Android trough gmail,
    SMS backup in nokia cell phone trough NOKIA SUITE, CVS files,
    Facebook Chat,
    Email.

    i am currently a student of engineering, is it doable?

    • Hi Tiago,

      A solution that integrates conversations across various platforms is very doable, and also a great exercise for your field of study.

      The trick for developing such a solution is the abstraction of the data model so that it can be handled in a generic manner. In other words, you’ll have to create a solution that manages abstract conversation entities which in turn have 1-or-more abstract messages.

      In high level, the solution would have these conceptual components:
      1. A repository to store generic (“abstract”) conversations and messages.
      2. An interface to navigate through the conversations and messages in a user-friendly manner.
      3. Many product-specific importers to import product-specific conversations and messages into the generic repository.

      Some tips and considerations:
      1. In order to develop the generic entities, you’ve to analyse all the conversations and messages used by the various products, and identify what conceptual fields are commonly used by all of them.
      2. The key benefit of consolidation communications is with a recipient-centric view, i.e., an interface that consolidates the communication timeline with a recipient, regardless of the channel. For example, suppose you have an email thread with a friend, while at the same time you chat with him over MSN. The power of your solution is the ability to provide an interface that shows all the conversations with that friend, regardless of the technology used (email, MSN).
      3. You’ll have to analyse how, technically, you can import data from the various products. For example, in order to import MSN history logs you’ve to process XML files, but I’m not sure what’s required to import Facebook chats.

      So yeah, this solution is not simple, but it’s very feasible.

      Oh, and one last thing: the way to approach some complex problems is to break it down into smaller problems and solve them (that’s what abstraction is all about). Once you’ve solved all the small problems, you’ve essentially completed you’re logical-composition design and are ready to start coding.

      Best of luck!

      Fernando

      • Very Much thank you fernando,
        I currently have discovered an online app for downloading Facebook messages,
        its online and hadles an zip file containing every single conversation. (facebook backup does not do this)
        msn plus in txt and html files;
        sms in android trought backup via gmail,
        and sms from nokia phones wich is on csv file.

        My problem is to be closely a copy of similar social networks social tool,
        like Backupfy
        or Social safe.

        My motif is to make graphs out of this tool, like the tool “insideights” from social safe.
        I want to graph across plataforms and across the years how much did you talk with someone,
        an cloud of words,
        cloud of tags.

        i am currently trin to figure it out if i am capable,
        if its plausible to do,
        and so,
        if i have to run and Database, SQL for storing, why dont go online?

        so the i fall into one of these backups services.

        i am doing this tool because i am tring to write an autobiography.
        thanks for the reply fernando, i will continue to check yout blog,
        and sorry my pooor english, as i am brazilian.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: