User Control Panel
Advertisements

HELP US, HELP YOU!

MSN pinging and mirrors

 
Post new topic   Reply to topic    Bot Depot Forum Index -> MSN Protocol modules
View unanswered posts
Author Message
Mojave
Almost An Agent
Almost An Agent


Joined: 01 Nov 2003
Posts: 1434

Reputation: 66.4

PostPosted: Sun Feb 13, 2005 1:06 am    Post subject: Reply with quote

QUOTE(Dipsy @ Feb 12 2005, 04:37 PM)
the msn module isnt half as good as a possible custom made client.

I take personal offense to that since I wrote the bulk of the latest Perl MSN module, version 2.0. I took the old 1.X code, made it work, reorganized, reshaped, fleshed it out, debugged it, made it consistent and clean. And from the original writers to Eric, Matt and Siebe and all the sets of eyes who have seen the many revisions in the last 6 months, it's pretty solid code. On top of that, Matt is now working on reorganzing the P2P code and adding complete filesharing.

Now let's see your custom made client code. Show me why MSN 2.0 isn't half as good as your custom code. MSN and my other modules are all out there in the open for you to criticize and take from, to mangle and improve, but where is your code? Let's do a comparison, I dare you.

Quote:
lol... what a n00b website....


...depend entirely on this website for code.


You kind of bounce around on this subject, first saying this website is n00b, then suggesting that people depend on this website for code.

If you have a personal issue with someone on this site, keep it private instead of putting down this site and all the hard work we have put into developing good modules.
Back to top
Dipsy
Newbie
Newbie


Joined: 12 Feb 2005
Posts: 1

Reputation: 15Reputation: 15

PostPosted: Sun Feb 13, 2005 1:47 pm    Post subject: Reply with quote

maybe some people on this forum DO have some intelligence, that is the first post i have seen on here that has been sensible.

and for the record, the msn.pm doesnt actually allow you to organise your client as you want it. when i had my client i wanted it to ping every minute to test for server response times, that would be so much more fiddley with the module. i also wanted mirrors, which unless it was pre-designed in the module, would be rather pathetically difficult. i can't think of ways to improve io::socket, or LWP modules, but i can certainly think of better ways to run something as flexible as an msn connection, with its billions of protocol items.

why did it take so many people to make the pm? it is hardly the world's largest, most difficult, creation now, is it?
Back to top
mat007
Almost An Agent
Almost An Agent


Joined: 12 Jan 2004
Posts: 1375

Reputation: 15.8Reputation: 15.8
votes: 2

PostPosted: Sun Feb 13, 2005 2:06 pm    Post subject: Reply with quote

The MSN.pm does ping the MSN server.

And i think constant pinging can result in a loss of connection.

And you can have mirrors in the msn.pm past realeses required a bit of a code edit to have mirrors eg: adding the object to the select.
Back to top
Mojave
Almost An Agent
Almost An Agent


Joined: 01 Nov 2003
Posts: 1434

Reputation: 66.4

PostPosted: Sun Feb 13, 2005 6:42 pm    Post subject: Reply with quote

Quote:
and for the record, the msn.pm doesnt actually allow you to organise your client as you want it. when i had my client i wanted it to ping every minute to test for server response times, that would be so much more fiddley with the module. i also wanted mirrors, which unless it was pre-designed in the module, would be rather pathetically difficult. i can't think of ways to improve io::socket, or LWP modules, but i can certainly think of better ways to run something as flexible as an msn connection, with its billions of protocol items.


MSN.pm is an interface, it is not a client. What can't you organize in your client because of MSN.pm?

MSN already pings the server correctly. I can't remember (and don't feel like looking), but I believe there's a way to get the ping response time.

Mirrors are actually "pathetically" easy with MSN.pm. You should search these forums for discussions about them and the mirror modules I have written - of course, since you don't use modules, you'll have to write them yourself, but it's very easy - give it a try.


Quote:
why did it take so many people to make the pm? it is hardly the world's largest, most difficult, creation now, is it?


You need to read my post more carefully. I did the bulk of the work, Eric contributed a good amount of code and ideas, mattaustin (code and ideas) and Siebe (docs) helped with P2P. That's actually a very small number of developers for an open source project. You should read up on open source to get a better understanding of how it works. But as open source, it was viewed by many other developers (hundreds here on bot-depot), errors were reported and suggestions made.
Back to top
Rhombz
Newbie
Newbie


Joined: 21 Feb 2005
Posts: 14

Reputation: 15

PostPosted: Mon Feb 21, 2005 7:21 am    Post subject: Reply with quote

Pinging the server every minute (60 seconds) would be entirely useless and actually quite the wrong thing to do. If you had bothered to research the MSN Protocol (http://www.hypothetic.org/docs/msn/) you would know that once you send a PNG the server responds with a QNG - this QNG has an interger after it and that interger tells the client the time it has left in which to send another PNG (or ANY other comand). Now, this QNG is *ALWAYS* less than or equal to 50 (seconds) - Which means that the server expects a response in LESS than 50 seconds, and not only this it TELLS you when it needs one. Which all translates to - Sending a response every 60 seconds is too long to wait, it is also the wrong thing to do since the server tells you when it wants a response. And the safest thing to do is take the servers timeframe for a response and take 5-10 seconds off it incase something hangs the code for a bit that way your always replying less than the specified time window.

Perhaps MSN 2 isnt the most 'user friendly' inteface - perhaps it is.. this is a personal thing, depending on whats needed of it. More so - its written for free - which means you dont have to pay for it and if that isnt good enough for you, then you can write your own client. I for one know how long it takes and how much debugging is involved since im the original author of Net::MSN (soon to be re-released in full OO).

QED.

Rhombz
Back to top
Mojave
Almost An Agent
Almost An Agent


Joined: 01 Nov 2003
Posts: 1434

Reputation: 66.4

PostPosted: Mon Feb 21, 2005 9:21 am    Post subject: Reply with quote

QUOTE(Rhombz @ Feb 20 2005, 11:21 PM)
If you had bothered to research the MSN Protocol (http://www.hypothetic.org/docs/msn/) you would know that once you send a PNG the server responds with a QNG

I don't know if this was directed towards me, but yes I've "bothered" to read over Hypothetic many many times and I *do* know about the correct way to handle PNG/QNG. I remember implementing a hack initially, planning to get around to the correct implementation later, but kind of forgot about it because it works fine - we have dozens and dozens of bots running on it. Anyway, it is something we'll get matt to fix in the next version.
Back to top
Rhombz
Newbie
Newbie


Joined: 21 Feb 2005
Posts: 14

Reputation: 15

PostPosted: Mon Feb 21, 2005 10:05 am    Post subject: Reply with quote

I was actually sticking up for you Smile It was directed at the person who insulted you.
Back to top
Mojave
Almost An Agent
Almost An Agent


Joined: 01 Nov 2003
Posts: 1434

Reputation: 66.4

PostPosted: Mon Feb 21, 2005 10:50 am    Post subject: Reply with quote

haha, ok, but it is something that needs to be fixed in our version of MSN. Thanks!
Back to top
brother
Senior Member
Senior Member


Joined: 06 Aug 2004
Posts: 156
Location: Belgium
Reputation: 24.5Reputation: 24.5

PostPosted: Mon Feb 21, 2005 11:25 am    Post subject: Reply with quote

On a side note: The integer QNG gives you is the minimum amount of time to wait before sending your next ping. You aren't forced into sending another ping after the time expires, you do however have to wait at least the speficied number of seconds though.

Allthough, these PNG are completely optional. I've had bots online for over 10 days without sending a single PNG, but of course it's hard to track when you actually loose the connection and according to the TCP stack the socket stays open (which happened weird enough, when my cable modem crashed a while back).

So, i too have implemented occasional PNG pings in my ScriptersMOO and acting upon their reply to either keep connected quietly or close the socket & reconnect. It makes for a stabile bot and high availability. Cut the MSN servers some slack though, sometimes it takes up to 5 seconds before i receive my QNG reply (lag @ msn? or just the idle socket?).

Allthough i have written the MSN gateway on my MOO from the ground up, i highly support re-usable code, certainly if it's being developed for several years and has had input from a big community. I'm sure only a small part of the bot-depot visitors/botcoders are able to talk raw MSN protocol, so offering them a tool that allows them to handle such things without having to know all those cryptic MSN commands can only increase productivity and inspiration...
Back to top
Rhombz
Newbie
Newbie


Joined: 21 Feb 2005
Posts: 14

Reputation: 15

PostPosted: Mon Feb 21, 2005 12:15 pm    Post subject: Reply with quote

Minimum time you say? http://www.hypothetic.org/docs/msn/research/msnp9.php gave the impression that you should reply before that - but I guess looking again you could read it either way. In any case, im sure a figure AROUND that time will work - But id have to say that not having a PNG->QNG system at all will cause the bot to die - I myself used to get an unexplained 'Broken Pipe' error and the program just shut down untill I added this.. oh well Smile I may switch my code to just using the QNG time rather than subtracting 10 seconds Wink
Back to top
brother
Senior Member
Senior Member


Joined: 06 Aug 2004
Posts: 156
Location: Belgium
Reputation: 24.5Reputation: 24.5

PostPosted: Tue Feb 22, 2005 12:05 am    Post subject: Reply with quote

True, some home router devices and even professional ones close idle tcp connections after a while. If you are one of those lucky ones that can disable/doesn't have it, you can get by without... allthough not recommended.
Back to top
Display posts from previous:   
Post new topic   Reply to topic    Bot Depot Forum Index -> MSN Protocol modules All times are GMT
Page 1 of 1

 



Protected by phpBB Security phpBB-TweakS
phpBB Security Has Blocked 9 Exploit Attempts.
Antispam Captcha Mod by phpbb-security.com
Powered by phpBB © 2001, 2005 phpBB Group