Shoutbox

Why Plus 5 don't suport Messenger.MyPersonalMessage? - 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)
+----- Thread: Why Plus 5 don't suport Messenger.MyPersonalMessage? (/showthread.php?tid=96781)

Why Plus 5 don't suport Messenger.MyPersonalMessage? by JaderCM on 02-12-2011 at 10:49 PM

Finally, after much waiting, the team released a Plus version for WLM 2011.

But apparently there are some bugs in the resource script.

For example, the feature Messenger.MyPersonalMessage is not working.

Clearance returns the following error: "Error: Object does not support the action (code: -2146827843). "

Is there any fix for this bug?

Messenger 2011 version 15.4.3508.1109
Plus 5 version 5.00.0.702
Microsoft Windows Seven Ultimate 32bits version 6.1.7600


RE: Why Plus 5 don't suport Messenger.MyPersonalMessage? by Arcticwolfx on 02-12-2011 at 11:44 PM

I notice that various scripts have problems with the Personal Message in WLM 2011. This is probably due to changes in the way Personal Message is used. It's more or less Microsoft's counterpart of twitter, every time a status is set, the status is posted on your Windows Live Profile, as well any of the services you connect to, like Facebook.

I would like to know if it's still possible to access the "Personal Message" at all through normal means? I'm sure there is one way or another, but perhaps more difficult than before. "Show music I'm currently listening too" has been removed as well, probably because otherwise everyone's Profile page would be spammed with their song history.

Typical Microsoft changes, grrr!


RE: Why Plus 5 don't suport Messenger.MyPersonalMessage? by Spunky on 02-13-2011 at 12:55 AM

quote:
Originally posted by Arcticwolfx
I notice that various scripts have problems with the Personal Message in WLM 2011. This is probably due to changes in the way Personal Message is used. It's more or less Microsoft's counterpart of twitter, every time a status is set, the status is posted on your Windows Live Profile, as well any of the services you connect to, like Facebook.

I would like to know if it's still possible to access the "Personal Message" at all through normal means? I'm sure there is one way or another, but perhaps more difficult than before. "Show music I'm currently listening too" has been removed as well, probably because otherwise everyone's Profile page would be spammed with their song history.

Typical Microsoft changes, grrr!

At the moment it is possible to read a personal message, but not to set one. I have a feeling it's to do with a change in the internals of WLM2011 itself and not Plus!5. That being said, I'm sure some of the beta testers or developers would have a bit more reliable information on it

RE: Why Plus 5 don't suport Messenger.MyPersonalMessage? by Arcticwolfx on 02-13-2011 at 01:03 AM

quote:
Originally posted by Spunky

At the moment it is possible to read a personal message, but not to set one. I have a feeling it's to do a change in the internals of WLM2011 itself and not Plus!5. That being said, I'm sure some of the beta testers or developers would have a bit more reliable information on it

There is a command inside Messenger Plus! 5.0, namely "/persostat."
This command pops up a little window where you can set your "Personal Message" (now called Personal status) but this will also post your status to your Windows Live Profile, as well as any connected services, such as Facebook. (Like I said)

I was actually mainly talking about the way it's accessed through scripts.
RE: Why Plus 5 don't suport Messenger.MyPersonalMessage? by Spunky on 02-13-2011 at 01:15 AM

Right, now I'm confused.

OP asked about the PSM in scripting. I explained that it's currently not able to be set by a script.

You mentioned the /persostat command which creates a personalised status (Away, Busy etc). Personalised statuses can set a PSM, but it wasn't mentioned... I think if anything you'd want the /psm command - I think I get what you mean; Plus!5 can set the PSM, so why not a script? (See Below)

I think (and I can only speculate) that it's changed internally (new protocol version and so on) and either they haven't figured out how to expose it to the scripting interface, or simply due to the pressure to release, just didn't have chance


RE: Why Plus 5 don't suport Messenger.MyPersonalMessage? by Arcticwolfx on 02-13-2011 at 01:20 AM

We're on the same page, my friend.

I'm really just saying the exact same thing you are.

Then again, I don't speak British. :p


RE: Why Plus 5 don't suport Messenger.MyPersonalMessage? by totonf on 02-13-2011 at 03:03 AM

We decide to remove MyPersonalMessage from scripts because actually it changes the focus to the contact list in wlm 2011 (see the /psm command in chat wnd), which could be annoying when automatized.


RE: Why Plus 5 don't suport Messenger.MyPersonalMessage? by Arcticwolfx on 02-13-2011 at 05:53 AM

Ah, I see. Thanks for the answer. :)


RE: Why Plus 5 don't suport Messenger.MyPersonalMessage? by SmokingCookie on 02-13-2011 at 08:54 AM

@totonf: do you think it's gonna come back to scripts? Right now about everything that sets the personal message has ceased working properly.


RE: Why Plus 5 don't suport Messenger.MyPersonalMessage? by Menthix on 02-13-2011 at 10:07 AM

Couldn't you just bring it back and set a rate limit on it? So scripts don't break, but just do less actual PSM changes? I agree the way some old scripts change the PSM could be annoying, but people will stop using those automatically. There are plenty of good uses for PSM-changing scripts WLM-2011 style, push tweets to it for example.


RE: Why Plus 5 don't suport Messenger.MyPersonalMessage? by Spunky on 02-13-2011 at 10:13 AM

quote:
Originally posted by Menthix
Couldn't you just bring it back and set a rate limit on it? So scripts don't break, but just do less actual PSM changes? I agree the way some old scripts change the PSM could be annoying, but people will stop using those automatically. There are plenty of good uses for PSM-changing scripts WLM-2011 style, push tweets to it for example.

If it does change focus to the contact list though, there's going to be a lot of annoyed people that will suddenly find the huge message they were typing never got put into the chat window =/
RE: Why Plus 5 don't suport Messenger.MyPersonalMessage? by SmokingCookie on 02-13-2011 at 10:27 AM

There you got a point.. But letting it fail silently won't break the scripts completely and keeps focus to the window it belongs to.


RE: Why Plus 5 don't suport Messenger.MyPersonalMessage? by Menthix on 02-13-2011 at 10:30 AM

I see, for some reason I thought totonf meant PSMs have a different focus in WLM2011, as in PSMs are now used in another way / show up in the Windows Live social stream :p... Although that is still true too.

But yes, changing focus to another window is not good, would need to find another way without changing any focus.


The solution! by Doublevil on 03-24-2011 at 10:48 PM

I know this thread is dead since one month but I just wanted to help people who encounter the same problem.

Since I didn't found a trick in any website I tried, I just searched myself and found out how to change your personal message from a script (sample in the end) :


- If you just need to change the personal message in the ChatWndSendMessage event :
   Return the text "/psm [your message here]" and it will be updated.


- If you need to change the personal message in any other function or event :
   Send a special message to a chat window using the ChatWnd.SendMessage(string) function.
   This special message should be unique and the probability that the user types it should be negligible.
   This will trigger a ChatWndSendMessage event.

   After some tests, I found that if you just return "/psm [your message here]" from a script-sent message, it will only send "[your message here]" to your contact and never update the personal message.

   What you have to do is to catch your special message using a condition, and return "/psm /psm [your message here]" (no, that's not a typo). This is just dumb but it works.


Here is the sample code (copy in a new script to test) :

code:
var strSpecialMessage = "§¤§¤@~ or anything"; // Special message to use to send a message in any function.

function OnEvent_ChatWndSendMessage(ChatWnd, Message)
{
    if (Message == strSpecialMessage)
    {
        return "/psm /psm [your message here]";
    }
   
    else if (Message == "NOW")
    {
        ChatWnd.SendMessage(strSpecialMessage);
        return "";
    }
   
    else return Message;
}

This code will change your personal message to "[your message here]" when you send the exact message "NOW" in any chat window. But you can trigger it from any function if you change the code.

All you need is a chat window... if your script isn't related to a chat window, then you'll have to make sure there are opened chat windows, and if not, try to open one, send the message and then close it immediately.
I don't know how to close it, though. Maybe with an external library function which takes in parameter the handle of the window. Well... that's complicated.
RE: Why Plus 5 don't suport Messenger.MyPersonalMessage? by CookieRevised on 03-24-2011 at 11:52 PM

quote:
Originally posted by Doublevil
and return "/psm /psm [your message here]"
:O Doesn't that mean there is also a command parsing bug in Plus!?....

This said, your use of the OnEvent_ChatWndSendMessage to work around the PSM limitaton is interesting, but can't you just use oChatWnd.SendMessage("/psm blahblah") or oChatWnd.SendMessage("/psm /psm blahblah") in that case?
(Can't test because I don't run WLM 2011 atm)

quote:
Originally posted by Doublevil
I don't know how to close it, though.
What most people do:
Interop.Call("User32", "SendMessageW", oChatWnd.Handle, 0x10 /*WM_CLOSE*/, 0,0);

Or in a more gracefull/safer way:
Interop.Call("User32", "PostMessageW", oChatWnd.Handle, 0x0111 /*WM_COMMAND*/, 0x9C51, 0);

Or with the use of Plus! scripting functions:
oChatWnd.SendMessage("/close")

---

However, note that using the SendMessage function might not always work. You always need to check if the typing box is actually enabled and if it can recieve commands (using oChatWnd.EditChangeAllowed)

PS: instead of using a chatwindow, you might also wanna try sending the string to the word wheel edit box (the search box) in the contact list. However, that can't be done directly with pure scripting though. You probably need some Windows API for that or worse Active Accessebility.
RE: Why Plus 5 don't suport Messenger.MyPersonalMessage? by JaderCM on 03-25-2011 at 12:51 AM

Plausible solution, but it is unacceptable to lose focus of the window.

Discussion still open. :(


RE: Why Plus 5 don't suport Messenger.MyPersonalMessage? by F4ever on 04-01-2011 at 07:16 PM

Scripts like Countdowns... are not working correctly when counting down in the psm. :(


RE: Why Plus 5 don't suport Messenger.MyPersonalMessage? by Arcticwolfx on 04-01-2011 at 08:35 PM

quote:
Originally posted by F4ever
Scripts like Countdowns... are not working correctly when counting down in the psm. :(

Are you using Windows Live Messenger 2009 or 2011?