Shoutbox

[release] whos online toast - 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: [release] whos online toast (/showthread.php?tid=64544)

[release] whos online toast by Jiggs on 08-06-2006 at 01:39 PM

EDIT:
SpunkyLoveMuff made the script further down. Works great :)



I have another idea for a script :). maybe its been done, because it does sound familiar, so sorry if its out there, but i did check.
How about a script that pops up a toast at log in and tells you who is online?
Then i don't have to open wlm to see, which takes time and cpu power to open the contact window. Just to see no one i want to talk to is online. I have at most usually 3 contacts online at a time. That should fit on one toast. For those with more, maybe have 4 or so contacts per toast. So if 7 are online, 2 toasts pop up. one with 4, and one with 3.
Is it doable?
Thanks

EDIT: oh, and only the first few character would need to be shown of a contacts name. such that one contact takes up one line at most.

........Online contacts:.......
...Stephen........................
...Person with really long.
...Less long name............
...Lalala i have a name....

^that kinda thing.


RE: [request] whos online toast by benjyrama on 08-06-2006 at 01:56 PM

that would make a lot of toasts for sum ppl


RE: [request] whos online toast by Lukeyy19 on 08-06-2006 at 02:16 PM

yes well it is their own choice to use, if they dont want all the toasts then they dont have to use the script do they? i like the idea.


RE: [request] whos online toast by matty on 08-06-2006 at 02:17 PM

Why not use floating contacts?

code:
function OnEvent_SigninReady(sEmail){
    for(var enum = new Enumerator(Messenger.MyContacts) ; !enum.atEnd(); enum.moveNext()){
        var sContact = enum.item();
        if (sContact.Status == 3){ //Will display only contacts online
            MsgPlus.DisplayToast('', sContact.Email, '', ToastCallback, sContact.Email);
        }
    }
}

function ToastCallback(sCallBack){
    Messenger.OpenChat(sCallBack);
}

No idea why you want to do this :(
RE: [request] whos online toast by Jimbo on 08-06-2006 at 03:19 PM

Someone made this for me but i think it may be the sort of thing u want

The script shows how many people are online and how many people are offline all in one toast when you sign in.

It also redisplays this toast every 10mins(variable) with updated information of how many of your contacts are signed in and how many are offline.

I did not make this script so do not report bugs to me


RE: [request] whos online toast by Spunky on 08-06-2006 at 03:24 PM

I made this script so that I could see all online contacts... It's not a toast, but displays all online users in a combo box control (using the /cl command)  You can the press ok to open a chat window with that person

You can also type /look4 email@domain.com to quickly see if a particular person is online (if you know their email of course).


RE: [request] whos online toast by Jiggs on 08-06-2006 at 05:35 PM

not really what i was thinking.
what i meant was the actual names of contacts in a toast at log in. my wlm auto logs in when pc is started up. then, if i want to see if "friend1" is online, who i want to talk to about something, i have to open wlm to see if friend1 is online. say it turns out only friend3 and friend7 are online, then i opened wlm contact window(which takes a few seconds to load) for nothing. wasting my time, and slowing my pc down while im loading firefox.
if on the other hand i had this script, a toast would pop up at log in looking like this:
........Online contacts:.......
........friend3.....................
........friend7.....................

so i would know that friend1 is not online. later, when he comes online i am of course notified. so all i need is to know who is online at log in/sign in. this doesn't sound too difficult to do if one knows how to script :)? maybe its not as easy as it sounds though.
hope someone might want to have a go though.
thanks
and as Lukeyy19 says, if you have LOTS of contacts then don't use the script. I want it for my account in which i only have my RL friends who use wlm. And there are usually at most 3 of those online at a time. If on a rare occasion say 7 come online, ive described what could be done there. 2 toasts instead of 1


RE: [request] whos online toast by Spunky on 08-07-2006 at 03:57 PM

Well, each toast can have 4 lines, so if you put the title as "Online Contacts", you should be able to iterate through the online contacts and display 4 people in each box. The only problem is, you'd need to find out the total number of online contacts and then make sure there are enough toasts for each user...

I've got an idea so I'm gonna go away and try it.

*goes away and tries it*

UPDATE:

code:
function OnEvent_SigninReady(){
Debug.DebuggingWindowVisible = true;
var myArray = new Array
var Contacts = Messenger.MyContacts;
var e = new Enumerator(Contacts);
for(; !e.atEnd(); e.moveNext()){
var Contact = e.item();
if(Contact.Status!=1){
newItem = myArray.length;
myArray[newItem] = MsgPlus.RemoveFormatCodes(Contact.Name);
}
}

for(var i=0;i<350;i++){
if(myArray[i]==undefined){
myArray[i]="";
}
if(myArray[i].length>=25){
myArray[i] = (myArray[i].substr(0,25)+"...");
}
}
MsgPlus.DisplayToast("Online Contacts"," "+myArray[0]+"\n "+myArray[1]+"\n "+myArray[2]+"\n "+myArray[3]);
if(myArray[4]!=""){
MsgPlus.DisplayToast("Online Contacts"," "+myArray[4]+"\n "+myArray[5]+"\n "+myArray[6]+"\n "+myArray[7]);
}
if(myArray[8]!=""){
MsgPlus.DisplayToast("Online Contacts"," "+myArray[8]+"\n "+myArray[9]+"\n "+myArray[10]+"\n "+myArray[11]);
}
if(myArray[12]!=""){
MsgPlus.DisplayToast("Online Contacts"," "+myArray[12]+"\n "+myArray[13]+"\n "+myArray[14]+"\n "+myArray[15]);
}
if(myArray[16]!=""){
MsgPlus.DisplayToast("Online Contacts"," "+myArray[16]+"\n "+myArray[17]+"\n "+myArray[18]+"\n "+myArray[19]);
}
}



Displays upto 20 online contacts (I can neaten up the if statements into a function to add even more people :p) and currently checks 350 contacts. I didnt think too many people would have more than that. Can't get the text to change green for some reason... Maybe someone else could put that in?

To be honest, it looks quite a short simple script, but it still took me a while because this is my first time using arrays in JScript :|

EDIT: Just updated code as it was showing Email not Name and I've now truncated the Name after 25 characters
RE: [request] whos online toast by Jiggs on 08-07-2006 at 05:40 PM

gonna try it now :).
thanks a lot. thought no one was going to try it. i see a use for it every time i switch on my pc. i hate having to open wlm just to see whos online :)

EDIT:
Working just like i had imagined it :). Thanks a lot. You should put it in the database, no?
With a good description of what it does i think others may want it too. I find it very handy to be told who's online without having to open wlm window.
Would be great if the name of the contact you want to talk to could be clicked. Although i don't think a toast can have individual contact links within them?

Anyways, thanks a lot :), works great


RE: [request] whos online toast by Intosia on 08-07-2006 at 05:44 PM

Why not make a new window with a listbox in it and put all the online ppl in there? Loads faster when the wlm main window...


RE: [request] whos online toast by Spunky on 08-07-2006 at 05:46 PM

Intosia, I have already made this...

Download Attachment


RE: [request] whos online toast by Jiggs on 08-07-2006 at 05:48 PM

a new window? one that is always open? i only want to know who's already online at sign in. after than i get told who else joins my online contacts and who goes offline. all i wanted was a quick toast to let me know so and so are online. and SpunkyLoveMuffs script is doing a good job of that :)


RE: [request] whos online toast by Intosia on 08-07-2006 at 05:49 PM

aha, no worries, just a idea. The toasts are stupid in my opinion.... way to much popups :D


RE: [request] whos online toast by Jiggs on 08-07-2006 at 05:51 PM

that's cos you probably have so many online contacts :). i only usually have 3 at a time online on the account i want to use this on. and toasts are very inobtrusive. for me at least. maybe cos of my high resolution. but they don't get in the way, whereas a window in the middle of my screen would. and toasts can be right clicked away easily.

i edited my earlier post, SpunkyLoveMuff, by the way. Im guessing being able to open a chat by clicking one online contacts name isnt possible, right?


RE: [request] whos online toast by Spunky on 08-07-2006 at 05:52 PM

quote:
Originally posted by Jiggs
SpunkyLoveMuffs script is doing a good job of that (Smilie)

So I'm guessing thats what you wanted then? hope it works ok :D

EDIT: It is possible, but it'd open all 4 people because I wouldn't know which contact to open... I could try and make it so that when you type either 1,2,3,4 on the numpad when the toast is visible that it opens the corresponding window :s
RE: [request] whos online toast by Jiggs on 08-07-2006 at 05:55 PM

its great, yes :). i sang my praise in an edit of my earlier post. you might have missed it :). thanks a lot. is exactly what i wanted. im surprised how many think its a bad idea. i love being told who's online while msn signs in and im doing something else, like opening firefox or so. very handy imho


RE: [request] whos online toast by Spunky on 08-07-2006 at 05:56 PM

It's a good idea for a script... I've kept it installed on my PC :D


RE: RE: [request] whos online toast by Jiggs on 08-07-2006 at 05:57 PM

quote:
EDIT: It is possible, but it'd open all 4 people because I wouldn't know which contact to open... I could try and make it so that when you type either 1,2,3,4 on the numpad when the toast is visible that it opens the corresponding window :s


hmm. not bad. maybe even something like ctrl+alt+1. because i have a g15 keyboard, which is a keyboard with macro keys. so i could assign any keys to one of the keys to let me open a convo. but even using 1-4 on the numpad while the little toast is visible is good too. because the numpad keys would only be taken for the few seconds of the toast.

but if its a lot of trouble doing it, its not that important :).

EDIT: i had a little idea. is it possible that when the toast is clicked, a little window pops up in which you could chose who to start a chat with?

so i click the toast, and a small window with the 4 names pops up on which i can click one of the contacts and launch a window. So it would be click once, move mouse, click again. and chat is open

not sure which is better, numpad keys or that. :)
RE: [request] whos online toast by Jiggs on 08-08-2006 at 01:55 AM

is it possible to have it not pop up if noone is online? or have the word "none". just blank isnt so pretty :)


RE: [release] whos online toast by Spunky on 08-08-2006 at 05:15 PM

I'll edit the script so that if no one is online it says, rather than leaving it blank. As for the window popping and you selecting the contact, would you want all online contacts in one list, or just the four (or less) people named on that particular toast? If just the four on the toast, I'll need to make it so that there can be multiple instances of the same window open. It wouldn't imagine it being that hard to do. I just wanna be specific about it as I'll probably submit the next version to the script database


RE: [release] whos online toast by Jiggs on 08-08-2006 at 10:20 PM

well i don't really mind. originally i was thinking only the four from the toast i click on. but all would be no problem.
But i also thought, maybe just have the wlm contact window open if i click the toast. this way i can pick the contact or 2 that i want. and seems easier than making your own little box of contacts.
A little selection window of your own would be cooler tho :).
but then only one contact could be chosen.
or a selection box that stays open til u close it so u can open convos with all contacts you want. similar to your other script. problem with that is all the clicks.
id prefer: click toast, click contact i want. finished.
but problem is if i want 2 online contacts: click toast, click contact i want, click other contact i want, close selection window.
id prefer not have to close window. which doesn't really work if the ability to open more than one contact is needed. so not sure.
hope I'm not too confusing in this message
thanks :)