WoW Addon for Windows Live Messenger?

Jul 25, 2008 at 11:03 AM
Hi,

Getting the idea from the RSS reader example in the launch video for WoW Addon Studio, I'd like to be able to an Addon for WoW that allows me to talk on Windows Live Messenger from WoW.

Nothing fancy, just text based chat, initially anyway.

Initial idea was to have a Windows Live addin or similar that picks up messages from Messenger and relays them to the WoW AddOn.

Does anyone know if this is possible or if there is a better way of doing it?

It would be ideal if there was just some Web Service that I could use to log on to Windows Live from the WoW AddOn.

I should be clear though that while I have done VB6, VB.net, c#.net, and a number of others, this is my first foray into Lua and WoW addons....

Thanks for any advice/suggestions in advance.

Regards
Coordinator
Jul 25, 2008 at 9:42 PM
Hey Daniel,

I think you'll face a couple of challenges. 

1. No Web service for Messenger
The first is that Window Live Messenger doesn't provide you an API to send/receive data. The only extensibility they provide is by using a JavaScript <iframe> or a simple presence API. Full details at: http://dev.live.com/messenger/ 

2. No way to sync data in real-time
The other challenge is that there is no way to sync data in real-time without violating the Terms of Service. The reason the RSS Reader example works is that it's caching RSS feeds and it doesn't need to be in real-time. The syncing of new feeds or new data only happens with Warcraft when you reload your UI (/reloadUI). Having to reload the UI for each IM would be a rather painful process.

I wish I could be more help, but those are the restrictions. Perhaps an email client would work better since that could be a local cache and it doesn't have to be in real-time.

If you do build it, let us know :)

Jul 26, 2008 at 10:25 AM
I've done a bit of reading up and apparently a WoW AddOn can access any files that existed before the AddOn started but not new files, however the files can change while the AddOn is running.

Does anyone know of an easy way to asynchronously monitor a file and fire an event when it changes?

Regards

 

Jul 26, 2008 at 10:38 AM
Actually - I give up, just realised there would be no way to get new messages in to messenger!

Why have MS not thought about this sort of thing for Messenger they clearly are WoW fans!!!

Cheers
Coordinator
Jul 28, 2008 at 5:33 PM
I've done a bit of reading up and apparently a WoW AddOn can access any files that existed before the AddOn started but not new files, however the files can change while the
AddOn is running.
One quick clarification here is that while WoW can access pre-existing files, it won't load the newly changed file until you reload the UI. Changes are not instantaneous :(
Aug 4, 2008 at 12:17 AM
actually danielfe that is not entirely correct.

The WoW client can only read files that existed at launch.  This is correct.

However!  You can, change lod addons and when they load the new changes be in effect.

ie:

You start wow with addons:
AddonA, AddonB, AddonC, AddonD.

AddonA and AddonB are NOT load on demand addons.  AddonC and AddonD are Load-On-Demand.

Once you login your character, AddonA and AddonB are loaded.  AddonC and AddonD are NOT loaded.
You can change anything in AddonC and AddonD while ingame, and when you run /script LoadAddOn("AddonC")
it will, show all new changes too it just like you restarted the game.

So, in theory, you could do this by:
Making 500 addons, all LoD.  When a new IM is received, it changes the first addon that hasn't loaded, adds the text too it, then loads it.

The problem though, is this.  The client has no way of knowing when you receive messages.  So you would have to run a script command to load the addons in order and such.

Something like
/script for i=1, 500 do if not IsAddOnLoaded("AddOn"..i) then LoadAddOn("AddOn"..i); return; end

then run it everytime you think you get a message.  Now, there is no way for you to send messages, without writing a program that will watch the WoW Saved Vars files, which, I believe, can be forced to save in real time, but I am not entirely sure on that.

Doing something like this, would work, yes.  Though it may be against TOS or the EULA, and I do not recommend it.  But any changes you make to an LoD addon, before the addon is loaded via LoadAddOn API, will show in game.

Aug 15, 2008 at 11:42 AM
http://einaros.blogspot.com/2006/09/yaahhr-talk-like-pirate-msn-addin.html

I It should be possible, from my perspecitive, although, not a very pretty solution :)