Shoutbox

Music Logger Plus - Final - Version 2.4 + Standalone Version - Printable Version

-Shoutbox (https://shoutbox.menthix.net)
+-- Forum: MsgHelp Archive (/forumdisplay.php?fid=58)
+--- Forum: Messenger Plus! for Live Messenger (/forumdisplay.php?fid=4)
+---- Forum: Scripting (/forumdisplay.php?fid=39)
+----- Forum: Plug-Ins (/forumdisplay.php?fid=28)
+------ Thread: Music Logger Plus - Final - Version 2.4 + Standalone Version (/showthread.php?tid=48359)

Music Logger Plus - Final - Version 2.4 + Standalone Version by Jedimark on 08-01-2005 at 04:13 PM

MUSIC LOGGER PLUS 2.4 IS NOW SUPERSCEDED BY IT'S "SCRIPT" EQUIVALENT FOR MSGPLUS! LIVE 4.0

It's finally done, and now it's a Plus! plug-in! Music Logger Plus enables you to log the songs that your MSN contacts play in MSN Messenger.

Use the /xmlp command once the plug-in is installed to open the main window.

Screenshot:
[Image: csl-sshot.jpg]

Download: Music Logger Plus 2.4

Make sure after install you restart MSN Messenger for the Plug-in to be loaded.

Version 2.2 and above feature full Spanish and Dutch Translation (Select preferred language in Configuration screen)

[Image: spanish.JPG]

Version 2.3+ now features a "To HTML" option where you can export a contacts music history to a html file.

Thanks:
(Y) Stigmata: for telling me how to detect UBX messages
(Y) Patches: who designed the logo
(Y) Patchou: for Plus!
(Y) My MSN Contacts: for testing and putting up with constant messages from me pestering them!

If you have any problems / questions / suggestions then please post them in here, and could a mod close the old topic.

Kind regards,
- Mark


RE: Music Logger Plus - Final by Max on 08-01-2005 at 04:15 PM

My baby has been born. Finally, I can have a sleepless night.
Thanks for the opportunity,
Patches

Edit- Instead of restarting Messenger try using the Plugin Reloader by TheBlasphemer.


RE: Music Logger Plus - Final by Jedimark on 08-01-2005 at 08:42 PM

EDIT: Versions 2.0 and above now come with a proper installer package and so it should not be necessary to manually install.

================
Original Post:

To manually install:

Copy "Music Logger Plus.dll" into:
c:\Program Files\MessengerPlus! 3\Plugins\
(or equivalent directory)

Open up a command shell, goto the directory:
C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\
(or equivalent)

type:

RegAsm.exe /codebase "c:\Program Files\MessengerPlus! 3\Plugins\Music Logger Plus.dll"

You should get a confirmation message:
Microsoft ® .NET Framework Assembly Registration Utility 1.1.4322.573
Copyright © Microsoft Corporation 1998-2002. All rights reserved.

Types registered successfully

Then exit MSN Messenger, restart. Plugin should have been manually installed now.

I'm looking into an installer program.

- Mark


RE: Music Logger Plus - Final by TrickZ on 08-02-2005 at 02:43 PM

I have 2 suggestions for this plugin:

1) Allow you to right-click on the list and copy what your contact is listening to/has listened to and paste it.

2) To display the time which your contact has listened to a certain song.

Let me know what you think and if this is possible...


RE: Music Logger Plus - Final by user27089 on 08-02-2005 at 02:47 PM

It looks like a really cool program, the user interface is really nice looking, seems to work well too (y).


RE: Music Logger Plus - Final by kierant on 08-02-2005 at 03:25 PM

I love the idea of this plug-in so well done for pulling it off.

I have one suggestion though.

Would it be possible to not have to type the command into a chat window but to also have an option to open the window from the plug-in menu itself.


RE: Music Logger Plus - Final by TrickZ on 08-02-2005 at 03:27 PM

Hmm.. I've been using it for 2 days now and I've noticed that's it's not logging every single song that's played by myself or by my contacts, for example, I'll see a person listening to a song and then when I check the list of songs played by them it doesn't appear.. Any reason why?


RE: Music Logger Plus - Final by Max on 08-02-2005 at 03:58 PM

If I don't say myself, the UI does looks snazzy. Pretty simple to pull off the whole look of the UI, didn't take a long amount of time, but in my opinion looks professional and clean.


RE: Music Logger Plus - Final by kierant on 08-02-2005 at 04:06 PM

Not blowing one's own trumpet or anything! :P

Good job


RE: Music Logger Plus - Final by Max on 08-02-2005 at 04:45 PM

I don't even own a trumpet. ;)


RE: Music Logger Plus - Final by Jedimark on 08-02-2005 at 04:46 PM

TrickZ: Yeah I know about this bug, still looking into it and thanks for the suggestions, i'll try and get them into a next version.

kierant: Good suggestion, look for it in a future version.


RE: Music Logger Plus - Final by TrickZ on 08-02-2005 at 05:18 PM

...?


RE: RE: Music Logger Plus - Final by Jedimark on 08-02-2005 at 05:48 PM

quote:
Originally posted by TrickZ
...?

I dunno,

You reported a bug on the previous page and I was just acknowledging it and thanking you for the suggestion. I am I missing something?
RE: Music Logger Plus - Final by TrickZ on 08-02-2005 at 05:58 PM

Ooops, when I posted the '...?' it was in response to what Patches said, but at the time his post was the last post in the thread so I didn't actually see what you said.. :)


RE: Music Logger Plus - Final by Max on 08-02-2005 at 06:23 PM

Someone said about blowing my own trumpet and I replied "I don't own a trumpet."


RE: Music Logger Plus - Final by TrickZ on 08-02-2005 at 06:25 PM

Oh right.. Nevermind.. Just a slight misunderstanding :P


RE: Music Logger Plus - Final by qgroessl on 08-04-2005 at 09:40 PM

I can't get this to work... I've looked at your installation helpers, but I don't think anything worked... When I get to the command prompt for it to download it says all this:


This will install music logger plus!
You will need to restart MSN Messenger after installation for the Plug-in to load.
Press any key to continue...        (now I press any key)
The system cannot find the file specified.
The system cannot find the path specified.
Press any key to continue . . .     (then I press another key, and it closes out)


Thanks in advance!



Okay! So, now I extracted everything outta winzip... and then i tried again... Now one of the files copied successfully... but the path is still not found.


RE: Music Logger Plus - Final by Jedimark on 08-07-2005 at 01:27 PM

Where is Messenger Plus installed to on your system? Where is Microsoft .NET installed to on your system?

Defaults are:

C:\Program Files\MessengerPlus! 3\Plugins

and:

C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322


RE: Music Logger Plus - Final by qgroessl on 08-07-2005 at 01:58 PM

quote:
Originally posted by Jedimark
Where is Microsoft .NET installed to on your system

I don't see that where it would be on my system... is it possible I don't have it?
RE: RE: Music Logger Plus - Final by J-Thread on 08-07-2005 at 02:24 PM

quote:
Originally posted by qgroessl
quote:
Originally posted by Jedimark
Where is Microsoft .NET installed to on your system

I don't see that where it would be on my system... is it possible I don't have it?


Off course it is possible... Download it from windows Update ;-)
RE: Music Logger Plus - Final by qgroessl on 08-07-2005 at 02:30 PM

quote:
Originally posted by J-Thread
Download it from windows Update

Are there any faster ways? Usually my computer downloads things fast, but that takes like half hour.
RE: RE: Music Logger Plus - Final by Scratchy on 08-07-2005 at 02:33 PM

quote:
Originally posted by qgroessl
quote:
Originally posted by J-Thread
Download it from windows Update

Are there any faster ways? Usually my computer downloads things fast, but that takes like half hour.

Just download it from here:
http://www.microsoft.com/downloads/details.aspx?F...3a3&displaylang=en


RE: Music Logger Plus - Final by Jedimark on 08-07-2005 at 02:49 PM

Yes the Microsoft .NET Framework is a requirement for this plug in. You can get it off Windows Update or download it from:
http://www.microsoft.com/downloads/details.aspx?F...3a3&displaylang=en


RE: Music Logger Plus - Final - Version 2.0 by Jedimark on 08-08-2005 at 01:36 PM

I have released version 2.0. Download it at:

http://mlp.jedimark.co.uk/

New in this version:
(Y) Now uses the Windows Registry rather than an XML file to store contact song history.
(Y) Comes with proper installer program now.
(Y) A few other behind the scenes bugs removed.

As ever, please please report any problems you have with the program to me.

Kind regards,
- Mark


RE: Music Logger Plus - Final - Version 2.0 by Max on 08-08-2005 at 01:42 PM

Yay! :D


RE: Music Logger Plus - Final - Version 2.1 by taz030485 on 08-14-2005 at 10:36 AM

I installed this today and have had no problems and think it is very good(Y)

I have just a few questions:
1: In the registry it has a Last Played entry for songs, is it possible to have it as an item in the same list as attached pic?
2: Is it possible to sort the list shown in the attached pic by Song title or artist or Last Played (see above)?
3: Can you impliment some way to copy songs from the list by right clicking? Preferably in the same format as it is shown in MSN
4: This one's not as important, but I have myself in my own list and as a result it logs the music I play. Would it be possible to hide songs from myself?

Also would it be possible for you to make/add (if you add it it wouldn't be music logger then would it) the same sort of thing for logging PSM's (maybe even the games and office variations)?


RE: Music Logger Plus - Final - Version 2.1 by Jedimark on 08-15-2005 at 07:58 PM

Hey taz030485: Thanks for the suggestions. I'm on holiday at the moment (sad I know checking the Plus! forums on holiday) and I'm starting a new job next week so I'm going to be busy.

However, they are very good suggestions, and ones that I have wanted to implement myself so I shall do my best. They shouldn't be too difficult.

As for the last suggestion, yeah it wouldn't be music logger then so I'm not sure about that one!

- Mark


RE: RE: Music Logger Plus - Final - Version 2.1 by taz030485 on 08-15-2005 at 11:00 PM

quote:
Originally posted by Jedimark
Hey taz030485: Thanks for the suggestions. I'm on holiday at the moment (sad I know checking the Plus! forums on holiday) and I'm starting a new job next week so I'm going to be busy.

No harm in checking the forunms :P Good Lick with your new job.

quote:
Originally posted by Jedimark However, they are very good suggestions, and ones that I have wanted to implement myself so I shall do my best. They shouldn't be too difficult.

Thats nice to hear:)

quote:
Originally posted by Jedimark
As for the last suggestion, yeah it wouldn't be music logger then so I'm not sure about that one!

Maybe make a second program call PSM Logger and use the backbone of Music Logger instead of strting fom scratch. Just a suggestion and it is up to you.

If I knew what I was doing I'd do it myself but I couldn't code my way out of a paperbag, so to speak:P

- Andrew
RE: Music Logger Plus - Final - Version 2.1 by robochief on 08-16-2005 at 03:24 AM

I have version 1.2b and want to cleanly uninstall it.
What steps should I follow?


RE: Music Logger Plus - Final - Version 2.1 by Jedimark on 08-16-2005 at 04:07 PM

Start --> Run

code:
C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\RegAsm.exe /unregister "C:\Program Files\MessengerPlus! 3\Plugins\Music Logger Plus.dll"

Then, delete "Music Logger Plus.dll" in the Plugin directory.

NB: If the paths are different on your computer adjust them accordingly.

I guess alternatively you could open up the registry:

Start --> Run --> "Regedit" [enter]

and do a search for all references to "Music Logger Plus.dll" and erase them manually.
RE: Music Logger Plus - Final - Version 2.2 by taz030485 on 08-16-2005 at 11:09 PM

Are the only changes from 2.1 to 2.2 language translations?
Maybe a change log could be implemented?


RE: Music Logger Plus - Final - Version 2.2 by Kat_27 on 08-18-2005 at 03:45 AM

This sounds dumb, but where do you go to look at the songs? Whats this about a command?


RE: RE: Music Logger Plus - Final - Version 2.2 by taz030485 on 08-18-2005 at 07:28 AM

quote:
Originally posted by Kat_27
This sounds dumb, but where do you go to look at the songs? Whats this about a command?

Simply type /xmlp in a converstion.
It is just like every other Msg Plus command, ones with /x are plugin commands.
Depending on the options you have set in Plus's config, when you press / a list of things should come up. If no goto Plus's preferences -> Instant Messages -> Commands and Tags and check the box that says "Enable command helper windows"

Hope this helps
RE: Music Logger Plus - Final - Version 2.2 by J.J on 08-18-2005 at 07:44 AM

i couldnt get 2.1 to work but 2.2 works well with me :)

It's great, i love it :grin:

Awesome work


RE: Music Logger Plus - Final - Version 2.2 by Sypher on 08-18-2005 at 10:14 AM

It doesn't work for me... :(

Doesn't log a single track...


RE: Music Logger Plus - Final - Version 2.2 by John Anderton on 08-18-2005 at 10:19 AM

Looks like a really cool program .... it could have another feature ...
the number of times that a contact has played the same song :P
Just try to find the same name and count :)

Ill download it :D


RE: RE: Music Logger Plus - Final - Version 2.2 by taz030485 on 08-18-2005 at 10:22 AM

quote:
Originally posted by John Anderton
Looks like a really cool program .... it could have another feature ...
the number of times that a contact has played the same song :P
Just try to find the same name and count :)

Ill download it :D

It does, just pull the drop list down and choose the contacts email.
RE: RE: Music Logger Plus - Final - Version 2.2 by Jedimark on 08-18-2005 at 01:41 PM

quote:
Originally posted by Sypher
It doesn't work for me... :(

Doesn't log a single track...

There's a wierd problem with people either:
> having more than one connection (so multiple IP's)
> people that have no IP (I.e. they are disconnected) when MsgPlus loads.

Have you tried using the "Reload" button? The function of that is to grab the IP address again so it can start the sniffing process again.

Oh, and are you an administrator on the computer? If not then MLP will not work.

Yay.. got onto Mess.be today, good publicity! BTW: Does anyone know how to get plugins listed on msgplus.com. I sent an E-mail to Fraisie but no response now for a few weeks.
RE: Music Logger Plus - Final - Version 2.2 by miss.stina on 08-20-2005 at 04:01 PM

Where do I open the program ?? Cant find it *-)


RE: Music Logger Plus - Final - Version 2.2 by hanybasha on 08-20-2005 at 05:45 PM

Hello,

It dose not work for me too!
I am administrator, And I have single dynamic IP...

It displays this message forever: "your contacts have not played any songs yet"

Should my contact use WMP or it works also with winamp?!
Should my contact turn on the  "What i am listining On" MSN feature?

I have tried your MLP versions: 2.1 and 2.2
With MSN versions: 7 and 7.5


RE: Music Logger Plus - Final - Version 2.2 by Max on 08-20-2005 at 05:51 PM

To open the plugin, you need to type in.

/xmlp


RE: Music Logger Plus - Final - Version 2.2 by Jedimark on 09-24-2005 at 10:59 AM

Hello everyone! Finally got back on t'internet after moving to London.

At the moment I'm working on an export feature for MLP so you can save a contacts music history as a HTML file.

I have a template file here:
http://mlp.jedimark.co.uk/template.htm

But as you can probable see, I'm not the worlds best when it comes to arty stuff, if anyone wants to take the template, play with colours etc to make it look visually more appealing that would be very great!

- Mark

PS - Oh and I count 10,000 downloads of MLP as of yesterday. That's not including people downloading from MsgPlus.net or Mess.be!! (H)


RE: Music Logger Plus - Final - Version 2.3 by FabianC on 09-28-2005 at 06:10 AM

I really wanted to use this plugin, but i dont have the framework installed, and it will take so long to download it form microsoft.
is there a version that doesnt need the framework program?


RE: Music Logger Plus - Final - Version 2.3 by Jedimark on 09-29-2005 at 04:52 PM

Sorry you need the .NET framework installed to run MLP because it's written in C#. No way round it.


RE: Music Logger Plus - Final - Version 2.3 by FabianC on 09-29-2005 at 05:33 PM

Ok thanks, i'll find a way to get the framework.


RE: Music Logger Plus - Final - Version 2.3 by Jedimark on 09-29-2005 at 07:10 PM

Download from here:
http://www.microsoft.com/downloads/info.aspx?na=9...006%2fdotnetfx.exe

If it's too big for you to download in one go then consider using a download manager such as GetRight so you pause/resume downloads as much as you like.

- Mark


RE: Music Logger Plus - Final - Version 2.3 by FabianC on 09-30-2005 at 05:11 AM

Thanks I'll try it using flashget to download it by small parts.


RE: Music Logger Plus - Final - Version 2.3 by ajay on 09-30-2005 at 09:58 AM

good work


RE: Music Logger Plus - Final - Version 2.3 by Max on 10-03-2005 at 05:16 PM

Screenshot of the new Graphics.


RE: Music Logger Plus - Final - Version 2.3 by DanZie Boy on 10-05-2005 at 06:39 AM

I have a question! When me or another contact plays songs from foobar2000, how come the songs don't display right  in MLP's logs? The artist name never appears or partially appears.


RE: Music Logger Plus - Final - Version 2.3 by Jedimark on 10-06-2005 at 07:23 PM

I don't know what foobar2000 is but maybe whatever plug-in sends the song data to Msn Messenger doesn't follow the same message structure as WMP or iTunes. I'll have a look at it at some point but my time is precious at the moment.


RE: Music Logger Plus - Final - Version 2.3 by Jedimark on 10-14-2005 at 06:23 PM

Okay so I have been getting lots of E-mails from people wanting to know how Music Logger Plus work and with feature requests / bug reports etc. I'm sorry I can't fix the bugs as fast as I would like but my new job takes up all my time at the moment.

For the people that wanted to know how to get the Contact Song Information, all you have to do is packet sniff for any "UBX" packets and then you can process the data payload of the UBX packet to extract PSM and Current Media information.

For the people that wanted to know how to process the data payload of a UBX command, well I'm feeling generous. Here is my UBX class, you create a new instance of it, supply it with the data payload (I.e. everything within <DATA> and </DATA>) and it does the rest for you:

code:
/*
* UBX.cs - Coded by Mark Rylander - 2005
* Takes Raw UBX packet and processes it to find out contact PSM information
* specifically the current media (CM) they are playing.
* http://www.jedimark.co.uk/
*
* Written for use with "Music Logger Plus!"
* http://mlp.jedimark.co.uk/
*
* VERSION 2.0
* Updated on 04th August 2005
* */

using System;

namespace MLP
{
    public class UBX
    {
        private static string information;
        private int startOfPSM;
        private int endOfPSM;
        private int startOfCM;
        private int endOfCM;
        private bool songChange = false;

        public string type;
        public string contact;
        public int code;
        public string PSM;
        public string CM;
        public string song;
        public string artist;
        public bool aOK;
       
        public UBX()
        {
            type = "";
            contact = "";
            code = 0;
            PSM = "";
            CM = "";
            song = "";
            artist = "";
            aOK = false;
        }

        /// <summary>
        /// Processes a UBX packet to get and set the various variables
        /// (I.e. PSM / Current Media)
        /// </summary>
        /// <param name="payload">The Raw UBX Packet</param>
        public UBX(string payload)
        {
            try
            {
                Console.WriteLine("We are in the UBX method now: " + payload);
                Array header = getHeader(payload);
                information = getInformation(payload);
                type = header.GetValue(0).ToString();
                contact = header.GetValue(1).ToString();
                code = Convert.ToInt32(header.GetValue(2).ToString());
                PSM = processPSM(information);
                CM = getFullCM(information);

                Console.WriteLine("The CM is: " + CM);
                if (!CM.Equals(""))
                {
                    songChange = true;
                    if (processCM(CM))
                    {
                        aOK = true;
                    }
                    else
                    {
                        aOK = false;
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.StackTrace);
            }
        }

        /// <summary>
        /// Get Method for aOK Variable
        /// </summary>
        /// <returns></returns>
        public bool isAOK()
        {
            return aOK;
        }

        /// <summary>
        /// Get Method for Artist Variable
        /// </summary>
        /// <returns></returns>
        public string getArtist()
        {
            return artist;
        }

        /// <summary>
        /// Get Method for songChange Variable
        /// </summary>
        /// <returns></returns>
        public bool getSongChange()
        {
            return songChange;
        }

        /// <summary>
        /// Get Method for type Variable
        /// </summary>
        /// <returns></returns>
        public string getType()
        {
            return type;
        }

        /// <summary>
        /// Get Method for contact Variable
        /// </summary>
        /// <returns></returns>
        public string getContact()
        {
            return contact;
        }

        /// <summary>
        /// Get Method for code Variable
        /// </summary>
        /// <returns></returns>
        public int getCode()
        {
            return code;
        }

        /// <summary>
        /// Get Method for PSM Variable
        /// </summary>
        /// <returns></returns>
        public string getPSM()
        {
            return PSM;
        }

        /// <summary>
        /// Get Method for CM Variable
        /// </summary>
        /// <returns></returns>
        public string getCM()
        {
            return CM;
        }

        /// <summary>
        /// Get Method for song Variable
        /// </summary>
        /// <returns></returns>
        public string getSong()
        {
            return song;
        }

        /// <summary>
        /// Strips the header of a UBX packet
        /// </summary>
        /// <param name="data">The raw UBX packet</param>
        /// <returns>The data section of the UBX packet</returns>
        private string getInformation(string data)
        {
            Console.WriteLine("I am in the getInformation method");
            char[] myArray = data.ToCharArray();
            for (int i=0; i<myArray.Length; i++)
            {
                if (myArray[i] == '<')
                {
                    char[] myNewArray = new char [myArray.Length - i];
                    for (int j=0; j<(myArray.Length - i); j++)
                    {
                        myNewArray[j] = myArray[j + i];
                    }
                    return new String(myNewArray);
                }
            }
            return null;
        }

        /// <summary>
        /// Strips the data of a UBX packet
        /// </summary>
        /// <param name="data">The raw UBX packet</param>
        /// <returns>The header section of a UBX packet</returns>
        private Array getHeader(string data)
        {
            Console.WriteLine("I am in the getHeader method");
            char[] myArray = data.ToCharArray();
            for (int i=0; i<myArray.Length; i++)
            {
                if (myArray[i] == '<')
                {
                    char[] myNewArray = new char [i-2];
                    for (int j=0; j<(i-2); j++)
                    {
                        myNewArray[j] = myArray[j];
                    }
                    Array a = processHeader(new String(myNewArray));
                    return a;
                }
            }
            return null;
        }

        /// <summary>
        /// Splits a given string based on supplied separator
        /// </summary>
        /// <param name="stringToSplit">The string to the split</param>
        /// <param name="sep">Array of characters to base split on</param>
        /// <returns>The first split</returns>
        private Array SplitString(string stringToSplit, char[] sep)
        {
            Console.WriteLine("I am in the SplitString method");
            return stringToSplit.Split(sep);
        }

        /// <summary>
        /// Places the UBX header into an array
        /// </summary>
        /// <param name="header">The full header</param>
        /// <returns>An array containing the header</returns>
        private Array processHeader(string header)
        {
            Console.WriteLine("I am in the processHeader method");
            char[] sep = {' '};
            return SplitString(header, sep);
        }

        /// <summary>
        /// Processes an array to find data within given start / end
        /// </summary>
        /// <param name="start">Start pos in array</param>
        /// <param name="end">End pos in array</param>
        /// <param name="array">The data array</param>
        /// <returns></returns>
        static string getString(int start, int end, char[] array)
        {
            Console.WriteLine("I am in the getString method");
            Console.WriteLine("I have: " + start + " " + end);
            try
            {
                if (end-start < 0)
                {
                    return "";
                }
                else
                {
                    char[] buffer = new char[end-start];
                    for (int i=0; i< (end-start); i++)
                    {
                        buffer[i] = array[start+i];
                    }
                    return new string(buffer);
                }
            }
            catch(Exception ex)
            {
                Console.WriteLine(ex.StackTrace);
                return null;
            }
        }

        /// <summary>
        /// Method to place the CurrentMedia message into a string
        /// </summary>
        /// <param name="info">The full message</param>
        /// <returns>The CurrentMedia message</returns>
        private string getFullCM(string info)
        {
            Console.WriteLine("I am in the getFullCM method");
            char[] myArray = info.ToCharArray();

            for (int i=0; i< myArray.Length; i++)
            {
                if ((myArray[i] == '<') &
                    (myArray[i+1] == 'C') &
                    (myArray[i+2] == 'u') &
                    (myArray[i+3] == 'r') &
                    (myArray[i+4] == 'r') &
                    (myArray[i+5] == 'e') &
                    (myArray[i+6] == 'n') &
                    (myArray[i+7] == 't') &
                    (myArray[i+8] == 'M') &
                    (myArray[i+9] == 'e') &
                    (myArray[i+10] == 'd') &
                    (myArray[i+11] == 'i') &
                    (myArray[i+12] == 'a') &
                    (myArray[i+13] == '>'))
                {
                    startOfCM = i+14;
                   
                    for (int j=(i+14); j< myArray.Length; j++)
                    {
                        if ((myArray[j] == '<') &
                            (myArray[j+1] == '/') &
                            (myArray[j+2] == 'C') &
                            (myArray[j+3] == 'u') &
                            (myArray[j+4] == 'r') &
                            (myArray[j+5] == 'r') &
                            (myArray[j+6] == 'e') &
                            (myArray[j+7] == 'n') &
                            (myArray[j+8] == 't') &
                            (myArray[j+9] == 'M') &
                            (myArray[j+10] == 'e') &
                            (myArray[j+11] == 'd') &
                            (myArray[j+12] == 'i') &
                            (myArray[j+13] == 'a') &
                            (myArray[j+14] == '>'))
                        {
                            endOfCM = j-1;
                            break;
                        }
                    }
                    break;
                }
            }
            return getString(startOfCM, endOfCM, myArray);
        }

        /// <summary>
        /// Method to place the PSM into a string
        /// </summary>
        /// <param name="info">The full message</param>
        /// <returns>The PSM</returns>
        private string processPSM(string info)
        {
            Console.WriteLine("I am in the processPSM method");
            char[] myArray = info.ToCharArray();

            for (int i=0; i< myArray.Length; i++)
            {
                if ((myArray[i] == '<') &
                    (myArray[i+1] == 'P') &
                    (myArray[i+2] == 'S') &
                    (myArray[i+3] == 'M') &
                    (myArray[i+4] == '>'))
                {
                    startOfPSM = i+5;
                   
                    for (int j=(i+5); j< myArray.Length; j++)
                    {
                        if ((myArray[j] == '<') &
                            (myArray[j+1] == '/') &
                            (myArray[j+2] == 'P') &
                            (myArray[j+3] == 'S') &
                            (myArray[j+4] == 'M') &
                            (myArray[j+5] == '>'))
                        {
                            endOfPSM = j-1;
                            break;
                        }
                    }
                    break;
                }
            }
            return getString(startOfPSM, endOfPSM, myArray);
        }

        /// <summary>
        /// Takes the CM Message and finds out the specific parameters of it
        /// </summary>
        /// <param name="CM">The CM Message</param>
        /// <returns>Boolean reporting either success of failure of method</returns>
        private bool processCM(string CM)
        {
            try
            {
                CM = CM.Replace("&apos;", "'");
                CM = CM.Replace("&amp;", "&");
                char[] myArray = CM.ToCharArray();
                int player = 0;
                int start;
                int end;

                //First find out if we are dealing with ITunes or WMP
                player = setPlayerType(myArray);

                if (player == 0)
                {
                    start = 29;
                }
                else
                {
                    start = 23;
                }

                end = findEnd(start, myArray);
                song = getData(start, end, myArray);

                start = end + 2;
                end = findEnd(start, myArray);
                artist = getData(start, end, myArray);

                return true;
            }
            catch(Exception ex)
            {
                Console.WriteLine(ex.Message + ex.StackTrace);
                return false;
            }
        }

        /// <summary>
        /// Determines what Media Player a contact is using
        /// </summary>
        /// <param name="myArray">UBX Data Array</param>
        /// <returns>Integer representing player type (0 = ITunes, 1 = WMP)</returns>
        private int setPlayerType(char[] myArray)
        {
            if ((myArray[0] == 'I') &
                (myArray[1] == 'T') &
                (myArray[2] == 'u') &
                (myArray[3] == 'n') &
                (myArray[4] == 'e') &
                (myArray[5] == 's'))
            {
                return 0;
            }
            else
            {
                return 1;
            }
        }

        /// <summary>
        /// Finds the end of the next piece of data
        /// </summary>
        /// <param name="start">The position in the array to start from</param>
        /// <param name="array">UBX data array</param>
        /// <returns>Integer representing where the end of the next piece of data is</returns>
        private int findEnd(int start, char[] array)
        {
            for (int i=start; i<array.Length; i++)
            {
                if ((array[i] == '\\') &
                    (array[i+1] == '0'))
                {
                    return i;
                }
            }
            return 0;
        }

        /// <summary>
        /// Finds out specific data from UBX packet
        /// </summary>
        /// <param name="start">Position in array of where the data starts</param>
        /// <param name="end">Position in array of where the data ends</param>
        /// <param name="array">UBX data array</param>
        private string getData(int start, int end, char[] array)
        {
            try
            {
                char[] buffer = new char[end-start];
                for (int i=0; i< (end-start); i++)
                {
                    buffer[i] = array[start+i];
                }
                return new string(buffer);
            }
            catch(Exception ex)
            {
                Console.WriteLine(ex.Message + ex.StackTrace);
                return "<NO DATA>";
            }
        }
    }
}

RE: Music Logger Plus - Final - Version 2.3 by DanZie Boy on 10-21-2005 at 09:36 PM

I just don't get it! Why put in a "Delete Database" button if it's greyed out all the time?!


RE: Music Logger Plus - Final - Version 2.3 by Jedimark on 10-21-2005 at 09:57 PM

Cause I never got round to writting the code to delete the database ;)

If you want to do it yourself just delete all the contact folders in:
HKEY_CURRENT_USER\Software\Jedimark\Music Logger Plus


RE: Music Logger Plus - Final - Version 2.3 by kri on 10-24-2005 at 09:14 AM

I like this program, but it doesn't seem to install well when MsgPlus! is installed on another drive than C:.

In my instance, MsgPlus! is installed on "E:\Programfiler\Messenger Plus! 3", but MLP doesn't give an option to choose install directory, so it has to be installed on C:, and then manually reinstalled on E:.

It works for me, but I can imagine some people might struggle to do it.


RE: Music Logger Plus - Final - Version 2.3 by J-Thread on 10-24-2005 at 10:03 AM

Jedimark says it does use the install dir of msg plus, but as far as I know it doesn't....

Jedimark, can you take another look at it? Maybe you commented the line:P


RE: Music Logger Plus - Final - Version 2.3 by Jedimark on 10-24-2005 at 03:39 PM

quote:
Originally posted by J-Thread
Jedimark, can you take another look at it? Maybe you commented the line
lol!

Okay, so here's the proof:

[Image: sshot6qq.jpg]

So... either:

a) There is a problem with the installer getting the value from peoples registry
b) There is a bug with MsgPlus where by if a user changes the default install path the new path is not reflected in the PluginDir registry key.

I see no fault with my installer... the "Emergency Folder" value is only used as a last resort if no registry key is found!
RE: Music Logger Plus - Final - Version 2.3 by the andyman on 10-26-2005 at 02:28 PM

is there any way to stop the window showing when plus! (and therefore the plugin) starts. it's only started showing in the newest version and is a bit annoying.

also is there any thought of being able to click on one of the column heads (eg artist) and make the rows in order of whatever clicked instead of always play count in future versions

EDIT: just noticed the window autohides itself, but is there any way to get it not to come up at all...


RE: Music Logger Plus - Final - Version 2.3 by J-Thread on 10-26-2005 at 02:34 PM

Jedimark, maybe you should remove the first slash?

So root is: HKEY_LOCAL_MACHINE
And path is: SOFTWARE\Patchou\MsgPlus2


RE: RE: Music Logger Plus - Final - Version 2.3 by Jedimark on 10-28-2005 at 05:47 PM

quote:
Originally posted by the andyman
is there any way to stop the window showing when plus! (and therefore the plugin) starts. it's only started showing in the newest version and is a bit annoying.

also is there any thought of being able to click on one of the column heads (eg artist) and make the rows in order of whatever clicked instead of always play count in future versions

EDIT: just noticed the window autohides itself, but is there any way to get it not to come up at all...


Thanks for your comments, unfortunately the window needs to be generated else MsgPlus refuses to accept any requests to the EventLog. It should all happen within half a second though!

I'll maybe implement the other stuff in a future version.

quote:
Originally posted by J-Thread
Jedimark, maybe you should remove the first slash?

So root is: HKEY_LOCAL_MACHINE
And path is: SOFTWARE\Patchou\MsgPlus2

Ah, good idea! Will give it a go when I get back home.
RE: Music Logger Plus - Final - Version 2.3 by cardshark on 10-29-2005 at 04:07 AM

Ha, Andyman, you beat me to it. I wasn't sure if I was seeing the MLP window pop up when I signed on because it was up and gone so fast. Nice program. I was just wondering if, under the "current status" view, would it be possible to sort the list by most recent time at the top, instead of at the bottom? That way I could see the most recent songs played by my contacts right away instead of having to scroll all the way down. Just a thought. :)


RE: Music Logger Plus - Final - Version 2.3 by The_Joker on 11-03-2005 at 06:11 PM

I have noticed in the past few days a problem with MLP.
Actually only one contact has played music (if the bug is what I think it is it's better that it's only one) so I dunno if it's only with him or not.
When I check the played song for this contact I only see 2, one in Hebrew (unreadable :S btw, do u work on fixing this?), and the second is the currect song.
The second one keeps update according to the currect song, so my guess is, as he keeps listening to the same songs, that MLP deletes the last song and add the new one, so it deleted every song there except that one that he probably didn't listened to again...
This is a serious bug, I hope u'll fix it soon.


RE: Music Logger Plus - Final - Version 2.3 by DanZie Boy on 11-04-2005 at 06:48 AM

I'd just like to report a bug. In the playlist count thing, it sometimes shows up the song as being played twice, yet the contact has only played it once. (NOTE: This is not the "logging songs twice" glitch)


RE: RE: Music Logger Plus - Final - Version 2.3 by The_Joker on 11-04-2005 at 05:19 PM

quote:
Originally posted by DanZie Boy
I'd just like to report a bug. In the playlist count thing, it sometimes shows up the song as being played twice, yet the contact has only played it once. (NOTE: This is not the "logging songs twice" glitch)


I think this has been said b4...
It happens when u reload the plugin, try exit MSNM and reopen, it should solve the problem
RE: RE: Music Logger Plus - Final - Version 2.3 by Jedimark on 11-05-2005 at 11:39 PM

quote:
Originally posted by The_Joker
This is a serious bug, I hope u'll fix it soon.

Doh! When messing round with the last version I disabled the access permisions to the registry... typical! Re-download it now, this issue should be fixed now!
RE: Music Logger Plus - Final - Version 2.3 by The_Joker on 11-06-2005 at 08:56 PM

Downloaded it again earlier today and it works good now :D
Probably I'm being a bit naggy but my list keep filling with unreadable songs' titles...
Any news about when it will be fixed (if it will be :|)?


RE: Music Logger Plus - Final - Version 2.3 by DanZie Boy on 11-21-2005 at 09:03 PM

I have a question. Why does MLP! sometimes refuse to log songs?


RE: RE: Music Logger Plus - Final - Version 2.3 by The_Joker on 11-22-2005 at 09:34 PM

quote:
Originally posted by DanZie Boy
Is anyone gonna respond to this or not?

no :P

It works fine for me.
Try to reinstall it, maybe it will help.
It helped me with another problem.
RE: Music Logger Plus - Final - Version 2.3 by TrickZ on 11-25-2005 at 08:38 PM

Just a quick question... Would it be possible to add a feature where you could right-click on the row and copy it to your clipboard?


Oooops, just re-read... Someone else already asked, sorry :)
RE: Music Logger Plus - Final - Version 2.3 by cardshark on 11-26-2005 at 06:27 AM

I would still like to know if this is possible:

quote:
Originally posted by cardshark
I was just wondering if, under the "current status" view, would it be possible to sort the list by most recent time at the top, instead of at the bottom? That way I could see the most recent songs played by my contacts right away instead of having to scroll all the way down. Just a thought. :)

RE: Music Logger Plus - Final - Version 2.3 by Jedimark on 11-26-2005 at 12:12 PM

quote:
Originally posted by TrickZ
Just a quick question... Would it be possible to add a feature where you could right-click on the row and copy it to your clipboard?
You can do this with items in the live event log at the moment. Shouldn't be a problem to add it to the individual contact lists.

quote:
Originally posted by cardshark
Originally posted by cardshark
I was just wondering if, under the "current status" view, would it be possible to sort the list by most recent time at the top, instead of at the bottom? That way I could see the most recent songs played by my contacts right away instead of having to scroll all the way down. Just a thought.
Hmm yeah, I've just been so busy lately. Don't worry, it's on my "to do" list ;).
RE: Music Logger Plus - Final - Version 2.3 by wolfrunner6996 on 12-20-2005 at 12:33 PM

can anyone tell me how to get this plug in to work? I installed it, like... 5 times, and it won't work. anything will help... thank you...


RE: Music Logger Plus - Final - Version 2.3 by cardshark on 12-20-2005 at 05:39 PM

If you have it installed, make sure it's enabled in Msg Plus! Once you have that set up, in a conversation window, type /xmlp and it will come up with the log window to let you view the song listings.


RE: Music Logger Plus - Final - Version 2.3 by J-Thread on 12-20-2005 at 08:25 PM

Make sure you haven't got other C# plugins loaded....


RE: Music Logger Plus - Final - Version 2.3 by wolfrunner6996 on 12-21-2005 at 10:03 PM

thanks, i got it to work now.... thank you for the help....:)


RE: Music Logger Plus - Final - Version 2.3 by Jedimark on 12-30-2005 at 12:58 PM

Just got an E-mail from "Living Digital, India's leading technology magazine" (apparently) who are including Music Logger Plus in the next edition of their monthly magazine... I'm a bit chuffed about that :D

Happy new year everyone.
- Mark


RE: Music Logger Plus - Final - Version 2.3 by the andyman on 12-30-2005 at 03:45 PM

wow, may I be the first to congratulate you,

well done and thanks again for the great program


RE: Music Logger Plus - Final - Version 2.3 by Jedimark on 01-15-2006 at 03:01 PM

For those people using WLM and whom have been asking be to release a "Standalone" version of Music Logger Plus... here it is:

http://freespace.virgin.net/mark.rylander/mlp-2.4-S.exe

Regards,
- Mark


RE: Music Logger Plus - Final - Version 2.3 + Standalone Version by The_Joker on 01-25-2006 at 04:44 PM

Lately I have some very annoying problems with MSNM.
It freezes and stuck (got to terminate it and reopen, usually to terminate again and use webmsgr instead).
It started to become too often, and now I've tried to figure out what was the cause, and it seems to be MPL.
any guesses y it's freezing MSNM?


RE: Music Logger Plus - Final - Version 2.3 + Standalone Version by tayhaithian on 01-26-2006 at 12:32 PM

mm....zzz i cant work it at all ... it just ntg happen after i install
>.<'
even i try to restart msn and type /xmpl as u say front there ..
and i having some requiresment problems ... like the FrameWork there  . i just saw "NO" tat words lolz n i hav no idea to do with it .... anyway to help me out ? and i was using msn 7.5


RE: RE: Music Logger Plus - Final - Version 2.3 + Standalone Version by Jedimark on 01-26-2006 at 05:33 PM

quote:
Originally posted by The_Joker
Lately I have some very annoying problems with MSNM.
It freezes and stuck (got to terminate it and reopen, usually to terminate again and use webmsgr instead).
It started to become too often, and now I've tried to figure out what was the cause, and it seems to be MPL.
any guesses y it's freezing MSNM?

Hmm, sorry to hear it seems to have been causing you problems. I'm not sure why it could be causing MSN to crash after all it's part of Plus! not MSN.

There is a possibility that a corrupt song database is the reason. You could try using the "Delete Database" function in the Preferences to reset the database.

Alternatively do it manually by removing all the contacts in:
HKEY_CURRENT_USER\Software\Jedimark\Music Logger Plus

quote:
Originally posted by tayhaithian
RE: Music Logger Plus - Final - Version 2.3 + Standalone Version

mm....zzz i cant work it at all ... it just ntg happen after i install
>.<'
even i try to restart msn and type /xmpl as u say front there ..
and i having some requiresment problems ... like the FrameWork there  . i just saw "NO" tat words lolz n i hav no idea to do with it .... anyway to help me out ? and i was using msn 7.5

MLP requires the .NET Framework. You can download it here:

http://www.microsoft.com/downloads/details.aspx?F...4F5&displaylang=en

You also need to be an "admin" account on your local computer and using Windows XP.

- Mark
RE: Music Logger Plus - Final - Version 2.3 + Standalone Version by tayhaithian on 01-27-2006 at 07:25 AM

Anyway thank u for that frame work links .

but how was it works ? after i type /xmlp and what i can do ?
just see what do my friends play in msn music ?
or i can do like adding in a log in sound when im loging in ?
or others thingy that can be done with this ?
im not really understand what it works and im new with this lolx
>.<''


RE: RE: RE: Music Logger Plus - Final - Version 2.3 + Standalone Version by The_Joker on 01-29-2006 at 09:04 PM

quote:
Originally posted by Jedimark
There is a possibility that a corrupt song database is the reason. You could try using the "Delete Database" function in the Preferences to reset the database.

Alternatively do it manually by removing all the contacts in:
HKEY_CURRENT_USER\Software\Jedimark\Music Logger Plus


Apparently that was the problem, tried deleting the db and it works fine.
Still a bit slower on startup of MSNM with the plugin, but at least it works fine afterward.
RE: Music Logger Plus - Final - Version 2.3 + Standalone Version by Jedimark on 02-14-2006 at 04:55 PM

Ok thanks, I'm going to look at some optimisation routines soon. I've just been so very busy latelly I haven't had time to do anything much on MLP.