केवल स्वीकृति देखकर दोबारा भेजने से डुप्लिकेट संदेश बन सकता है। फिर से प्रयास करने का निर्णय लेने से पहले पहले भेजे गए संदेश को उसकी बाद की इवेंट्स के ज़रिए ट्रेस करें।
आपके भेजने के अनुरोध द्वारा लौटाए गए संदेश पहचानकर्ता को सहेजकर रखें। यह प्रारंभिक स्वीकृति को उस संदेश की बाद की इवेंट्स से जोड़ता है।
स्वीकृत और डिलीवर के बीच क्या होता है?
Email तैयारी चरण से गुज़रता है। SMS संदेश मोबाइल कैरियर को हैंडओवर चरण से गुज़रते हैं।
आप इन इवेंट प्रकारों के ज़रिए अपने Bird भेजे गए संदेशों को ट्रैक कर सकते हैं:
| चैनल | इवेंट | क्या हुआ |
|---|---|---|
email.accepted | Bird ने भेजने का अनुरोध स्वीकार किया और इसे तैयार कर रहा है, प्रत्येक अनुरोधित प्राप्तकर्ता के लिए एक बार। | |
email.processed | Bird ने प्राप्तकर्ता के मेल सर्वर को डिलीवरी के लिए संदेश तैयार किया। | |
email.delivered | प्राप्तकर्ता के मेल सर्वर ने संदेश स्वीकार किया। | |
| SMS | sms.accepted | Bird ने भेजने का अनुरोध स्वीकार किया और प्रोसेसिंग के लिए कतार में रखा। |
| SMS | sms.sent | Bird ने संदेश कैरियर को सौंपा। |
| SMS | sms.delivered | कैरियर ने प्राप्तकर्ता के हैंडसेट पर डिलीवरी की रिपोर्ट दी। |
देरी का पता लगाने के लिए timestamp में इवेंट समय की तुलना करें। Webhook आगमन समय में उनकी अपनी डिलीवरी देरी शामिल होती है।
Email के लिए, Bird के अंदर तैयारी मापने के लिए स्वीकृति समय को तैयारी समय से घटाएँ। तैयारी के बाद का अंतराल प्राप्तकर्ता सर्वर तक पहुँचने की प्रतीक्षा भी शामिल करता है।
SMS के लिए, हैंडओवर से पहले का समय मापने के लिए स्वीकृति समय को कैरियर हैंडओवर समय से घटाएँ। हैंडओवर से डिलीवरी तक का अंतराल शेष डिलीवरी समय मापता है।
उदाहरण के लिए, दोपहर को स्वीकार किया गया एक SMS संदेश जो दो सेकंड बाद हैंडओवर हुआ, उसने कैरियर हैंडओवर से पहले दो सेकंड बिताए। अगर डिलीवरी आठ सेकंड बाद होती है, तो कुल दस सेकंड हैं।
यह अभी भी डिलीवर क्यों नहीं हुआ?
संदेश अभी भी प्रतीक्षा में हो सकता है। बाद की इवेंट विफल डिलीवरी की रिपोर्ट भी कर सकती है।
केवल स्वीकृति इवेंट से इन परिणामों में अंतर नहीं किया जा सकता। दोबारा भेजने का निर्णय लेने से पहले उसी संदेश की बाद की इवेंट्स पढ़ें।
Email इन परिणामों की रिपोर्ट करता है:
email.deferredका अर्थ है कि अस्थायी विफलता के बाद डिलीवरी में देरी हुई है। Bird फिर से प्रयास करता है, इसलिए संदेश अभी भी डिलीवर या बाद में बाउंस हो सकता है।email.bouncedका अर्थ है कि प्राप्तकर्ता सर्वर ने डिलीवरी अस्वीकार कर दी।email.rejectedका अर्थ है कि Bird ने डिलीवरी प्रयास से पहले संदेश अस्वीकार कर दिया। प्राप्तकर्ता की मेल-सर्वर सेटिंग्स बदलने से पहले अस्वीकृति का कारण जाँचें।
SMS एक अलग सेट उपयोग करता है:
sms.undeliveredकैरियर से एक गैर-स्थायी डिलीवरी विफलता की रिपोर्ट करता है।sms.failedएक स्थायी डिलीवरी विफलता की रिपोर्ट करता है।sms.rejectedका अर्थ है कि Bird ने कैरियर हैंडओवर से पहले संदेश अस्वीकार कर दिया।sms.expiredका अर्थ है कि डिलीवरी से पहले संदेश की वैधता अवधि समाप्त हो गई।
कारण पहचानने के लिए विफल परिणाम के साथ आई त्रुटि पढ़ें। SMS की कैरियर फ़िल्टरिंग एक संभावित कारण बताती है।
क्या एक ही लाइफ़साइकल है जो मैं सीख सकता हूँ?
प्रत्येक चैनल की डिलीवरी स्थितियों का अपना क्रम होता है।
Email सर्वर भेजने वाले से बाद में फिर से प्रयास करने को कह सकते हैं। SMS कैरियर संदेश की समय-सीमा समाप्त होने पर प्रयास बंद कर सकते हैं। इन परिणामों के लिए अलग-अलग पुनर्प्राप्ति कार्रवाइयाँ आवश्यक हैं।
WhatsApp और voice भी अपने इवेंट टाइप रिपोर्ट करते हैं। उनकी इवेंट गाइड संबंधित स्थितियों का वर्णन करती हैं: email, SMS, WhatsApp और voice।
क्या डिलीवर हुआ संदेश डिलीवर नहीं माना जा सकता?
प्राप्तकर्ता मेल सर्वर द्वारा बाद में डिलीवरी विफलता रिपोर्ट करने के बाद email delivered से bounced स्थिति में जा सकता है।
सर्वर पहले SMTP पर संदेश स्वीकार करता है। वह उस आदान-प्रदान के समाप्त होने के बाद अलग से विफलता की रिपोर्ट कर सकता है।
Bird रिपोर्ट को email.out_of_band_bounce के रूप में दर्ज करता है। जब रिपोर्ट को बाउंस के रूप में वर्गीकृत किया जाता है, तो प्राप्तकर्ता की स्थिति delivered से bounced में बदल जाती है। हार्ड बाउंस के लिए, Bird पते को भी दबा देता है ताकि बाद के भेजे जाने को रोका जा सके क्योंकि विफलता स्थायी है।
ऑटो-रिप्लाई डिलीवरी स्थिति बदले बिना टाइमलाइन पर दिखाई दे सकती है। रिपोर्ट का वर्गीकरण यह निर्धारित करता है कि पहले की स्वीकृति वापस ली जाए या नहीं।
सफल इवेंट के बाद भी डिलीवरी स्थिति को अपडेट करने योग्य रखें। Webhooks क्रम से बाहर आ सकते हैं, इसलिए नई स्थिति को अधिलेखित करने वाला बदलाव लागू करने से पहले इवेंट टाइमस्टैम्प की तुलना करें।
संक्षेप में
स्वीकृति भेजने के अनुरोध की पुष्टि करती है।
स्वीकृति के बाद Bird संदेश तैयार करना शुरू करता है। यह इवेंट मेल सर्वर या हैंडसेट पर पहुँचने की पुष्टि नहीं करती।
तैयारी और हैंडओवर अलग-अलग सीमाएँ हैं।
Email तैयारी की रिपोर्ट email.processed से करता है। SMS कैरियर हैंडओवर की रिपोर्ट sms.sent से करता है।
विफलताओं के चैनल-विशिष्ट अर्थ होते हैं।
Email को deferred, bounced या rejected किया जा सकता है। SMS undelivered, failed, rejected और expired परिणामों में अंतर करता है।
Email डिलीवरी के बाद बाउंस हो सकता है।
बाद की बाउंस रिपोर्ट किसी email प्राप्तकर्ता की स्थिति delivered से bounced में बदल सकती है। ऑटो-रिप्लाई डिलीवरी स्थिति को अपरिवर्तित छोड़ती है।