Shoutbox

USay 1.1 - 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: USay 1.1 (/showthread.php?tid=84344)

USay 1.1 by michaelbadichi on 06-15-2008 at 06:38 PM

Hiho

The new version also support group chat (better than the Javawag extention)
And SUPPORT FONT IMMITATION!!! (I saw many people requested this feature in the forums)

Until MenthiX updates the script, you can have it downloaded from here

The new version is now attached to the post

Enjoy :)


RE: USay 1.1 by Basilis on 06-15-2008 at 07:18 PM

Great news! Can you attach it here?


RE: USay 1.1 by MrT on 06-15-2008 at 08:52 PM

i haven't got eMule.why don't you add here?


RE: USay 1.1 by CookieRevised on 06-15-2008 at 11:35 PM

You can update the script in the scripts database in the same way as how you submitted it the first time.

Read the instructions.

http://www.msgpluslive.net/scripts/submit


RE: USay 1.1 by mynetx on 06-16-2008 at 06:59 AM

Too bad, my eMule can't find it.
You may click the small [Image: edit.gif] button at the right bottom of your posting above, and then you'll see a section like this:

[Image: t7d7c4.png]

Add your *.plsc file there, and click the "Update Post" button. :)


RE: USay 1.1 by Jimbo on 06-16-2008 at 07:05 AM

quote:
Originally posted by mynetx
Too bad, my eMule can't find it.

Same, and im still wondering how he managed to imitate the font too.
RE: USay 1.1 by mynetx on 06-16-2008 at 09:02 AM

quote:
Originally posted by Jimbo
im still wondering how he managed to imitate the font too
That's actually why I wanted to have a look at his new code ^^
RE: USay 1.1 by cokacola on 06-16-2008 at 01:58 PM

yea, I like the idea, but it doesn't work..
i have it installed, and i made shore with someone else, who done it same, and has same versions of MSN and Messenger Plus live as me, and when i go /usay hello
i say it, it doesn't do anything, i have tried a calculator script, it work fine...why won't usay, or for that matter, any script that says stuff as other people, i had a laptop once, it worked fine,  and oneday it started this, and now i got this new PC and it still does it, could it be my account? im very confused(if it matters, furbanj@gmail.com is my MSN account...)
any help is very much appericated.


RE: USay 1.1 by Basilis on 06-16-2008 at 02:13 PM

No, it cannot be your account. Did you download it from the official database or for eMule?


RE: USay 1.1 by michaelbadichi on 06-16-2008 at 06:07 PM

1. I did send the email as explained in the page, but it was ignored, hell, i even tried to ask what's going on, but nobody answered.

2. Yeah, the machine i am running eMule on is not stable, the CPU overheats and windows restarts several times a day, thats why i asked whether someone can host this file, anyway, i wasnt aware i can attach files here, and now it is attached :)

3. You wont be able to understand easily how how achieved this feature unless you dissabsemble the supplied DLL, but in general, I hook into Messenger's send/recv socket calls and keep a track of user's font type info in as messages arrive, when messenger sends the message i type with usay, my hook replaces the type setting with the user's type setting. So, there are few limitations:
  a. i can figure out the font info only after i receive at least 1 message from a user
  b. i wont see the contact font in MY window (but he will see it) - since i hook into the socket call rather than into the SendMessage call (when you press enter)
  c. very long messages (over about 1600 chars - as the MSN protocol limits) might have some problems if the font type string the immitated person have is larger than the font type string the user using usay have...i could have split the message to two if i wanted, but i was too lazy, who writes such long messages anyway?

Cheers
Michael


RE: USay 1.1 by CookieRevised on 06-16-2008 at 06:18 PM

quote:
Originally posted by michaelbadichi
1. I did send the email as explained in the page, but it was ignored, hell, i even tried to ask what's going on, but nobody answered.
How do you know you were ignored?

Be patient, everybody on these forums and everybody maintaining any database related to Plus! does it voluntary. We all have real jobs, and real lifes, etc. So everything is done in our spare time. Also consider that your email might have been lost in the massive amount of spam which is send these days. And know that the script database is not updated on a day-to-day basis, but that it can take a week.

If it takes too long (as in weeks) send an email again.

Even if your script is not allowed you should recieve a response at least.

-------------

PS1: you don't need to zip the script packet. A script packet file is actually already a zip file (with just a renamed extension).

PS2: your post below should be emailed as described in the submit page on the script database page. Posting that info on the forum wont help much unless Menthix happens to read the thread.
RE: USay 1.1 by michaelbadichi on 06-16-2008 at 06:18 PM

This is the original description I used for USay 1.1: (this is actually a cut-and-paste from the original mail i sent to 'scripts@msgpluslive.net'


Title:

            USay 1.1



Short Description:

            This script allows you to impersonate the contact(s) you are talking with



Full Description:



This script allows you to impersonate the contact(s) you are talking with.

When you say /usay *your text* you will say something under your contacts name.

How to use this script:
- Make sure you have Live Messenger and Messenger Plus! Live installed.
- Download the script, open it, accept the warning and press Import.
- Open a conversation window.
- Type "/usay Hi" (without quotes) to imitate the contact saying "Hi".

- Type “/usay /help” for additional information (for example: group chat support)



- Of course you can say whatever you want



- This version also imitates the user font (at the impersonated user window)

           

Category:

                        Mockers and content stealing

           

            Creator name:

                        Michael Badichi


RE: USay 1.1 by Basilis on 06-16-2008 at 06:22 PM

Can you please attach it in a .plsc format?


RE: RE: USay 1.1 by michaelbadichi on 06-16-2008 at 06:24 PM

quote:
Originally posted by CookieRevised
How do you know you were ignored?

Be patient, everybody on these forums and everybody maintaining any database related to Plus! does it voluntary. We all have real jobs, and real lifes, etc. So everything is done in our spare time. Also consider that your email might have been lost in the massive amount of spam which is send these days. And know that the script database is not updated on a day-to-day basis, but that it can take a week.

If it takes too long (as in weeks) send an email again.

Even if your script is not allowed you should recieve a response at least.

I sent it 5/25/2008 and it wasnt updated yet, i also had problem with my account activation (so i wasnt able to post messages in the forums) and no matter how many mails i sent, i never got answered, and the problem wasnt solved (this why i kind of banned this script for almost a year.
RE: RE: USay 1.1 by michaelbadichi on 06-16-2008 at 06:27 PM

quote:
Originally posted by Basilis
Can you please attach it in a .plsc format?

There you go :)
RE: USay 1.1 by Menthix on 06-16-2008 at 06:31 PM

quote:
Originally posted by michaelbadichi
I sent it 5/25/2008 and it wasnt updated yet
I'm the person responsible for updating the scripts on the site. I replied to your mail on 5/29/2008. I found a little probem in the script, so the new version wasn't added until that's fixed. See the mail for details.

Re-sent the mail in case you lost it.
RE: RE: USay 1.1 by michaelbadichi on 06-16-2008 at 06:33 PM

quote:
Originally posted by cokacola
yea, I like the idea, but it doesn't work..
i have it installed, and i made shore with someone else, who done it same, and has same versions of MSN and Messenger Plus live as me, and when i go /usay hello
i say it, it doesn't do anything, i have tried a calculator script, it work fine...why won't usay, or for that matter, any script that says stuff as other people, i had a laptop once, it worked fine,  and oneday it started this, and now i got this new PC and it still does it, could it be my account? im very confused(if it matters, furbanj@gmail.com is my MSN account...)
any help is very much appericated.

on low bandwith connections you might need to increase the delay in the script ( usay 1.1 uses 1000 ms delay instead of 500 ms delay i used in 1.0 ) - this is the value in CHANGE_NAME_LATENCY

RE: USay 1.1 by CookieRevised on 06-16-2008 at 06:40 PM

PS: code loop blocks like

code:
var i;
i = new Enumerator( Contacts );
while( !i.atEnd() ) {
    var Contact = i.item();
    if( Contact.Email == Arg ) {
        return Contact.Email;
    }
    i.moveNext();
}
can be made much shorter like so:
code:
for (var i = new Enumerator(Contacts); !i.atEnd(); i.moveNext()) {
    var Contact = i.item();
    if (Contact.Email === Arg) return Contact.Email;
}
or
code:
var i = new Enumerator(Contacts);
for (; !i.atEnd(); i.moveNext()) {
    var Contact = i.item();
    if (Contact.Email === Arg) return Contact.Email;
}
in case you need to go thru the enumeration a couple of times like in the GetContactEmail procedure.

------------

And to prevent possible screwups when a user signs out and signs back in with another Windows Live Id: If you use timers, always make sure the ID of the timer is unique to the user's email.

This means that a hardcoded name (like 'restorename') can conflict with the previous running timer from the user who was signed in before. So, better make that name something like 'restorename' + Messenger.MyEmail

Or kill all timers as soon as the user signs out.


;)
RE: RE: USay 1.1 by michaelbadichi on 06-16-2008 at 06:42 PM

quote:
Originally posted by MenthiX
quote:
Originally posted by michaelbadichi
I sent it 5/25/2008 and it wasnt updated yet
I'm the person responsible for updating the scripts on the site. I replied to your mail on 5/29/2008. I found a little probem in the script, so the new version wasn't added until that's fixed. See the mail for details.

Re-sent the mail in case you lost it.
that's strange, i have it installed on 3 PCs and it works fine (1 XP, 1 Vista at home, 1 XP at work)
i sent it again just-in-case i  ****ed up last time i emailed you

RE: RE: USay 1.1 by michaelbadichi on 06-16-2008 at 06:45 PM

quote:
Originally posted by CookieRevised
code...

hehe, well my C++ code looks much much clearer, anyway the code has the same effect :)

regarding timers and timer-id, i didnt assume users will /usay so many times in so short periods... i might give it another push if i will see more than 5 users complain about it :)
I didnt want to spend too much time in it in the 1st place and what drove me into adding group chat and font support in the 1st place was a cutie that spend the time and found me on facebook to thank me for the script :)

RE: USay 1.1 by CookieRevised on 06-16-2008 at 06:58 PM

code:
var i = new Enumerator(Contacts);
for (; !i.atEnd(); i.moveNext()) {
    var Contact = i.item();
    if (Contact.Email === Arg) return Contact.Email;
}
is way more readable than your use of a while loop but ok...

---------------------

Regarding timers.

The problem is not group chats... but a user who might sign out (before his/her name could be (re)set) and signing in under another Windows Live Id.

Reading your comments in the script I think I know where your confusing comes from though. The definition of a "user" is he/she who is running this script, thus the person who uses USay. The people you talk to aren't "users", they are the "contacts".

---------------------

Also, some detail, but still to be correct (especially considering that confusion can very easly occur if you don't name the things by their proper name, see above): it is "Windows Live Messenger", not "Messenger Live".
refering to some strings in the DLL now

;)
RE: USay 1.1 by michaelbadichi on 06-16-2008 at 07:06 PM

isnt there a foreach function (like in stl)?
anyway, readability is a matter of opinion and coding style
sometimes you better split it to several statements, especially, if iteration takes more than 1 operation. you can also add comments when you split the lines (i.e: readable comments, on a per line basis with //, rather than inside the line with /* */)

but really, you are really diving into low-details, why cant you just enjoy this script as it is?
as i started programming at the age of 9, (am 33 now), beleive me, i know all these tricks, and many more :)

anyway, your suggestions are welcomed for v1.2 when (if) i release it.


RE: USay 1.1 by CookieRevised on 06-16-2008 at 07:22 PM

quote:
Originally posted by michaelbadichi
isnt there a foreach function (like in stl)?
That is exactly what
   for (; !i.atEnd(); i.moveNext()) {}
is for.

quote:
Originally posted by michaelbadichi
anyway, readability is a matter of opinion and coding style sometimes you better split it to several statements, especially, if iteration takes more than 1 operation. you can also add comments when you split the lines (i.e: readable comments, on a per line basis with //, rather than inside the line with /* */)
I wasn't talking about splitting lines or comments. As a matter of fact, you can do all that just the same with for() too.

And in case you meant comments about !i.atEnd() or i.moveNext(), you didn't added comments in the script for them either. If you did, I wouldn't have suggested what I suggested.

anyways...


quote:
Originally posted by michaelbadichi
but really, you are really diving into low-details, why cant you just enjoy this script as it is?
I never said I didn't enjoyed it, nor claimed it didn't work (except for that timer issue) or whatever.

I was just checking out the script to know exactly how you grabbed the font details and just wanted to give some (JScript/Plus! scripting specific) ideas/tips along the way since I was looking thru the code anyways.

---------------------

Something off-topic now:

Since you made a packet sniffer for a specific protocol message for this script, you might wanna consider changing it a bit and releasing it on its own so that people might use it as a real protocol sniffer.

You obviously already have all the needed work done, so not much needs to be changed and/or added to make something like that. Such a sniffer is asked for a lot by scripters and the only alternative scripters now have is the Xniff ActiveX. But Xniff has some serious problems and its creator has dissapeared from Earth... so...
RE: USay 1.1 by michaelbadichi on 06-16-2008 at 07:41 PM

i might release the source code in a few days under GIT, i dont use external libraries except zlib.

many people seems to want the DIB library I made and th PE library my brother made (with the neccesary addition to extract import address)

if you cant wait you can use other libraries like detours (i used it in my QuickMX project at the time, only i added some features to make it work under Win9x and support DLL unloading, this project came 8th on lycos search by the way)

i dont really trust people to credit me for the work i did when using my sources, but i guess thats life :)

PS: how are your C++ & MFC skills?


RE: USay 1.1 by CookieRevised on 06-16-2008 at 09:56 PM

quote:
Originally posted by michaelbadichi
PS: how are your C++ & MFC skills?
extremely lousy :D

But there are many people here who are very skilled in it...


As for crediting your work: that's always a kind of chance you have to take with open-source. On the other hand, if you make it closed source, and thus provide the library which enables scripters to implement a sniffer in their scripts (just like Xniff), it would be very easly reconizeable that this library is used. And if they dare to not credit you in their script, there will always be volunteers to kick those people in the behind if you know what I mean ;)

The Plus! scripting community is rather small compared to the billions of programmers on the planet and very concentrated on these forums (obviously). So, scripts which use libraries for others without crediting or something will be reconized rather quickly, especially if it uses something like a sniffer.
RE: USay 1.1 by CyberMew on 07-02-2008 at 05:30 PM

i wonder why you did not support font color as well...


RE: USay 1.1 by mshaerqtr on 07-02-2008 at 08:00 PM

Thank you

Has been successfully tested


RE: USay 1.1 by MrT on 07-06-2008 at 10:03 AM

i have an error :S

Çağrılan fonksiyon: OnEvent_Initialize
INIT
Interop.Call "C:\Program Files\Messenger Plus! Live\Scripts\USay\USay.dll"yi yükleyemedi
Hata: bilinmiyor (kod: -2147467259)
      Dosya: USay.js. Satır: 36.
OnEvent_Initialize fonksiyonu bir hata getirdi. Kod: -2147352567


RE: USay 1.1 by michaelbadichi on 07-16-2008 at 04:20 PM

CyberNew, i did support font color
however it is on the friend's window, not yours


RE: USay 1.1 by CyberMew on 08-01-2008 at 06:56 PM

sorry that i took a while to reply. i am actually referring to the color of the font, not just the fonttype itself


RE: USay 1.1 by Basilis on 08-01-2008 at 08:51 PM

I asked a friend of mine while I was using the script and he told me that the font color was the same as his. So the script supports font color as michaelbadichi said above. :)


RE: USay 1.1 by CyberMew on 08-02-2008 at 07:42 AM

hmm the font color AND font type doesn't work for me though. i dont have any other plugins installed but i have stuffplug installed but i dont think that affects it.


RE: USay 1.1 by riahc4 on 08-19-2008 at 02:08 PM

Can you disable the popup window on startup?