السلام عليكم ورحمة الله وبركاته
بعد أن تعلمنا طريقة إرسال إيميل عبر البروتوكول SMTP في المشاركة السابقة : تعلم : بروتوكول البريد الصادر SMTP
نتعلم اليوم بروتوكول البريد الوارد Post Office Protocol المعروف إختصاراً بـ POP
كما قلنا في بروتوكول SMTP بإن المنفذ 25 مخصص له ، كذلك بروتوكول POP قد خصص له المنفذ 110
معني ذلك أننا إذا أردنا أن نعمل اتصال مع الملقم نضع الأمر التالي :
Winsocl.Connect "POP.gawab.com" , 110
على افتراض أننا نريد الاتصال مع ملقم البريد الوارد لسيرفر جواب دوت كوم .
إن أول رد من السيرفر سيكون كالتالي :
+OK <91132.1046951485@gawab.com>
و كما قلنا في الـ SMTP أننا نهتم بالخانات الثلاث الأولى (مثل 220 و 250 و 221 و 254 ) لتحليل رد السيرفر ، كذلك في الـ POP فإن الخانات الثلاث أو الأربع الأولى تعبر عن جواب السيرفر بالقبول أو الرفض .
أي أن :
+OK
تعني موافق أو صحيح
بينما
-ERR
تعنى خطأ أو رفض .
و على هذا نستطيع تحليل رسائل السيرفر .
أما أوامر بروتوكول ا لبريد الوارد POP فهي على النحو التالي :
USER name valid in the AUTHORIZATION state PASS string QUIT STAT valid in the TRANSACTION state LIST [msg] RETR msg DELE msg NOOP RSET QUIT
والآن لنأخذ عليها مثال باستخدام البرنامج المرفق :
لنعمل اتصال على الملقم POP.gawab.com و اجعل المنفذ = 110
اضغط على زر اتصال .
سيرد عليك السيرفر برسالة كهذه :
+OK <91132.1046951485@gawab.com>
كما قلنا ما يهمنا أول ثلاث أو أربع خانات أما الباقي فنهمله . وعليه فرسالة السيرفر السابقة تعنى أنه قبل الاتصال .
الآن لنضع له البريد الذي نريد أن نفتحه ، أكتب في خانة الأوامر النص التالي (على افتراض أن عنوانك البريدي هو Abdullah@gawab.com):
USER Abdullah@gawab.com
ستجد أن السيرفر رد عليك بـ :
+OK
أي عملية مقبولة .
الآن يجب أن نرسل كلمة السر كالتالي (على افتراض أن كلمة السر هي aaaa1111):
PASS aaaa1111
إن كانت كلمة السر صحيحة فسيرد عليك السيرفر بـ +OK و إن كانت خاطئة سيرد عليك بـ -ERR .
ملوحظة :
قد تكون كلمة السر صحيحة و لكن السيرفر لا يقبل الدخول عبر المنفذ 110 ، و مثال على ذلك موقع Yahoo فإنه لا يقبل العملية إلا إن كنت مشترك عندهم بالخدمة (بمقابل مادي) أو الخيار الآخر أن تدخل على بريدك عبر المتصفح .
نكمل ...........
الآن نريد أن نتعرف على حالة البريد و عدد الرسائل فيه ، إن الأمر Stat يوفر لنا ذلك :
Stat
سيرد علينا السيرفر بـ
+OK 6 7536
حيث أن الخانة الخامسة (الرقم 6) تعنى عدد الرسائل في البريد و الرقم 7536 هو حجم صندوق البريد بالبايت
لتتعرف على حجم كل رسالة بالبايت ، الأمر List يوفر لك ذلك :
List
و سيرد عليك السيرفر بالنتيجة :
1 3032 2 1068 3 1399 4 1399 5 267 6 371 .
جيد ؟
لنفرض أننا نريد أن نقرأ الرسالة الأولي ، الأمر retr يخدمنا :
retr 1
سيرد علينا السيرفر بالرسالة :
Received: (qmail 28741 invoked by uid 1004); 24 Feb 2003 10:18:53 -0000 Received: from unknown (HELO gawab) (212.93.217.222) by gawab.com with SMTP; 24 Feb 2003 10:18:37 -0000 الحمد لله رب العالمين ، والصلاة والسلام على محمد و أله و صحبه أجمعين . Status: RO X-UIDL: 1046081936.28764_0.,S=220 .
لاحظ أن تنسيق الرسالة نصي لأنها ارسلت بهذا الشكل ، ولو ارسلت على هيئة HTML لوجدت بها رموز HTML
والآن ،،،
لنفرض أننا نريد أن نحذف رسالة معينة ؟
الأمر Dele سيخدمنا في هذا :
Dele 1
و سيرد السيرفر بـ:
+OK
أما إن أردت قطع الاتصال مع السيرفر فالأمر Quit سيفيدك في هذا :
Quit
طبعاً سيرد عليك السيرفر بـ :
+OK
هذا بشكل عام ،
و من أراد الإستزادة في موضوع البرتوكول POP أو SMTP فانصحه بـ :
http://www.faqs.org/rfcs/rfc1939.html
http://www.faqs.org/rfcs/rfc821.html
والله الموفق ,
و صلى الله على نبينا محمد و على آله و صحبه أجمعين .
والسلام عليكم ورحمة الله وبركاته
