مطمئنا" همه شما MSN مسنجر را می شناسید و از آن استفاده می کنید. این مقاله و چند مقاله بعدی در مورد نحوه کار MSN مسنجر و برقراری ارتباط آن با سرور اصلی و کاربران می باشد. امیدوارم که مورد استفاده قرار بگیرد.

مطمئنا" همه شما MSN مسنجر را می شناسید و از آن استفاده می کنید. این مقاله و چند مقاله بعدی در مورد نحوه کار MSN مسنجر و برقراری ارتباط آن با سرور اصلی و کاربران می باشد. امیدوارم که مورد استفاده قرار بگیرد.
● اطلاعات سوکت
MSN مسنجر از TCP استفاده می کند و مسنجر شما با پورت شماره ۱۸۶۳ با سرور ارتباط برقرار می کند.
● سرورهای MSN مسنجر
سه نوع سرور در این پروتکل مورد استفاده قرار می گیرد :
Dispatch Server ( ۱
این سرور با کاربران دائما در ارتباط است و وظیفه برقراری ارتباط با کاربران را بر عهده دارد و مشخصات آنها را بدست می آورد از طریق آدرس messenger.hotmail.com on port ۱۸۶۳. و پورت ۱۸۶۳ می توان به این سرور دسترسی پیدا کرد.
۲) Notification Server
این سرور وظیفه نگهداری وضعیت کاربران , ارسال وضعیت , ارسال پیام , درخواست چت , هشدار دریافت ایمیل و ... را بر عهده دارد.
۳) Switchboard Server
این سرور دروازه اصلی برقراری ارتباط کاربران در اتاقهای گفتگو chat می باشد. همچنین در زمان ارسال فایلها نیز از این سرور استفاده می گردد. وظیفه انتقال اطلاعات اتاقهای گفتگو به عهده این سرور است.
● پروتکل برقراری ارتباط
MSN مسنجر از طریق ارتباط TCP با سرور ارتباط برقرار می کند و تمامی اطلاعات خود را به صورت Text رد و بدل می کند. یعنی دستورات را به صورت متن معمولی ارسال و دریافت می کند . البته نحوه ارسال اطلاعات و دریافت آن متفاوت می باشد.
● دستورات
همه دستورات در MSN مسنجر به صورت ۳ کاراکتری هستند. همه پارامترها بعد از دستور اصلی می آیند و هر پارامتر با کاراکتر فاصله مشخص می گردد.
● پیامها
دستور ارسال پیامها تنها دستوری هست که با دیگر دستورات اندکی تفاوت دارد. نام دستور فوق
MSG می باشد. در هنگام ارسال دستور MSG در اولین سطر ارسالی از اطلاعات دستور ارسال شده و در سطرهای بعدی به ترتیب Mime ها و نوع کاراکتر ست , در سطرهای بعدی متن پیام می باشد که می تواند شامل هر کارکتری باشد. سطر دوم در ارسال یک پیام MIME-Version: ۱.۰
می باشد.سطر سوم در ارسال یک پیام Content-Type: */*; charset=UTF-۸, می باشد. در سطرهای بعدی متن پیام ارسال می گردد.
● تغییرات وضعیت
این دستور که به صورت CHL ارسال می گردد فقط از طرف کاربران MSN مسنجر ارسال می گردد و هیچ وقت از طرف سرور ارسال نمی شود. این دستور بعد از ارسال هر پیام و بعد از هر تغییر در وضعیت ارسال می گردد.
● خطاها
وقتی که یک دستور اشتباه برای سرور ارسال گردد یا یکی از روالهای کاری به درستی انجام نگیرد سرور یک کد خطای ۳ رقمی را به کاربر بر می گرداند که نشان دهنده نوع خطا می باشد.
لیست خطاها ارسالی از طرف سرور عبارتند از :
▪ ۲۰۰ Syntax error
▪ ۲۰۱ Invalid parameter
▪ ۲۰۵ Invalid user
▪ ۲۰۶ Domain name missing
▪ ۲۰۷ Already logged in
▪ ۲۰۸ Invalid username
▪ ۲۰۹ Invalid fusername
▪ ۲۱۰ User list full
▪ ۲۱۵ User already there
▪ ۲۱۶ User already on list
▪ ۲۱۷ User not online
▪ ۲۱۸ Already in mode
▪ ۲۱۹ User is in the opposite list
▪ ۲۸۰ Switchboard failed
▪ ۲۸۱ Transfer to switchboard failed
▪ ۳۰۰ Required field missing
▪ ۳۰۲ Not logged in
▪ ۵۰۰ Internal server error
▪ ۵۰۱ Database server error
▪ ۵۱۰ File operation failed
▪ ۵۲۰ Memory allocation failed
▪ ۵۴۰ * Wrong CHL value sent to server
▪ ۶۰۰ Server is busy
▪ ۶۰۱ Server is unavaliable
▪ ۶۰۲ Peer nameserver is down
▪ ۶۰۳ Database connection failed
▪ ۶۰۴ Server is going down
▪ ۷۰۷ Could not create connection
▪ ۷۱۱ Write is blocking
▪ ۷۱۲ Session is overloaded
▪ ۷۱۳ Too many active users
▪ ۷۱۴ Too many sessions
▪ ۷۱۵ Not expected
▪ ۷۱۷ Bad friend file
▪ ۹۱۱ Authentication failed
▪ ۹۱۳ Not allowed when offline
▪ ۹۲۰ Not accepting new users
▪ ۹۲۴ * Passport account not yet verified
● کد شناسایی
هر کاربر MSN مسنجر برای برقراری ارتباط نیاز به یک کد ارتباطی خاص برای ارتباط یا درخواست خویش باشد. این کد یک عدد بین ۰ تا ۴۲۹۴۹۶۷۲۹۵ می تواند باشد. سرور از روی کد ارسال توسط هر کاربر در زمان پاسخ می تواند تشخیص بدهد که هر درخواست برای چه کسی بوده است. این شما شناسایی همیشه بعد از نام دستور ۳ حرفی و قبل از پارامترها قرار می گیرد.
● MD۵
MD۵ یک الگوریتم رمز گذاری می باشد که در MSN مسنجر و بسیاری از نرم افزاری دیگر مورد استفاده قرار می گیرد. هر وقت که کلمه عبور ارسال می گردد قبل از ارسال با الگوریتم MD۵ رمزگذاری شده و سپس ارسال می گردد. خروجی همیشه با حروف کوچک و به صورت هگز می باشد. ۶f۳۹۶۳۰۰۹fc۸a۹d۲b۲ff۱۳۷da۰۹۰۵c۵۵ یک نمونه از کلمه عبور رمز شده می باشد.