যখন কোনও ডকুমেন্ট সংগ্রহে যোগ করা হয়, তখন এক্সটেনশনটি ইমেল ডেলিভারি প্রক্রিয়াকরণের জন্য এটি সংগ্রহ করে। এক্সটেনশনটি ইমেল প্রক্রিয়াকরণের সময় ডকুমেন্টে একটি delivery ক্ষেত্র তৈরি করে এবং আপডেট করে।
ইমেল ডেলিভারি প্রক্রিয়াকরণ
delivery ক্ষেত্রটি নিম্নলিখিত ক্ষেত্রগুলি দিয়ে পূর্ণ করা যেতে পারে:
- অবস্থা:
PENDING,PROCESSING,SUCCESS, অথবাERRORএর মধ্যে একটি। - startTime: ইমেল প্রক্রিয়াকরণ শুরু হওয়ার সময়কাল।
- endTime: ইমেল প্রক্রিয়াকরণ সম্পন্ন হওয়ার সময় টাইমস্ট্যাম্প (অর্থাৎ, হয়
SUCCESSঅথবাERRORঅবস্থায় শেষ)। - ত্রুটি: যদি ইমেল বিতরণে কোনও ত্রুটি থাকে, তাহলে এখানে একটি ত্রুটি বার্তা প্রদর্শিত হবে।
- প্রচেষ্টা: এই ইমেলের জন্য বিতরণ প্রচেষ্টার সংখ্যা।
- leaseExpireTime: হ্যাং বা টাইমআউটের ক্ষেত্রে, যে সময়টিতে একটি
PROCESSINGঅবস্থাকে ত্রুটি হিসেবে বিবেচনা করা উচিত। - তথ্য: সফলভাবে ইমেল বিতরণের পরে (অন্তত একটি ঠিকানায়), এই ক্ষেত্রটি নিম্নলিখিত ক্ষেত্রগুলি দিয়ে পূর্ণ হবে:
- messageId: ডেলিভারি করা ইমেলের মেসেজ আইডি।
- গৃহীত: ইমেল ঠিকানার বিন্যাস যেখানে ইমেলটি সফলভাবে বিতরণ করা হয়েছে।
- প্রত্যাখ্যাত: ইমেল ঠিকানার একটি বিন্যাস যেখানে ইমেলটি সরবরাহ করা যায়নি।
- মুলতুবি: SMTP দ্বারা অস্থায়ীভাবে প্রত্যাখ্যাত ইমেল ঠিকানাগুলির একটি অ্যারে।
- প্রতিক্রিয়া: SMTP সার্ভার থেকে শেষ প্রতিক্রিয়া।
একটি ইমেল সাধারণত PENDING থেকে PROCESSING এ SUCCESS অথবা ERROR তে যায়। একবার SUCCESS অথবা ERROR অবস্থায় এলে, ডকুমেন্টে অতিরিক্ত পরিবর্তন করলেও এক্সটেনশনটি অন্য ইমেল পাঠাতে পারবে না। ডকুমেন্ট আপডেট সহ একটি ইমেল পুনরায় পাঠাতে, আপনি state PENDING অথবা RETRY তে পরিবর্তন করতে পারেন।
ম্যানুয়াল পুনঃপ্রচেষ্টা
এমন কিছু ঘটনা আছে যেখানে ইমেল ডেলিভারি পুনরুদ্ধারযোগ্যভাবে ব্যর্থ হয় অথবা ছোটখাটো পরিবর্তন করে সঠিক ডেলিভারির জন্য ডকুমেন্টটি ম্যানুয়ালি সংশোধন করা যেতে পারে। যদিও পুনঃপ্রয়াস স্বয়ংক্রিয় নয়, আপনি delivery ক্ষেত্রের state ম্যানুয়ালি RETRY তে পরিবর্তন করতে পারেন যাতে এক্সটেনশনটি আবার ইমেল ডেলিভারির চেষ্টা করে (এবং attempts সংখ্যা বৃদ্ধি করে)।