aMSN Forums
May 20, 2018, 08:54:47 pm *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News: New forum for aMSN !!
 
   Home   Help Search Login Register  
Pages: [1] 2 3 ... 12
  Print  
Author Topic: MSNP15  (Read 139837 times)
kakaroto
Administrator
Super Power User
*****
Offline Offline

Posts: 9428


View Profile WWW
« on: January 14, 2008, 12:55:45 am »

EDIT: This is a continuation of thread : http://www.amsn-project.net/forums/viewtopic.php?t=4398 which was split to aviod off topicing
yeah, well activity jump is mostly caused by people finishing their exams and the fact that I cleaned the bug report system so it became much more usable and we started clearing bugs.. we plan a 0.97.1 bugfix release, so we want to close as much bugs as possible.
we also started implementing the MSNP15 protocol (which works great so far, only issue is that you can't add/remove/block/move/copy contacts or groups).
Logged

KaKaRoTo
H@t Trick
Super Power User
**
Offline Offline

Posts: 340



View Profile
« Reply #1 on: January 14, 2008, 02:31:20 am »

Yeah i thought that those were some of the factors affecting the jump. a 0.97.1 bugfix release sounds like a good idea.
Maybe we should start a different thread on MSNP15 if it is even to be discussed as it is probably a little off topic in here despite it being an MSNP15 feature.

I thought that the current state of aMSN was such that implementing newer versions of MSNP than the current one (MSNP12?) was virtually unrealistic until aMSN2? Or has this been rectified through bugfixes and code clean up?
Logged

There's no place like 127.0.0.1!
kakaroto
Administrator
Super Power User
*****
Offline Offline

Posts: 9428


View Profile WWW
« Reply #2 on: January 14, 2008, 04:58:25 am »

hello again.. so I created an MSNP15 thread, although I didn't want to, but I wanted to answer you and not go too much off topic on the other thread...
as you said "if it is even to be discussed".. my answer would be that *for now* it shouldn't be discussed.. it is under heavy development and not ready to be tested, and shouldn't be tried until we announce that it should now work.. you can also try it if you want to, but if you find any bugs, just don't report them...
So far, here's the status :
1 - you can connect, it will authenticate and all that stuff...
2 - it will fetch your contact list correctly and show it
3 - you will not be able to see or set your or your contact's information (phone numbers mainly).
4 - you can't chat with yahoo users
5 - you can't add/remove/block/unblock/move/copy a contact
6 - you can't create/delete/rename a group
7 - you can chat, send OIMs, file transfers, etc.. everything works just like before.

Everything else should work just fine....

The reason why we didn't implement for now was that it was a huge task... thankfully, I joined the pymsn project and I'm helping them with the implementation of MSNP15 (I've met the authors in real life at guadec and they convinced me to join, hehe), and thanks to the docs and what I've seen so far of pymsn's code (which implements most of MSNP15 features), it helped a LOT since all the reverse engineering was mostly done and well documented with some useful code Smiley
What I've learned is that the protocol didn't change much for most of the commands, BUT all the address book management is now using SOAP which is the hard part... But I implemented a SOAP library for offline messaging which helps, and I had already started writing the SOAP authentication scheme for OIMs too, which in the end needed a little modification to work with SSO (MSNP15 authentication scheme), which was partly already done in a separate file when I was writing a proof of concept for aMSN 2 in tcl. So once authentication was done, everything worked just fine, just a few little changes that were done under an hour, then it worked BUT the contactlist was empty..
now I spent some time implementing the address book management system, which is maybe 5% or 10% done, and that was the easiest part of it.. the hard part is still the add/remove/block/unblock/move/copy contacts+groups.. and the hardest will be to integrate it with the current amsn code...

We'll give it a try.. but looking at how things are going, this shouldn't be impossible, it's difficult yes, but doable.

p.s: we said impossible to do msnp15 mainly because we tried once to do msnp13 and it completely failed, but since that time, aMSN's code has been cleaned and refactored a LOT, which helps a lot now for this implementation. Also, it wasn't "impossible" but rather "very difficult" and "not worthy since we'll want to concentrate the effort on amsn2".. but now, I just thought it would be fun to do it so I did it, and it seems it started a chain reaction into getting this implemented for 0.98 Smiley
Logged

KaKaRoTo
Daniel15
Super Power User
**
Offline Offline

Posts: 269


View Profile WWW
« Reply #3 on: January 14, 2008, 06:53:11 am »

Quote
if you find any bugs, just don't report them...

But, wouldn't this help?
I don't mean bugs like "Adding contacts doesn't work" (because this is already known), but bugs in things already implemented (the authentication, etc.)
Logged

Ubuntu 8.04, Tcl/Tk 8.5, aMSN SVN
My sites: [DanSoft Australia] [Daniel15's Forum and Blog and more...
H@t Trick
Super Power User
**
Offline Offline

Posts: 340



View Profile
« Reply #4 on: January 14, 2008, 07:34:13 am »

Thanks for answering, I wasn't expecting it, at least not for a few weeks or months.
This all sounds really promising and I am sure you guys will get it all working for general SVN use soon enough, and then to the point where it will be the default protocol version. I will hold off on trying it for now, maybe I will set up another aMSN directory (can I do that on Windows?) so I can experiment with it without disrupting my regular IM usage.
I'm glad to hear that the code is cleaner and more organized. Is that part of why it performs so much better than it used to?

About joining pymsn, being open source I see this as a great thing, but I hope it doesn't take too much of your time away from aMSN! Maybe you can convince some of them to come and help you guys out Tongue

Daniel15: As kakaroto has said it's in development not testing, once it moves to testing then they have coded everything and have properly implemented exception handling and such for the new code, and it "should" be fully functional, testing/release phase is when bug reports would be relevant, but in development bug reports can be frustrating because you already know there are bugs and expect them to be all over the place, in testing bug reports are small details for unique situations (and probably reproducible). Now I am sure I haven't said anything you didn't already know as you probably have more practical programming experience than me (mine is mostly academic). By the sounds of it we will be filing bug reports soon enough though! Oh and I'm Daniel also!!

Ok slightly offtopic, about version numbering scheme. Does 0.98=the 98th official release? would the release after 0.99 be aMSN 1.0? If so what are the goals for a 1.0 release, we've heard a lot about 2.0 so I figured I'd ask about 1.0 (maybe it's on the forums but I have never seen it, and I am as you know relatively speaking new to aMSN, I started with 0.96).

Good luck with finishing MSNP15!!
Logged

There's no place like 127.0.0.1!
Daniel15
Super Power User
**
Offline Offline

Posts: 269


View Profile WWW
« Reply #5 on: January 14, 2008, 09:10:55 am »

Quote
Daniel15: As kakaroto has said it's in development not testing, once it moves to testing then they have coded everything and have properly implemented exception handling and such for the new code, and it "should" be fully functional, testing/release phase is when bug reports would be relevant, but in development bug reports can be frustrating because you already know there are bugs and expect them to be all over the place, in testing bug reports are small details for unique situations (and probably reproducible)

Ah, true that Smiley

Quote
Now I am sure I haven't said anything you didn't already know as you probably have more practical programming experience than me (mine is mostly academic).

Ah yeah Smiley
Well I've never been a developer on a project as big as aMSN, all my projects are relatively small (I'm on the customisation team of SMF, but that just means I work on mods for it, I don't work on the core code).

Quote
Does 0.98=the 98th official release?

I'm quite sure that some numbers would have been skipped... No idea though (I can't seem to find a listing of all the released versions)
Logged

Ubuntu 8.04, Tcl/Tk 8.5, aMSN SVN
My sites: [DanSoft Australia] [Daniel15's Forum and Blog and more...
billiob
Administrator
Super Power User
*****
Offline Offline

Posts: 1352


View Profile
« Reply #6 on: January 14, 2008, 02:01:14 pm »

While developing a new feature, i hate having to deal with bug reports, even if they can be useful (only me knows whether that report is useful or not). I prefer to work alone as "closed source" and release only when i think it's finished. If developers want to test, i share my work with them.
The main issue is that the svn is more stable, maybe because we don't do enough releases, but people are used to work with it, and they don't remember that the svn version is a live and development version.

Btw, testing msnp15 may destroy your contact list, unblock blocked people (... stuff like that can occur);  not only crash.
When KKRT will need reports, he'll tell you. Smiley


About numbering, i think we'll use 0.99 -> 0.100 -> .... -> 2.0
We'll skip the 1.* part since we think that 1.* should be used only when all the features of the official client are implemented.
Logged
takeshi81
Power user
*
Offline Offline

Posts: 113


View Profile
« Reply #7 on: January 14, 2008, 04:11:51 pm »

Well about MSNP15 RE i will help on yahoo contacts feature... i will prepare a small documentation on aMSN RE platform for my exam in february...
Logged
kakaroto
Administrator
Super Power User
*****
Offline Offline

Posts: 9428


View Profile WWW
« Reply #8 on: January 14, 2008, 06:05:40 pm »

Hello all,
nice to see you respond to this...
As billiob said, bug reports while developping a feature is generally very frustrating.. first, if I allow one person to do it, then everyone will start telling me "hey, it crashed when I blocked someone", and I'll say I KNOW THAT, DON'T TELL ME... you might want to tell me about something that I didn't put in the list above, which you think 'should work', but in fact, I just didn't put it there because there are so many little things that can go wrong, but I already knew abut it.. to make it short, I'm the only one who knows what will work and what will not work. And I can tell you "ok it's stable, test it now, but feature X and Y don't work" because just like yesterday, I rewrote most of the address book management code... because sometimes you write something to 'make it work', and you know it will crash just because you sneezed while trying to connect, but at least it works sometimes and it allows me to make sure that I understood the protocol, or it helps me get the SOAP XML and put it in the file to analyse it and reverse engineer it later... so you might tell me 'this thing has a bug' while in fact I already had in mind that I was going to completely rewrite it...
that's why I hate people reporting errors with 'work in progress' features.
about version numbering, yes, we skipped some numbers, I think the first version was 0.44 (probably because ccmsn was 0.43 before amsn was born?), I know we skipped from 0.83 to 0.90 when we switched from MSNP6 to MSNP9. Ok, I've checked the file release system on sourceforge and here are the versions (packages) we had previously :
Quote

0.44 [Edit This Release]    amsn [Edit This Package]    Hidden
0.45 [Edit This Release]    amsn [Edit This Package]    Hidden
0.46 [Edit This Release]    amsn [Edit This Package]    Hidden
0.47 [Edit This Release]    amsn [Edit This Package]    Hidden
0.47 [Edit This Release]    amsn [Edit This Package]    Hidden
0.48 [Edit This Release]    amsn [Edit This Package]    Hidden
0.49 [Edit This Release]    amsn [Edit This Package]    Hidden
0.50 [Edit This Release]    amsn [Edit This Package]    Hidden
0.51 [Edit This Release]    amsn [Edit This Package]    Hidden
0.52devel [Edit This Release]    amsn [Edit This Package]    Hidden
0.60 [Edit This Release]    amsn [Edit This Package]    Hidden
0.61 [Edit This Release]    amsn [Edit This Package]    Hidden
0.61-2 [Edit This Release]    amsn [Edit This Package]    Hidden
0.70 [Edit This Release]    amsn [Edit This Package]    Hidden
0.71 [Edit This Release]    amsn [Edit This Package]    Hidden
0.71 [Edit This Release]    amsn [Edit This Package]    Hidden
0.80 [Edit This Release]    amsn [Edit This Package]    Hidden
0.81 [Edit This Release]    amsn [Edit This Package]    Hidden
0.82 [Edit This Release]    amsn [Edit This Package]    Hidden
0.83 [Edit This Release]    amsn [Edit This Package]    Active
0.90 [Edit This Release]    amsn [Edit This Package]    Active
0.91 [Edit This Release]    amsn [Edit This Package]    Active
0.92 [Edit This Release]    amsn [Edit This Package]    Active
0.93 [Edit This Release]    amsn [Edit This Package]    Active
0.94 [Edit This Release]    amsn [Edit This Package]    Active
0.95 [Edit This Release]    amsn [Edit This Package]    Active
0.96 [Edit This Release]    amsn [Edit This Package]    Active
0.96RC1 [Edit This Release]    amsn [Edit This Package]    Hidden
0.97 [Edit This Release]    amsn [Edit This Package]    Active
0.97RC1 [Edit This Release]    amsn [Edit This Package]    Hidden


We don't consider 1.0 as being a 'final version'. Of course we would have liked to have a 1.0 version that people will say 'this is stable'.. but I think that a software will never be perfect, it will always need improvement, so a 1.0 is virtually impossible, it's just marketing bullshit to make people think that this version is the 'best'.. but for sure 1.1 is better than 1.0.. so what's the use of having 1.0 ?
As billibo said, maybe we'll do 0.99 -> 0.100 ... or maybe we'll do 1.0 .. I don't know yet.. maybe we'll release amsn 1.x at the same time as 2.x ... for now.. only the future will tell us Smiley

@takeshi : cool! but most of the RE has already been done, first pymsn support MSNP15 and is pretty complete so far I think. so you can use that as a starting point. Also, there's msnpiki containing many useful info in there, and finally, aMSN, pymsn, pidgin, miranda,  adium and other open source IM clients are currently joining their effort into one single initiative that will be part of the IMFreedom organization in order to publish a clean documentation for all known closed protocols. Instead of having tons of websites, each explaining a tiny little bit of info from a protocol, and other features with no documentation but still being implemented in some clients, etc.. we'll try to gather it all in one place. You might want to help us with that if you've got some RE to do Smiley
Anyways, we'll keep this subject in another thread if needed (once announced).
About yahoo contacts, it's simple, yahoo contacts have their network id as 4, and to write to them, you send a message of the same type as 'MSG' on an SB, but the command is UUX and is sent to the NS instead.. you receive messages from yahoo contacts with UBX over the NS, and the content is the same as a MSG message... simple, right? Smiley

oh and btw, right now, using MSNP15 will not block/unblock anyone or corrupt your contact list or anything, it should work just fine for some simple usage.. BUT once we start implementing the add/remove/block/unblock, it might get messy.. mayeb you'll delete someone when you wanted to just block him, etc...
as always.. at your own risks!
I don't want you to report bugs.. but if you can test it and tell me that you had no bugs, that would be awesome Smiley

@H@T_Trick : C:\documents and settings\hottrick\amsn just rename the directory.
Logged

KaKaRoTo
takeshi81
Power user
*
Offline Offline

Posts: 113


View Profile
« Reply #9 on: January 14, 2008, 07:00:43 pm »

Yes always clear KKRT eheh

My documentation is about RE done by aMSN (team) and thanks for hints , i didn't know about the IM Freedom organization that looks cool... i have some material about MSNP RE but since it is now actual for amsn i thought to study MSNP15 so it would be helpful for aMSN and for me too !

Anyway i'll test and not report bugs... thanks  :wink:
Logged
H@t Trick
Super Power User
**
Offline Offline

Posts: 340



View Profile
« Reply #10 on: January 14, 2008, 10:14:45 pm »

Kakaroto: Thanks for all the info! one thing though, not that it is important, which is why I never said anything, H@t=Hat as in a hat trick in hockey, and it's a space not an underscore (the link underline probably hides the space), but either way its fine Smiley
oh and tomorrow I think I will start testing msnp15 with a new passport and if all goes well I will let you know here, if not I wont say anything.
As for IMFreedom, that idea is an amazing idea and I am sure much of aMSN work in implementing Webcam and voice clips (and probably voice conference eventually) and other more advaced features of MSNP will be large contributions ot IMFreedom!

On another note I love not being ignored here, it seems as great as the community at N95Users.com forums I tend to get ignored for some reason lol
Logged

There's no place like 127.0.0.1!
kakaroto
Administrator
Super Power User
*****
Offline Offline

Posts: 9428


View Profile WWW
« Reply #11 on: January 15, 2008, 04:19:37 am »

hey, that's cool takeshi, keep me informed if you find anything.. if you want, send me your msn address by PM, I'll add you to my CL.
@Hat trick : ahh sorry, I didn't know, I thought it's was 'hot' since the start, hehe.. + I understood it would be a space, but I didn't know you can put a space in your account username! so I thought you used an underscore instead, and just kept using what It hought was your username...
Anyways, have fun with MSNP15, now I'm using it as my main protocol and it seems to be stable enough if you don't play with your CL (+ it will help me find new unsupported/undocumented things).
And you're welcome.. even though you're jew, we respect everyone here :p (just kidding, don't take it badly :p). Mainly, you're respectful and helpful, and aMSN is what it is today because of our users, so we give great attention to them.. and you're obviously one of them Smiley
Logged

KaKaRoTo
H@t Trick
Super Power User
**
Offline Offline

Posts: 340



View Profile
« Reply #12 on: January 15, 2008, 08:02:37 am »

lol yeah I figured that was the case and I wasnt upset.
So now I have to do the following to start testing MSNP15:
1) Create a new passport
2) Create a small contact list (volunteers anyone? lol)
3) Create a testing/development directory for aMSN
4) Make the change to MSNP15 in aMSN code
5) Start using it, just don't mess with the contact list unless I log in using my daily use aMSN
6) Don't report anything unless it's to say it works, or something EXTREMELY weird is going on and maybe not even that yet.

Thanks Kakaroto, and don't worry I can take it, and just because you're a Muslim, I respect you too and, love the work you are doing! (now we're even Tongue) Yes, you developers do listen to us users! This community could be a model for the real world!
Logged

There's no place like 127.0.0.1!
Daniel15
Super Power User
**
Offline Offline

Posts: 269


View Profile WWW
« Reply #13 on: January 15, 2008, 08:12:10 am »

Quote
2) Create a small contact list (volunteers anyone? lol)

Feel free to add me... My contact list is already way too big; one more person can't hurt Tongue

I'll probably test it with one of my test accounts too Smiley
Logged

Ubuntu 8.04, Tcl/Tk 8.5, aMSN SVN
My sites: [DanSoft Australia] [Daniel15's Forum and Blog and more...
kakaroto
Administrator
Super Power User
*****
Offline Offline

Posts: 9428


View Profile WWW
« Reply #14 on: January 15, 2008, 10:51:16 am »

lol @ HAt    Trick. ok, we're even :p it was fun Smiley
about msnp15, you can do that, or try on your own account, that's what I'm doing and it should be fine for now.. if you don't want to "risk" it (assuming you don't trust my 1337 coding skills :p), then do as you wish.. but I just wanted to say that it should be good now if you didn't know...
+ if by mistake you add/delete a contact or anything, no need to panick, you didn't damage your address book or anything, the only consequence will be that you'll get disconnected from the server (deleting a contact will not get you disconnected, you will appear offline for him, as if you deleted him, he'll stay on your list, but when you logout/login, he'll be back).
Logged

KaKaRoTo
Pages: [1] 2 3 ... 12
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006-2009, Simple Machines LLC Valid XHTML 1.0! Valid CSS!