Ba chữ số của mã reply mỗi chữ có một ý nghĩa đặc biệt. Ký tự đầu tiên biểu thị response, good hay bad hay không hoàn tất. Một sender-SMTP thật sẽ có thể xác
nhận hành động kế tiếp của nó (tiến hành theo kế hoạch, làm lại, cắt giảm bớt, ..) bằng một cách đơn giản là kiểm tra chữ số đầu tiên này. Một ssender-SMTP muốn biết một cách gần đúng các kiểu lỗi xảy ra (như mail system error, command syntax error) có thể kiểm tra chữ số thứ hai, để dành chữ số thứ ba cho việc kết thúc sự sắp đặt tăng dần của thông tin (the finest gradation of information. ) .
* Có năm giá trị cho chữ số đầu tiên của mã reply:
1yz Positive Preliminary reply (reply khẳng định ban đầu ) :
Lệnh này được chấp nhận nhưng hành động yêu cầu sẽ được giữ hoãn lại, trì hoãn sự xỏc nhận thụng tin trong reply này. Sender-SMTP sẽ gữi một lệnh khỏc định rừ tiếp tục hay bỏ qua hành động này.
[ Lưu ý: SMTP không có lệnh nào thừa nhận kiểu reply này, vàdo đó không có lệnh tiếp tục hay bỏ qua].
2yz Positive Completion reply (reply khẳng định sự hoàn thành) :
Hành động được yêu cầu hoàn tất một cách thành công, một yêu cầu mới có thể được bắt đầu .
3yz Positive Intermediate reply (reply khẳng định giữa chừng) :
Lệnh này được chấp nhận nhưng hành động yêu cầu sẽ được giữ hoãn lại, trì hoãn sự nhận thụng tin thờm. Sender-SMTP sẽ gữi một lệnh khỏc định rừ thụng tin này.
Reply này được dùng trong những nhóm lệnh tuần tự.
4yz Transient Negative Completion reply (reply phủ định sự hoàn thành ngắn hạn):
Lệnh này không được chấp nhận và hành động yêu cầu không xảy ra, tuy nhiên trạng thái lỗi là tạm thời, hành động có thể được yêu cầu trở lại. Sender sẽ quay trở lại bắt đầu chuổi lệnh (nếu có) khó gán một nghĩa “tức thời” cho nó khi hai site khác nhau (receiver- và sender- SMTPs) phải đồng ý sự thông dịch. Mỗi reply loại này có một giá trị thời gian khác nhau nhưng sender-SMTP được khuyến khích thử lại. Một quy tắc lật trang để xác định nếu một reply đặc vào trong loại 4yz hay 5yz (xem bên dưới) thì những reply đó là 4yz nếu chúng có thể được lặp lại mà không cần thay đổi gì trong cấu trúc lệnh hay trong những thuộc tính của sender hay receiver (như một lệnh được lặp lại một cách giống nhau và receiver không đưa ra một sự thực thi mới).
5yz Permanent Negative Completion reply (reply phủ định sự hoàn thành dài hạn):
Lệnh này không được chấp nhận và hành động được yêu cầu không xảy ra . Sender-SMTP ngăn cản việc lặp lại yêu cầu (trong chuổi tuần tự đó). Ngay cả một số hoàn cảnh lỗi “dài hạn” có thể hiệu chỉnh được, do đó người sử dụng muốn hướng sender-SMTP khởi tạo lại chuổi lệnh đó bằng cách chỉ đạo hành động tại một số thời điểm trong tương lai(như: sau khi chính tả đã được thay đổi, hay user đó thay đổi trạng thái account ) .
a/ Chữ số thứ hai mã hoá những loại trả lời(response) đặc trưng :
* x0z Syntax : Những reply này xem xét lỗi cú pháp, những lệnh đúng cú pháp không đưa vào một loại chức năng nào. Và không thực thi các lệnh không cần thiết.
* x1z Information : Những reply này để yêu cầu thông tin, như trạng thái hay giúp đỡ.
* x2z Connections : Những reply này tham khảo đến kênh giao chuyển.
* x3z : Cho đến hiện tại chưa được đặc tả.
* x4z : Cho đến hiện tại chưa được đặc tả.
* x5z Mail system : Reply này chỉ định tình trạng của receiver mail system vis-a- vis yêu cầu truyền hay hoạt động hệ thống mail khác .
b/ Chữ số thứ ba mang lại một mức độ ý nghĩa nhiều hơn cho mỗi loại (category) Được đặc tả bởi chữ số thứ hai. Danh sách các reply minh hoạ điều này. Mỗi reply text được đề nghị nhiều hơn là lệnh, và có thể thay đổi tuỳ theo lệnh với những kết hợp của lệnh đó. Trong sự kiểm soát khác những mã reply này phải theo sự đặc tả nghiêm ngặt trong phần này sự thực thi của receiver sẽ không phát sinh ra mã mới cho tình trạng khác nhau không đáng kể của những gì được đặc tả ở đây. Nhưng những mã thích hợp hơn đã được định nghĩa sẳn.
Ví dụ như, một lệnh như NOOP chẳng hạn nó thực thi thành công không cần đề nghị sender-SMTP một thông tin mới nào sẽ trả về một reply 250. Câu trả lời là 502 khi lệnh yêu cầu một hành động non-site-specific không thực thi được. Một sự cải tiến cho điều đó là reply 504 cho một lệnh được thực thi nhưng nó yêu cầu một tham số không thực thi.
Reply text có thể dài hơn một dòng đơn, trong trường hợp này một text hoàn tất phải được đánh dấu do đó sender biết khi nào nó có thể ngưng đọc reply này. Điều này đòi hỏi một định dạng để chỉ định một reply nhiều dòng.
Định dạng cho các reply nhiều dòng quy định tất cả các dòng, chấp nhận chổ cuối cùng và bắt đầu của mã reply, theo sau đó là một dấu gạch nối “-” (dấu trừ) theo sau là text dòng cuối cùng sẽ bắt đầu với mã reply theo ngay sau đó là <SP> , các text và
<CRLF> . Cho vớ duù :
123-First line 123-Second line
123-234 text beginning with numbers 123 The last line
Trong một số trường hợp sender-SMTP cần tìm mã reply theo sau là <SP> ở đầu dòng, và phớt lờ tất cả các dòng trước. Một ít trường hợp có dữ liệu quan trọng cho sender trong reply “text” sender sẽ nhận biết trường hợp này từ ngữ cảnh hiện hành.
Phaàn 2
Giao thức POP 3 (Post Office Protocol version 3) --- * * * ---