सभी लेख

वह SMS कोड जो पहुंचना बंद हो जाता है: SHAFT फिल्टरिंग एक एडल्ट क्लासिफाइड्स साइट के लिए असल में क्या रोकती है

12 मिनट का पाठ

वह कोड जो कभी नहीं पहुंचता, और कोई नहीं बताता क्यों

एक विज़िटर साइन अप करता है, फोन नंबर टाइप करता है, और उस छह अंकों के कोड का इंतज़ार करता है जो उसे लॉगिन करने देगा। अच्छे दिन यह तीन सेकंड में पहुंच जाता है। बुरे दिन यह बिल्कुल नहीं पहुंचता, और प्रोडक्ट में कुछ भी यह नहीं बताता कि क्यों। साइनअप फॉर्म कोई एरर नहीं दिखाता। फोन कैरियर कोई बाउंस मैसेज नहीं भेजता। मैसेज दूसरी तरफ बस मौजूद ही नहीं होता, और इसका इकलौता दिखने वाला लक्षण है ड्रॉप-ऑफ रेट में थोड़ी बढ़ोतरी, जिसे दर्जनों दूसरी वजहों पर टाला जा सकता है।

यह खामोशी किसी आउटेज से भी बुरी है, क्योंकि आउटेज ठीक हो जाता है। कैरियर की तरफ का कोई कंटेंट फिल्टर जिसने चुपचाप तय कर लिया है कि आपका ट्रैफिक किसी ब्लॉक्ड कैटेगरी में आता है, वह सर्वर रीस्टार्ट करने या API कीरोटेट करने से ठीक नहीं होता। यह तभी सुलझता है जब यह समझ आए कि इसे किस चीज़ ने ट्रिगर किया, और ज़्यादातर ऑपरेटर वहां तक कभी नहीं पहुंचते, क्योंकि रिजेक्शन की वजह किसी ऐसे डेवलपर कंसोल में रहती है जो वे कभी खोलते ही नहीं, और उस भाषा में लिखी होती है जो इंजीनियरों के लिए है, कारोबार चलाने वाले के लिए नहीं।

इसके पीछे का तरीका कोई अफवाह नहीं है। इसका एक संक्षिप्त नाम है, ट्रैफिक रूट करने वाली कंपनियों द्वारा प्रकाशित एरर कोड्स का एक सेट है, और उस शब्द से सीधा संबंध है जो कारोबार के नाम में ही है: एडल्ट। अमेरिकी कैरियर कमर्शियल SMS को कंटेंट कैटेगरीज़ के एक छोटे से सेट से मिलाकर फिल्टर करते हैं, और उन कैटेगरीज़ में एक है सेक्स और एडल्ट कंटेंट। एस्कॉर्ट्स के लिए एक क्लासिफाइड्स डायरेक्ट्री परिभाषा से ही इसमें आ जाती है, भले ही मैसेज का असली टेक्स्ट कुछ भी हो।

यह वह गड़बड़ी नहीं है जिसकी बात इस ब्लॉग में कहीं और की गई है। ईमेल डिलिवरेबिलिटी इसलिए टूटती है क्योंकि स्पैम फिल्टर किसी मैसेज को सेंडर की रेप्युटेशन और फॉर्मेटिंग के आधार पर स्कोर करते हैं, और एक सावधान भेजने वाला बेहतर ऑथेंटिकेशन और धीरे-धीरे वार्मअप करके वापस उबर सकता है। एडल्ट कंटेंट के लिए SMS फिल्टरिंग अलग तरीके से काम करती है: यह कोई रेप्युटेशन स्कोर नहीं है जो समय के साथ ठीक हो जाए, यह एक कैटेगरी मैच है जिसे कैरियर का सिस्टम रजिस्ट्रेशन के वक्त सिर्फ एक बार जांचता है, और अक्सर दोबारा सबमिट करने की इजाज़त भी नहीं देता।

SHAFT फिल्टर: कैरियर असल में क्या फ्लैग करते हैं, उनके अपने शब्दों में

ब्लॉक्ड कैटेगरीज़ के लिए इंडस्ट्री का संक्षिप्त नाम है SHAFT: सेक्स, हेट, अल्कोहल, फायरआर्म्स और टोबैको। यह कोई ऐसा शब्द नहीं है जो कैरियर ने मार्केटिंग के लिए बनाया हो; यह उन रिजेक्शन कोड्स में सीधे दिखता है जो मेसेजिंग प्लेटफॉर्म किसी सबमिशन के फेल होने पर लौटाते हैं। एरर कोड 30953 के लिए Twilio का अपना एरर डॉक्यूमेंटेशन साफ कहता है कि किसी कैंपेन को इसलिए रिजेक्ट किया गया क्योंकि उसमें सेक्स या एडल्ट कंटेंट है जो CTIA के SHAFT गाइडलाइंस का उल्लंघन करता है, और यह एक ऐसी डिटेल जोड़ता है जो रिजेक्शन से भी ज़्यादा अहम है: उस कैटेगरी का रिजेक्शन दोबारा सबमिशन के लिए योग्य ही नहीं होता। कोई अपील फॉर्म नहीं है, कोई सुधारी गई भाषा नहीं है जो इसे ठीक कर दे, सामान्य रजिस्ट्रेशन रास्ते से कोई दूसरा मौका नहीं है।

यही पैटर्न टोल-फ्री नंबरों की तरफ भी दिखता है, जिनकी तरफ बहुत से ऑपरेटर इसलिए जाते हैं क्योंकि यह स्टैंडर्ड लोकल नंबर रजिस्ट्रेशन से कम बोझिल लगता है। एरर कोड 30441 एक ऐसे टोल-फ्री नंबर वेरिफिकेशन को कवर करता है जो रिजेक्ट होता है क्योंकि रिव्यू करने वाला, असली वेबसाइट, ऑप्ट-इन फ्लो, या एप्लिकेशन के साथ जमा किए गए सैंपल मैसेजेस को देखकर तय करता है कि यूज़ केस "सेक्स-संबंधित लगता है"। यह रिजेक्शन सिर्फ यह नहीं देखता कि एक मैसेज में क्या लिखा है। यह उस वेबसाइट को देखता है जिसे रिप्रेजेंट करने के लिए वह नंबर रजिस्टर हुआ है, जो एक क्लासिफाइड्स डायरेक्ट्री के लिए पूरा कारोबार ही है।

इसे किसी पेमेंट प्रोसेसर द्वारा अकाउंट बंद करने से अलग बनाने वाली चीज़ है रिव्यू कन्वर्सेशन का पूरी तरह गायब होना। एक पेमेंट प्रोसेसर किसी मर्चेंट को नोटिस पीरियड, एक रीज़न कोड, और कभी-कभी एक कंप्लायंस ऑफिसर के साथ बंद करता है जो इस पर बात करने को तैयार हो। कैरियर का ऑटोमेटेड कंटेंट फिल्टर डेवलपर डैशबोर्ड पर एक रिजेक्शन कोड लौटाता है और आगे बढ़ जाता है। कैरियर में कोई भी यह फैसला नहीं ले रहा कि आपका कारोबार सर्विस के लायक नहीं है; सालों पहले किसी और वजह से लिखा गया एक नियम यह अपने आप कर रहा है, और उसे न पता है, न फर्क पड़ता है कि इसमें शामिल मैसेजेस बेकसूर छह अंकों के लॉगिन कोड्स हैं।

कैटेगरी मैच रजिस्टर्ड ब्रांड और यूज़ केस के स्तर पर होता है, न कि सिर्फ हर मैसेज के अंदर के शब्दों में। एक कैंपेन बिज़नेस नेम, मैसेजेस के मकसद का विवरण, और अक्सर वेबसाइट के लिंक के साथ रजिस्टर होता है। अगर इन तीनों में से कोई एक भी एडल्ट कंटेंट जैसा पढ़ा जाए, तो फिल्टर पूरे कैंपेन को रिजेक्ट कर सकता है, भले ही असली SMS टेक्स्ट सिर्फ एक नंबर और "कोड" शब्द हो। यह वह डिटेल है जो ऑपरेटर सबसे ज़्यादा मिस करते हैं: मैसेज बॉडी को साफ करना उस रजिस्ट्रेशन को साफ नहीं करता जो उसके पीछे है।

"बस Verify पर स्विच कर लो" पूरा हल क्यों नहीं है

एक बार जब ऑपरेटर को समस्या समझ आ जाती है, तो आम सलाह होती है कि पूरी कमर्शियल मेसेजिंग कैंपेन रजिस्टर करने की कोशिश छोड़ दें और इसके बजाय ऑथेंटिकेशन के लिए बना एक डेडिकेटेड प्रोडक्ट इस्तेमाल करें, जैसे Twilio का Verify API या किसी और प्रोवाइडर का इसके बराबर प्रोडक्ट। यह सलाह एक हद तक सही है: सिर्फ एक बार इस्तेमाल होने वाले कोड्स के लिए बना प्रोडक्ट उस पूरी ब्रांड-और-कैंपेन रजिस्ट्रेशन प्रक्रिया से साफ-साफ छूट पाया हुआ है जो SHAFT फिल्टर को ट्रिगर करती है, और Twilio का अपना ऑनबोर्डिंग डॉक्यूमेंटेशन कन्फर्म करता है कि सिर्फ OTP कोड भेजने वाले कारोबार को उस प्रोडक्ट का इस्तेमाल करते समय कोई ब्रांड या कैंपेन रजिस्टर करने की ज़रूरत नहीं है।

इस छूट के साथ एक शर्त आती है जो शायद ही कभी उस सलाह में शामिल होती है जो लोग एक-दूसरे को दोहराते हैं: यह खास तौर पर प्रोवाइडर के अपने शेयर्ड, पूल्ड नंबरों के ज़रिए भेजने पर लागू होती है, न कि वेरिफिकेशन कोड्स को उस फोन नंबर के ज़रिए रूट करने पर जो कारोबार ने खुद रजिस्टर किया और जिसका वह मालिक है। अगर उसी OTP ट्रैफिक को अपने रजिस्टर्ड नंबर पर भेजा जाए, तो सामान्य रजिस्ट्रेशन नियम फिर से लागू हो जाते हैं, SHAFT कैटेगरी सहित। यह रास्ता असली है, लेकिन यह एक खास डिलिवरी पाथ से बंधा है, यह हर उस मैसेज के लिए एक सामान्य छूट नहीं है जिसमें बस छह अंकों का कोड शामिल हो।

इस छूट को अपनाने की एक कीमत भी है। कैरियर रजिस्टर्ड, वेट किए गए कैंपेन को डिलिवरी में प्रायोरिटी और ज़्यादा थ्रूपुट देते हैं, ठीक इसलिए क्योंकि उनके पीछे के कारोबार की जांच हो चुकी है। एक शेयर्ड, पूल्ड नंबर जो अनरजिस्टर्ड जैसे ट्रैफिक को ले जाता है, उस प्रायोरिटी ऑर्डर में नीचे बैठता है, जो डिलिवरी में एक छोटी लेकिन असली देरी और हाई-वॉल्यूम पीरियड्स में कभी-कभार थ्रॉटलिंग के रूप में दिखता है, जैसे कोई प्रोमोशनल कैंपेन या किसी फीचर लॉन्च के बाद नए साइनअप्स में उछाल। एक छोटी डायरेक्ट्री के लिए यह शायद ही कभी मैटर करता है। जो प्रोमोशन चला रही हो या नए एडवर्टाइज़र्स में सीज़नल उछाल देख रही हो, उसके लिए "दो सेकंड में डिलिवर" और "बीस सेकंड में डिलिवर" के बीच का फर्क एक पूरे हुए साइनअप और छोड़े गए साइनअप के बीच का फर्क है।

यह फिल्टर जो तय करता है कि कोई मैसेज पास होगा या नहीं, डिलिवरी पाथ से आगे भी उन सिग्नल्स को देखता है जिन्हें कोई कारोबार शायद ही कभी सीधे कंट्रोल कर पाता है: मैसेजेस का असली कंटेंट अप्रूव्ड यूज़ केस से कितना मैच करता है, और भेजने वाले नंबर की रेप्युटेशन किस तरफ जा रही है। यहां एक सपोर्ट मैसेज, वहां एक प्रोमोशनल कैंपेन, उसी चैनल से भेजा गया जो साफ-सुथरी OTP डिलिवरी के लिए सेट किया गया था, इस सिग्नल को हिला सकता है, बिना कहीं भी किसी सेक्शुअल शब्द के दिखे। वेरिफिकेशन चैनल को कारोबार द्वारा भेजे जाने वाले हर दूसरे तरह के मैसेज से पूरी तरह अलग रखना यहां कोई अच्छा-सा एक्स्ट्रा नहीं है; यह इस छूट को काम करते रहने देने का इकलौता तरीका है।

रजिस्ट्रेशन को टालना अब काम नहीं करता

यह फिल्टरिंग सख्त होने से पहले, आम शॉर्टकट यही था कि बिल्कुल रजिस्टर ही न करें: एक लोकल नंबर खरीदें, मैसेजेस भेजें, यह मान लें कि एक हिस्सा फिल्टर हो जाएगा, और इस नुकसान को कारोबार की एक लागत मानकर चलें। वह शॉर्टकट अब मौजूद नहीं है। अनरजिस्टर्ड US 10DLC मेसेजिंग बंद करने पर Twilio का अपना चेंजलॉग एक ऐसे फिल्टरिंग रेजीम का वर्णन करता है जो 2023 के बीच के महीनों में सख्त होता गया और उस साल अगस्त के आखिर के बाद, सारे अनरजिस्टर्ड US-बाउंड ट्रैफिक की पूरी ब्लॉकिंग बन गया, जो एरर कोड 30034 के साथ भेजने वाले को लौटाया जाता है। यह किसी सरचार्ज के साथ भारी फिल्टरिंग नहीं है। यह ऐसा ट्रैफिक है जो पहुंचता ही नहीं, बस इतना ही, और कोई फीस इसे वापस नहीं खरीद सकती।

यह फर्क इसलिए मैटर करता है क्योंकि जो कारोबार एक बार रजिस्टर हुआ, फ्लैग हुआ, और चुपचाप अपने रजिस्ट्रेशन स्टेटस पर नज़र रखना बंद कर दिया, वह भी उस पुराने, नरम रेजीम में नहीं है। एक कैंपेन जिसका ट्रस्ट स्कोर गिर गया हो, चाहे कंटेंट मिसमैच से, ऑप्ट-आउट कंप्लेंट्स में उछाल से, या सीधी निष्क्रियता से, वह अनरजिस्टर्ड ट्रैफिक जैसे ही ट्रीटमेंट की तरफ खिसकती है: कम थ्रूपुट, ज़्यादा फिल्टरिंग, और कोई साफ नोटिस नहीं कि कुछ बदल गया है, क्योंकि यह ब्लॉकिंग कैरियर के इंफ्रास्ट्रक्चर पर होती है, वहां से कई कदम दूर जहां कारोबार अपने खुद के लॉग्स देख रहा होता है।

यह वैसा ही रिस्क है जिसका ज़िक्र यह ब्लॉग पहले होस्टिंग, CDN और डोमेन इंफ्रास्ट्रक्चर के बारे में कर चुका है: प्रोडक्ट से कई लेयर दूर बैठा कोई वेंडर अपने शेड्यूल पर, अपनी पॉलिसी वजहों से, उसका एक हिस्सा बंद कर सकता है, और पहला संकेत होता है कुछ ऐसा न होना जो पहले चलता था। SMS फिल्टरिंग के साथ फर्क यह है कि यह "ऑफ स्विच" किसी एक कंपनी का फैसला नहीं है। यह एक नियम है जिसे सारे बड़े US कैरियर मिलकर लागू करते हैं, चाहे बीच में कोई भी मेसेजिंग प्लेटफॉर्म हो, एक जैसा लागू होता है, जिसका मतलब है कि प्रोवाइडर बदलने से इसे वैसे नहीं टाला जा सकता जैसे होस्ट बदलने से कभी-कभी एक कंपनी की पॉलिसी टाली जा सकती है।

रजिस्ट्रेशन के दौरान कैटेगरी मैच से बचने के लिए किसी एडल्ट क्लासिफाइड्स डायरेक्ट्री को कुछ और बताकर छिपाने का कोई सही तरीका नहीं है। ऐसा करने से उस इकलौती एप्लिकेशन पर परमानेंट रिजेक्शन का खतरा रहता है जो एक कैंपेन टाइप जमा कर सकता है, और गलत जानकारी से जुड़ा रिजेक्शन कभी रजिस्टर न होने से भी बुरा नतीजा है, क्योंकि यह सही रास्ते को भी बंद कर देता है। ईमानदार रास्ता, चाहे कितना भी असुविधाजनक हो, इकलौता ऐसा रास्ता है जो टेबल पर एक दूसरा मौका छोड़ता है।

फोन नंबर के भरोसेमंद न रहने से पहले क्या बनाना चाहिए

पहला ठोस कदम है फोन नंबर को एक गारंटीड इंफ्रास्ट्रक्चर मानकर चलना बंद करना, और साइनअप और लॉगिन फ्लो में शुरू से ही एक दूसरा चैनल बनाना, न कि किसी गुम कोड के बारे में पहली सपोर्ट टिकट आने के बाद। एक ऑथेंटिकेटर ऐप का कोड, ईमेल से भेजा गया मैजिक लिंक, या साइनअप पर जेनरेट होने वाला बैकअप कोड, यह सब कैरियर के फिल्टर को पूरी तरह बायपास करते हैं, क्योंकि इनमें से कोई भी उस मैसेज कैटेगरी पर निर्भर नहीं है जिसे कोई फोन नेटवर्क स्कैन कर रहा हो। इनमें से कोई भी ऑप्शन उस फ्लो के बाहर काम नहीं करता जो उनके लिए बनाया गया हो, इसलिए अभी कम से कम एक बनाना उससे कहीं कम खर्चीला है जो फिल्टर के साइनअप्स का एक साफ दिखने वाला हिस्सा खा जाने के बाद उसे पकड़ने में लगेगा।

दूसरा कदम है चैनल्स को पूरी तरह अलग रखना: जो नंबर या प्रोडक्ट एक-बार इस्तेमाल होने वाले कोड्स भेजता है, उसे कभी भी प्रोमोशनल SMS, री-एंगेजमेंट नज, या पेमेंट रिमाइंडर नहीं भेजना चाहिए। एक ही भेजने वाले रास्ते पर मैसेज टाइप्स को मिलाना ठीक वही पैटर्न है जो उस रेप्युटेशन सिग्नल को कमज़ोर करता है जिसे फिल्टर देख रहा है, और यह उस इकलौते चैनल को खतरे में डालता है जिसकी कारोबार को असल में ज़रूरत है, यानी लॉगिन कोड, ताकि एक मार्केटिंग चैनल को बचाया जा सके जिसके पास और भी विकल्प हैं।

तीसरा कदम है ईमानदारी से रजिस्टर करना और नतीजे को फाइनल मानना। चूंकि SHAFT कैटेगरी का रिजेक्शन आम तौर पर दोबारा सबमिट नहीं किया जा सकता, रजिस्ट्रेशन एक ही बार होना चाहिए, कारोबार का सटीक विवरण देकर, यह पहले से तय करने के बाद कि कारोबार Verify-जैसी छूट के थ्रूपुट और प्रायोरिटी वाले ट्रेड-ऑफ्स को स्वीकार कर सकता है या उसे पूरी रजिस्ट्रेशन चाहिए और वह उसके रिजेक्ट होने के लिए तैयार है। अंदाज़ा लगाना और उम्मीद करना उस इकलौते मौके को बर्बाद कर देता है जो असल में मैटर करता है।

चौथा कदम है यूज़र की शिकायत का इंतज़ार करने के बजाय डिलिवरी डेटा को सीधे देखना। हर बड़ा मेसेजिंग प्लेटफॉर्म हर मैसेज के लिए डिलिवरी रिसीट्स और एरर कोड्स दिखाता है; 30034 जैसे कोड्स का बढ़ता हिस्सा, या खास तौर पर वेरिफिकेशन चैनल पर गिरता डिलिवरी रेट, यह सबसे पहला उपलब्ध सिग्नल है कि कुछ बदल गया है, और यह उससे बहुत पहले आ जाता है जो किसी मंथली रिपोर्ट में पूरे हुए साइनअप्स की गिरावट के तौर पर दिखता है। जो ऑपरेटर हर महीने इस नंबर को चेक करता है, वह फिल्टरिंग में बदलाव को कुछ हफ्तों में पकड़ लेता है। जो सिर्फ कन्वर्ज़न चेक करता है, वह इसे एक क्वार्टर में पकड़ता है, तब तक जब यह असली कारोबार को नुकसान पहुंचा चुका होता है।

इनमें से कोई भी बात फोन नंबर को बेकार नहीं बनाती। यह इसे वही बना देती है जो यह असल में है: एक ऐसा चैनल जो कारोबार उन कैरियरों से उधार लेता है जिन्होंने इसे किसी एडल्ट क्लासिफाइड्स डायरेक्ट्री को ध्यान में रखकर नहीं बनाया, और जो बिना कोई वजह बताए ना कहने का हक अपने पास रखते हैं। इसे इस तरह ट्रीट करना, एक असली फॉलबैक और यह जो ले जाता है उसके साफ-साफ अलगाव के साथ, वही है जो उस दिन लॉगिन फ्लो को चलता रखता है जिस दिन फिल्टर तय करता है कि आपका कारोबार ठीक वही है जिसे रोकने के लिए वह लिखा गया था।

यह भी पढ़िए

11 मिनट का पाठ

SMS पंपिंग धोखाधड़ी: कैसे एक फोन वेरिफिकेशन फॉर्म किसी क्लासिफाइड साइट के मैसेजिंग बजट को चुपचाप खाली कर सकता है

वेरिफिकेशन SMS का बिल इसलिए नहीं बढ़ता क्योंकि ज्यादा लोगों ने साइन अप किया। यहां वह धोखाधड़ी है जो फिर भी बिल बढ़ा देती है, और वह तरीका जो इसे पकड़ लेता है इससे पहले कि एक महीने का खर्च किसी और के पास गायब हो जाए।

लेख पढ़िए

12 मिनट का पाठ

वयस्क क्लासिफाइड्स के लिए ईमेल डिलिवरेबिलिटी: वेरिफिकेशन कोड कभी क्यों नहीं पहुंचता

होस्टिंग अकाउंट एक शोर मचाने वाले नोटिस के साथ सस्पेंड होता है। ईमेल डिलिवरेबिलिटी की समस्या बिल्कुल शोर नहीं करती। जो साइट सत्यापन कोड और भुगतान रसीदों पर चलती है, उसके लिए यही खामोशी सबसे महंगी विफलता है।

लेख पढ़िए

11 मिनट का पाठ

नवीनीकरण भुगतान विफल होना: हाई रिस्क मर्चेंट अकाउंट पर अकाउंट अपडेटर वास्तव में क्या करता है

बैंक कार्ड फिर से जारी करता है, और एक विज्ञापनदाता की सदस्यता बिना किसी के फैसले के रुक जाती है। कार्ड अपडेट सेवाएं असल में क्या हल करती हैं, और कई हाई रिस्क प्रोसेसर इन्हें क्यों नहीं देते।

लेख पढ़िए

DEMO आज़माएँ

एस्कॉर्ट डायरेक्टरी सॉफ़्टवेयर, चलने को तैयार