Skip to content
MSN

Vincula NGen2.+

A TG007 community discussion started by Warrior124.

Discussion 9 posts
Page 1 of 1
Open
Topic #3787 · 9 published posts · 935 views

Vincula NGen2 is just about ready.

I've made it to where it won't need the msnchatx.ocx to connect thanks to the tutorial that The Gate Keeper gave me.

 

Once your passport is updated, and you select the passport to use it will search for all the groups that your passport is a member of, and will automatically display it in the "Groups" tab.

 

I've taken out the edit box, and "add" button from the groups tab, because you now no longer have to manually add a group name. You still click on the group you want to join, and wait for a second to get your userrole. Then, just click the "Create, or Join" button to join the group room.

 

There are more I'm still working on for now. So, if anyone has any suggestions please let me know.

where can i get that tut ? lol

I've made a few mods that might be helpful to others also.

 

1) In the nicklist right-click menu I made the nicks displays as decoded, since the un-decoded one's appear as just mush. There are a bunch of lines like

View $1 $+ 's Profile { prop $2 $1 PUID }

which I changed to

View $msn.decode($1) $+ 's Profile { prop $2 $1 PUID }

 

2) I prefer to see profiles in a separate browser window so in the raw 818 handling, right after the echo line, I added

   ; show profile in separate browser
   %msnc.stoppropend = $true
   /run "C:\Program Files\Mozilla Firefox\firefox.exe" chat.msn.com/profile.msnw?epuid= $+ $4-
   haltdef
   halt
  ;

Of course my browser name is hard-coded, but this could be a setup option if you think it's worth adding.

 

3) In the cOld stalk3r room search I made the script handle spaces in the room name, where originally you had to edit the spaces into \b by hand. I changed the sockwrite on line 3772 from

.sockwrite -tn csu.s.* WHO $did(csu,2).text

to

.sockwrite -tn csu.s.* WHO $replace($did(csu,2).text, $chr(32), \b)

 

4) Also in cOld stalk3r I made it show the decoded nicks. Lines 3962 and 3970 start with

did -a csu 1 $8

and I changed them to

did -a csu 1 $msn.decode($8)

 

Thanks again for making this script available.

 

user posted image

 

w00t!!

bfush.PNG

vex tested it for me cause i got this error warrior

 

its resetiing lookups every time you try update yet its not getting the lookups

its also trying to update b4 its made the connection

 

also says the info isnt correct , yet it is

i tried 3 diff passports and it does same with all those

 

user posted image

Edited Jun 14, 2005 10:24 AM by OZZY_10â„¢

My code does NOT have bugs. It just develops random features.

Yes, I had err0r to test it too, and he was getting some problems as well. I also discovered that it started using another msnchatx.ocx that was in another completely different directory. So, I spent the better part of this morning deleting all msnchatx.ocx's, and found I started having the same problem. I also discovered that it reseted the connection everytime I tried connecting to a room. Then, I discovered something. I had this code...

 

sockwrite -tn msn.server.999 $1 GateKeeper $3 $mh.calc($4 $+ $sock($sockname).ip)

 

However, it needed to be this...

 

sockwrite -tn msn.server.999 $1 GateKeeperPassport $3 $mh.calc($4 $+ $sock($sockname).ip)

 

Now, it starts just fine, but hangs when it tries to connect. At least it doesn't reset the connection, now. I get this when it tries to connect...

 

* UD1/Ownerkey: 382760406
* Current Passport: Test
* MSN Groups Server Connection Established
* A Subscription Account Has Been Detected.
* You Have Access To MSN Subscription Rooms.
* Group Rooms are Also Available To You If You Are A Member.
* Thank You For Using, Vincula NGen.
* Main MSN Server Connection Established
* Full Passport info for "Test" is now 4updated (5.641 seconds)
* %#TestRoom2 found, joining... (Lookup time: 0.281 seconds)
-
* Connecting to 127.0.0.1 (25474)

 

And then that is all that I get. Here are the codes I have added to NGen. Maybe someone can tell me what is going on, I hope, lol.

 

;New Aliases.

alias mh.calc {
 if (*:GKSSP* iswm $1-) {
   var %x, %re = .*:GKSSP\\0.*\\0\\0.*\\0\\0(.*), %y = $regsub($1-,%re,,%x)
   tokenize 32 $regml(1)
 }
 var %m
 bset &h1 1 101 100 112 123 125 101 124 119 120 114 100 115 101 125 125 117 $str(54 $+ $chr(32),48) $mh.tobin($1-)
 bset &h2 1 15 14 26 17 23 15 22 29 18 24 14 25 15 23 23 31 $str(92 $+ $chr(32),48) $mh.hex2bin($md5(&h1,1))
 return $+(:GKSSP\0\0\0,$chr(2),\0\0\0,$chr(3),\0\0\0,$mh.unhex($md5(&h2,1)))
}

alias mh.tobin {
 var %l 1, %r
 while (%l <= $len($1)) {
   if ($mid($1,%l,1) == \) {
     inc %l
     if ($mid($1,%l,1) == 0) %r = %r 0
     elseif ($mid($1,%l,1) == t) %r = %r 9
     elseif ($mid($1,%l,1) == n) %r = %r 10
     elseif ($mid($1,%l,1) == r) %r = %r 13
     elseif ($mid($1,%l,1) == b) %r = %r 32
     elseif ($mid($1,%l,1) == c) %r = %r 44
     elseif ($mid($1,%l,1) == \) %r = %r 92
   }
   else %r = %r $asc($mid($1,%l,1))
   inc %l
 }
 return %r
}

alias mh.hex2bin {
 var %l 1, %r

 while (%l <= $len($1)) {
   %r = %r $base($mid($1,%l,2),16,10)
   inc %l 2
 }
 return %r
}

alias mh.unhex {
 var %l 1, %r, %x $remove($1-,$chr(32))

 while (%l <= $len(%x)) {
   if ($mid(%x,%l,2) == 00) %r = %r $+ \0
   elseif ($mid(%x,%l,2) == 0A) %r = %r $+ \n
   elseif ($mid(%x,%l,2) == 0D) %r = %r $+ \r
   elseif ($mid(%x,%l,2) == 2C) %r = %r $+ \c
   elseif ($mid(%x,%l,2) == 09) %r = %r $+ \t
   elseif ($mid(%x,%l,2) == 5C) %r = %r $+ \\
   elseif ($mid(%x,%l,2) == 20) %r = %r $+ \b
   else %r = %r $+ $chr($base($mid(%x,%l,2),16,10))
   inc %l 2
 }
 return %r
}

;Sockopen
on *:SOCKOPEN:msn.look.*: {
 sockwrite -tn $sockname IRCVERS IRC8 MSN-OCX!9.02.0310.2401 $crlf AUTH GateKeeperPassport I $+(:GKSSP\0\0\0,$chr(3),\0\0\0,$chr(1),\0\0\0)
 if ($sockerr > 0) { msn.sockerr $sockname open | return }
 if ($right($sockname,4) == main) msn.donav @Vinculamain $sock(msn.client.lcmain).port 207.68.167.253
 if ($right($sockname,4) == comm) msn.donav @Vinculacomm $sock(msn.client.lccomm).port 207.68.167.251
}

;This is in the on *:SOCKREAD:msn.look.*: {
   if ($1 = AUTH) {
     var %sck = $iif($right($sockname,4) = comm,msn.client.lmcomm,msn.client.lmmain)
     if (:GKSSP* iswm $4) sockwrite -n $sockname $1-3 $mh.calc($4 $+ $sock($sockname).ip) $5-
     elseif ($4 = :OK) sockwrite -n $sockname $1-3 $+(:,$msn.authkey,$chr(10),USER * * "*" :nick,$chr(10),$iif(%msnpp.subscriberinfo,PROP $ SUBSCRIBERINFO : $+ %msnpp.subscriberinfo))
     elseif ($3 = *) {
       sockwrite -n $sockname NICK nick
       if ($sockname == msn.look.main) {
         .timermsn.look.main 0 20 sockwrite -tn msn.look.main VERSION
         .timer.get.ud 1 4 return $noaccount
         if ($sock(msn.server.*,0) == 0) scid $activecid echo $color(info2) -at * Main MSN Server Connection Established
         if (!$sock(msn.look.comm)) msn.lookcon -x
       }
       else {
         .timermsn.look.comm 0 20 sockwrite -tn msn.look.comm VERSION
         if ($sock(msn.server.*,0) == 0) scid $activecid echo $color(info2) -at * MSN Groups Server Connection Established
         if (!$sock(msn.look.main)) msn.lookcon -x
       }
     }
     elseif ($sock(%sck).status = active) { sockwrite -n %sck $msn.decode($1-) }
   }

;IRCVERS
on *:SOCKREAD:msn.client.rm: {
 if ($sockerr > 0) { msn.sockerr $sockname read | return }
 var %read
 sockread %read
 while ($sockbr > 0) {
   tokenize 32 %read
   if ($msn.ini(debug)) echo @debug $sockname $+ : $1-
   if (AUTH == $1) {
     if (AUTH GateKeeper* S :GKSSP* iswm $1-) {
       if ($msn.get(999,guest)) sockwrite -tn msn.server.999 $1-
       else sockwrite -tn msn.server.999 $1 GateKeeperPassport $3-
       sockclose $sockname
       var %s $msn.ndll(select,$window(@VinculaHTML).hwnd)
       %s = $msn.ndll(navigate,about:blank)
       return
     }
     else {
       if ($msn.get(999,guest)) sockwrite -tn msn.server.999 $msn.decode($1-)
       else sockwrite -tn msn.server.999 $1 GateKeeperPassport $3-
     }
   }
   elseif (IRCVERS == $1) {
     if ($msn.get(999,nick)) sockwrite -tn msn.server.999 NICK $msn.get(999,nick)
     sockwrite -tn msn.server.999 IRCVERS IRC8 MSN-OCX!9.02.0310.2401 $crlf AUTH GateKeeperPassport I $+(:GKSSP\0\0\0,$chr(3),\0\0\0,$chr(1),\0\0\0)
   }
   sockread %read
 }
}

Edited Jun 14, 2005 11:14 PM by Warrior124

also isnt the code for groups listing from tg grabber?

My code does NOT have bugs. It just develops random features.

No, it isn't. A friend of mine that goes to the same chatroom I visit helped me with the coding of the groups listings. He's also been helping me withlearning how to make msn connections as well. However, I still have a long ways to go, lol..

I took a look at the tggrabber code just now, and found that some of it does look simular. I'll talk to the guy who gave me this code, and talk to him about it. In the meantime, I'll take the code out. Thanks for letting me know, Ozzy_10.