Mijozlaringizga oddiy uchrashuv eslatmasini yuborib, SMS hisob-kitobingiz hech qanday sababsiz ikki baravar ko'payib ketganiga hech duch kelganmisiz? Bu holat bevosita SMS xabarlarni kodlash (encodage sms message) bilan bog'liq bo'lib, u ko'pincha e'tibordan chetda qoladigan, ammo aloqa byudjetingizga jiddiy ta'sir ko'rsatadigan texnik jihatdir.

SMS xabarini kodlash nima?

SMS kodlash ta'rifini (sms éfiniton encodage) aniq tushunish uchun mobil tarmoqlar barcha belgilarni bir xil o'qimasligini bilish kerak. Kodlash — bu sizning xabaringizdagi harflar, raqamlar va belgilarni telekommunikatsiya operatorlari uzata oladigan ikkilik ma'lumotlarga (0 va 1 lardan iborat) aylantiruvchi texnik jarayondir.

Tarixiy jihatdan, mobil tarmoq juda yengil xabarlarni uzatish uchun mo'ljallangan. Bugungi kunda SMS yuborishni ikkita asosiy standart tartibga soladi:

  • Le GSM-7 : Har bir belgi uchun 7 bitdan foydalanadigan standart kodlash. U bitta SMSda 160 tagacha belgi yozish imkonini beradi.
  • L'UCS-2 (Unicode) : Har bir belgi uchun 16 bitdan foydalanadigan boyroq kodlash turi bo'lib, u lotin bo'lmagan alifbolar, murakkab maxsus belgilar va emojilar uchun zarur. U bitta SMS hajmini atigi 70 ta belgi bilan cheklaydi.

GSM-7 vs UCS-2 : Maxsus belgilar va emojilar tuzog'i

Aynan shu joyda kichik biznes egalari (go'zallik salonlari, tibbiyot klinikalari, avtomaktablar) uchun qiyinchiliklar boshlanadi. Standart GSM-7 jadvalidan tashqaridagi bitta oddiy belgi butun xabaringizni Unicode rejimiga o'tishga majbur qiladi.

"ç", "ê" yoki "ë" kabi harflar uchun urg'uli maxsus belgilarni SMSda kodlash (encodage sms caracteres speciaux accents), shuningdek, UCS-2 kodlash orqali SMSda emoji yuborish (envoyer des emojis par sms encodage ucs2) xabardagi belgilar limitini darhol 160 tadan 70 taga qisqartiradi. Shunday qilib, emojining SMS kodlanishiga ta'siri (impact emoji encodage sms) darhol namoyon bo'ladi: xabaringiz bir nechta qismlarga (segmentlarga) bo'linadi, bu esa aksariyat an'anaviy provayderlarda yuborish narxini bir necha baravar oshiradi.

Bu farqni yaxshiroq tasavvur qilish uchun quyidagi solishtirish jadvalini ko'ring:

Kodlash standartiBelgi limiti (1 SMS)Ruxsat etilgan belgilarOddiy tariflashga ta'siri
GSM-7160 ta belgiAsosiy lotin alifbosi, raqamlar, bo'shliqlar va ba'zi keng tarqalgan urg'uli harflar (é, à, è, ù)Standart tarif (1 kredit)
UCS-2 (Unicode)70 ta belgiBarcha alifbolar (arab, kirill, xitoy), emojilar, murakkab urg'uli harflar (ç, ê, ï)Ikki yoki uch baravar qimmatroq tarif (bir nechta segmentlar)

Unicode kodlashning SMS narxiga ta'siri

Unicode kodlashning SMS narxiga ta'siri (impact de l'encodage unicode sur le prix du sms) Twilio yoki Plivo kabi an'anaviy SMS shlyuzlarining eng katta moliyaviy tuzog'idir. Ushbu platformalar SMS "segmenti" uchun haq oladi. Bitta segment GSM-7 da 160 belgiga to'g'ri keladi, ammo bitta Unicode belgisi aniqlanishi bilanoq u 70 belgiga tushib ketadi.

Tasavvur qiling, siz avtoservisni boshqarasiz va quyidagi uchrashuv eslatmasini yuborasiz:

"Salom! Avtomobilingiz tayyor. Iltimos, uni soat 18:00 gacha servisdan olib keting. Ko'rishguncha!"

Ushbu xabar 107 ta belgidan iborat. Agar siz uni shunday yuborsangiz, u standart GSM-7 kodlashidan foydalanadi (urg'uli bosh harf "À" ba'zi shlyuzlarda muammo tug'dirishi mumkin, ammo qolganlari standartdir). Bu sizga 1 segment SMS narxiga tushadi.

Agar xabarni samimiyroq qilish uchun oxiriga oddiygina mashina emojisini qo'shsangiz, xabar UCS-2 rejimiga o'tadi. Endi sizning 108 ta belgingiz Unicode'ning qat'iy 70 belgilik limitidan oshib ketadi. Natijada xabaringiz 2 ta segmentga bo'linadi. Oddiy operatorlarda siz faqat bitta emoji tufayli ushbu xabar uchun ikki baravar ko'p pul to'laysiz.

Aynan shunday kutilmagan xarajatlarning oldini olish uchun ko'plab kompaniyalar muqobil echimlarni qidirmoqdalar. MySMSGate yordamida siz xabarlarni yuborish uchun o'zingizning Android smartfoningizni ulaysiz. Biz yuborilgan har bir SMS uchun uning uzunligi yoki kodlanishidan qat'i nazar, 0,02 $ miqdorida yagona va qat'iy tarifni hisoblaymiz. Yashirin segmentlar uchun to'lovlar yo'q. Tejamkor variantlar haqica ko'proq bilish uchun kichik biznes uchun eng arzon SMS API shlyuzi haqidagi qo'llanmamiz bilan tanishing.

Dasturchilar uchun : SMS API orqali yuborishda qaysi kodlashni tanlash kerak?

Si vous intégrez des notifications SMS dans votre propre application ou logiciel de gestion, la question technique se pose : SMS API yuborish uchun qaysi kodlashni tanlash kerak (quel encodage choisir pour envoyer un sms api) ?

Deyarli barcha zamonaviy API'lar, jumladan, MySMSGate ham UTF-8 formatida kodlangan JSON so'rovlarini qabul qiladi. Biroq, SMS shlyuzi keyinchalik ushbu UTF-8 oqimini mobil tarmoqqa moslashtirishi kerak. Maksimal moslikni ta'minlash va buzilgan belgilardan (taniqli so'roq belgilari yoki qora kvadratlar) qochish uchun SMS shlyuzining UTF-8 kodlanishini to'g'ri sozlash (configurer encodage utf8 sms gateway) juda muhimdir.

Murakkab bo'linishlar haqida qayg'urmasdan, MySMSGate API orqali to'g'ri kodlangan xabarni yuborish uchun Python tilidagi oddiy misol:

import requests

url = "https://mysmsgate.net/api/v1/send"
headers = {
    "Authorization": "Bearer VOTRE_CLE_API",
    "Content-Type": "application/json"
}
payload = {
    "to": "+33612345678",
    "message": "Votre rendez-vous est confirmé pour demain à 14h ! ",
    "sim_slot": 1
}

response = requests.post(url, json=payload, headers=headers)
print(response.json())

Bizning API konvertatsiyani shaffof tarzda amalga oshiradi. Bundan tashqari, tizimimiz xabar yetkazib berilmagan taqdirda avtomatik ravishda pulni qaytarish mexanizmiga ega, bu esa sizga faqat haqiqatda ishlagan xizmatlar uchun to'lov qilishni kafolatlaydi. O'zingizning serveringizga to'liq integratsiya qilish uchun Android telefondan API orqali SMS yuborish bo'yicha qo'llanmamizni o'qing.

SMSni ikki marta kodlashdan qanday qochish kerak?

SMSni ikki marta kodlashdan qochish (comment eviter sms double encodage) uchun kodingiz HTTP kutubxonangiz tomonidan qayta ishlanayotgan satrga qo'shimcha kodlash funksiyasini (masalan, urlencode yoki utf8_encode) qo'llamasligiga ishonch hosil qiling. Ikki marta kodlangan ma'lumotlarni yuborish mijozlaringizga g'alati belgilar ketma-ketligidan iborat bo'lgan o'qib bo'lmaydigan xabarlar borishiga olib keladi.

sms/mms video kodlash presetining o'ziga xos holati

Mobil telekommunikatsiya sohasida ba'zan sms/mms video kodlash preseti (preset encodage sms/mms video) atamasiga duch kelishingiz mumkin. Matnni kodlashdan (GSM-7 yoki UCS-2) farqli o'laroq, bu preset MMS orqali yuboriladigan multimedia fayllarini (videolar, animatsiyali rasmlar) siqish va formatlashga tegishlidir.

Mobil tarmoqlar MMS uchun juda qattiq hajm cheklovlarini qo'yadi (ko'pincha operatorga qarab 300 KB yoki 600 KB dan kam). Video kodlash preseti videoning o'lchamlari va bitreytini keskin kamaytirish imkonini beradi, shunda u operator shlyuzi tomonidan rad etilmasdan yetkazib beriladi. Agar sizning maqsadingiz faqat matnli bildirishnomalar yoki operatsion eslatmalar yuborish bo'lsa, bu murakkab sozlamalar haqida qayg'urishingizga hojat yo'q.

SMS kodlash bo'yicha ko'p beriladigan savollar

Quyida biznes SMS-larini yuborishda kodlash va maxsus belgilarni boshqarish bo'yicha eng ko'p beriladigan savollarga javoblar keltirilgan.

Nima uchun bitta oddiy urg'uli belgi SMS narxini ikki baravar oshirishi mumkin?

"ç", "ê" yoki "à" kabi ba'zi belgilar standart GSM-7 alifbosiga kirmaydi. Ushbu belgilardan birortasini ishlatishingiz bilanoq, yuborish dasturi butun xabarni Unicode (UCS-2) rejimiga o'tkazadi. Shunda bitta SMS limiti 160 tadan 70 ta belgiga tushadi. Agar matningiz 70 belgidan oshsa, u ikkita segmentga bo'linadi va an'anaviy operatorlarda yuborish narxi ikki baravar ko'payadi.

SMS yuborishdan oldin uning kodlanishini qanday sinab ko'rishim mumkin?

Internetda SMS segmentlarini sinab ko'rish uchun maxsus vositalar mavjud (ko'pincha "SMS Length Calculator" deb ataladi). Ular matningizni joylashtirish va ko'rinmas belgi yoki emoji xabarni Unicode'ga o'tkazishga majbur qilayotganini, shuningdek, provayderingiz tomonidan aniq nechta segment uchun haq olinishini darhol ko'rish imkonini vaqt beradi.

MySMSGate qanday qilib Unicode bilan bog'liq ortiqcha xarajatlarning oldini olishga yordam beradi?

Har bir segment uchun alohida haq oladigan an'anaviy API'lardan (Twilio, Plivo) farqli o'laroq, MySMSGate yuborilgan xabar uchun uning uzunligi, maxsus belgilar yoki emojilar ishlatilganidan qat'i nazar, 0,02 $ miqdorida yagona va qat'iy tarifni qo'llaydi. Xabarlaringiz bizning platformamizga ulangan shaxsiy Android smartfoningiz orqali to'g'ridan-to'g'ri o'tadi, bu esa asossiz segmentatsiya to'lovlarini yo'q qiladi.