Messaging
SMS segment कैलकुलेटर
कैरियर SMS का बिल segment के हिसाब से बनाते हैं, मैसेज के हिसाब से नहीं। जो भेजना है वह टाइप करें और देखें कि यह कहां बंटता है, किस encoding में जाता है, और हर हिस्सा दोबारा जोड़ने के लिए कितना रोक लेता है।
segment किससे तय होता है
एक अकेला SMS 140 bytes ले जाता है। इसमें कितने कैरेक्टर समाते हैं यह अल्फ़ाबेट पर निर्भर करता है। सादा Latin टेक्स्ट 7-bit GSM-7 अल्फ़ाबेट में प्रति मैसेज 160 कैरेक्टर तक पैक होता है। जिस पल आप कोई ऐसा कैरेक्टर जोड़ते हैं जिसे वह अल्फ़ाबेट दर्शा नहीं सकता — जैसे कोई emoji, कोई एक्सेंट वाली लिपि, या कोई घुमावदार कोट — पूरा मैसेज 16-bit UCS-2 में बदल जाता है और सीमा घटकर 70 रह जाती है।
सीमा पार करते ही मैसेज हिस्सों में बंट जाता है। हर हिस्सा एक छोटा User Data Header रोक लेता है ताकि पाने वाला फ़ोन उन्हें क्रम में दोबारा जोड़ सके, यही वजह है कि एक जुड़ा हुआ मैसेज प्रति हिस्सा 160 के बजाय 153 GSM-7 कैरेक्टर रखता है (या UCS-2 में 70 के बजाय 67)। नीचे दिया कैलकुलेटर आपके टाइप करते ही यह बंटवारा लाइव दिखाता है।
GSM-7
डिफ़ॉल्ट 7-bit अल्फ़ाबेट: A–Z, अंक, आम विराम-चिह्न, और कुछ यूरोपीय अक्षर। अकेले 160 कैरेक्टर, बंटने पर प्रति हिस्सा 153। कुछ चिह्न दो-दो कैरेक्टर के बराबर पड़ते हैं: घुमावदार ब्रेसेज़, चौकोर ब्रैकेट, ^, ~, |, बैकस्लैश और €।
UCS-2
जो कुछ GSM-7 encode नहीं कर सकता उसके लिए फ़ॉलबैक। अकेले 70 कैरेक्टर, प्रति हिस्सा 67। एक भी अलग emoji पूरे मैसेज को यहां ले आता है, इसलिए भेजने से पहले यह जान लेना फ़ायदेमंद है।
Smart encoding
ज़्यादातर कैरेक्टर जो किसी मैसेज को UCS-2 में धकेल देते हैं, विदेशी लिपियां होती ही नहीं। ये टाइपोग्राफ़िक मिलते-जुलते कैरेक्टर होते हैं जिन्हें फ़ोन कीबोर्ड या किसी डॉक से पेस्ट चुपके से डाल देता है: घुमावदार “smart” कोट, एक em dash, एक एलिप्सिस, एक non-breaking space। इंसान को ये एक जैसे दिखते हैं लेकिन चुपचाप आपका segment काउंट दोगुना कर देते हैं।
Smart encoding मैसेज बाहर जाने से पहले उन कैरेक्टर को उनके सादे GSM-7 समकक्षों में बदल देती है: घुमावदार कोट सीधा हो जाता है, em dash हाइफ़न बन जाता है, एलिप्सिस तीन बिंदु बन जाता है। जो मैसेज सिर्फ़ non-GSM लगता था वह GSM-7 में ही रहता है और कम हिस्सों का बिल बनता है। जिन कैरेक्टर का कोई GSM-7 समकक्ष नहीं है (emoji, चीनी, जापानी, कोरियाई, अरबी, हिब्रू, थाई) उन्हें छुआ नहीं जाता और वे अब भी UCS-2 मजबूर करते हैं।
Bird पर, SMS options में smartEncoding: true सेट करके इसे प्रति मैसेज चालू करें। पूरे कैरेक्टर मैप के लिए smart-encoding docs पढ़ें। नीचे का टॉगल ठीक-ठीक प्रीव्यू देता है कि यह आपके टेक्स्ट के साथ क्या करता है।
अपना मैसेज जांचें
नीचे पेस्ट या टाइप करें। आपके बढ़ने के साथ काउंट अपडेट होते हैं, कैरेक्टर मैप जो कुछ अतिरिक्त खर्च कराता है उसे फ़्लैग करता है, और smart encoding दिखाती है कि यह क्या बदलेगी।
आपका मैसेज
सब कुछ आपके browser में ही गिना जाता है। आपका मैसेज कभी इस पेज से बाहर नहीं जाता।