วิเคราะห์ข้อความตรงตามที่จะส่งจริง
คำนวณการเข้ารหัส ความยาวหลังเข้ารหัส และจำนวนส่วนของ SMS สำหรับข้อความที่คุณตั้งใจจะส่ง เอนด์พอยต์นี้ไม่ส่ง SMS ไม่จองเส้นทาง และไม่ส่งคืนใบเสนอราคาค่าจัดส่ง ให้ส่งข้อความฉบับสุดท้ายที่ครบถ้วน รวมถึงข้อความท้ายข้อความ ลิงก์ หรือข้อความสำหรับยกเลิกรับข้อความที่ขั้นตอนการส่งของคุณเพิ่มเข้าไป
คำขอ
ยืนยันตัวตนโดยใช้บัญชี API ของคุณที่เปิดใช้งานแล้วและที่อยู่ IP ต้นทางที่ได้รับอนุญาตสำหรับบัญชีนั้น เก็บข้อมูลรับรองไว้ในที่จัดเก็บข้อมูลลับฝั่งเซิร์ฟเวอร์ ส่งสตริง UTF-8 ในฟิลด์ text ตัวอย่างนี้ใช้ตัวแปรสภาพแวดล้อม
curl --silent --show-error --user "$API_USER:$API_PASSWORD" \
--data-urlencode 'text=Your message here' \
https://api.multitel.net/v3/smslengthรองรับข้อมูลขาเข้าที่เข้ารหัสแบบฟอร์ม และยังรองรับออบเจ็กต์ JSON เช่น {"text":"Your message here"} เมื่อไม่มีการส่งฟิลด์จากฟอร์มหรือคิวรี แนะนำให้ใช้ POST เพื่อไม่ให้ข้อความปรากฏใน URL หากมีข้อมูลขาเข้าทั้งจากฟอร์มและคิวรี ระบบจะใช้ข้อมูลจากฟอร์ม อย่าใช้รูปแบบคำขอปะปนกัน
การตอบกลับ
{
"status": {
"code": "200",
"msg": ""
},
"response": {
"charset": 0,
"encoding": "GSM-7",
"count": 1,
"parts": 1,
"chars": 17,
"units": 17,
"single_limit": 160,
"multipart_limit": 153
}
}| ฟิลด์ | ความหมาย |
|---|---|
| charset | 0 สำหรับ GSM-7 หรือ 2 สำหรับ UTF-16 |
| encoding | GSM-7 หรือ UTF-16 |
| parts, count | ชื่อสองชื่อที่ใช้แทนจำนวนส่วนของ SMS ที่คำนวณได้ ทั้งสองค่าจะเป็นศูนย์เมื่อข้อความว่าง |
| units, chars | ชื่อสองชื่อที่ใช้แทนจำนวนหน่วยหลังเข้ารหัส ซึ่งไม่จำเป็นต้องเท่ากับจำนวนอักขระที่มองเห็น |
| single_limit | ขีดจำกัดจำนวนหน่วยหลังเข้ารหัสสำหรับข้อความส่วนเดียว เมื่อใช้การเข้ารหัสที่เลือก |
| multipart_limit | ขีดจำกัดจำนวนหน่วยหลังเข้ารหัสที่ใช้สำหรับแต่ละส่วน หลังหักพื้นที่ที่ใช้เป็นข้อมูลประกอบสำหรับการต่อข้อความหลายส่วนแล้ว |
การเข้ารหัสและขีดจำกัดของแต่ละส่วน
| การเข้ารหัส | ข้อความส่วนเดียว | แต่ละส่วนของข้อความหลายส่วน |
|---|---|---|
| GSM-7 | 160 หน่วยเซปเทต | 153 หน่วยเซปเทต |
| UTF-16 | 70 หน่วยรหัส | 67 หน่วยรหัส |
อักขระในชุดส่วนขยายของ GSM-7 เช่น ^ วงเล็บปีกกา วงเล็บเหลี่ยม แบ็กสแลช ขีดตั้ง เครื่องหมายทิลเดอ และสัญลักษณ์ยูโร ใช้พื้นที่สองหน่วยเซปเทต หากมีอักขระที่อยู่นอกชุด GSM-7 ข้อความทั้งฉบับจะเปลี่ยนไปนับแบบ UTF-16 อีโมจิที่อยู่นอกระนาบพหุภาษาพื้นฐานใช้สองหน่วย UTF-16 โดยลำดับอีโมจิที่มองเห็นอาจประกอบด้วยหลายจุดรหัส
ตัวอย่างเช่น ตัวอักษรทั่วไป 160 ตัวในชุด GSM-7 ใส่ได้ในหนึ่งส่วน แต่ 161 ตัวต้องใช้สองส่วน อักขระ ^ แปดสิบตัวใช้ 160 หน่วยและใส่ได้ในหนึ่งส่วน ส่วนแปดสิบเอ็ดตัวใช้ 162 หน่วยและต้องใช้สองส่วน อีโมจิแบบเรียบง่ายที่อยู่นอก BMP จำนวนสามสิบห้าตัวใช้ 70 หน่วย UTF-16 และใส่ได้ในหนึ่งส่วน ส่วนสามสิบหกตัวใช้ 72 หน่วยและต้องใช้สองส่วน เครื่องหมายประกอบอักขระและอีโมจิที่เชื่อมกันอาจทำให้จำนวนเหล่านี้เปลี่ยนไป
ข้อผิดพลาดและข้อความว่าง
หากไม่มีฟิลด์ text ใช้อาร์เรย์หรือออบเจ็กต์แทนค่าสเกลาร์ หรือข้อมูล UTF-8 ไม่ถูกต้อง ระบบจะส่งคืนรหัส API 403 ให้อ่านค่าใน JSON ทั้ง status.code และ status.msg ควบคู่กับสถานะ HTTP เอนด์พอยต์นี้ส่งคืนรหัสเป็นสตริง สตริงว่างเป็นค่าที่ใช้ได้และจะส่งคืนจำนวนหน่วยเป็นศูนย์และจำนวนส่วนเป็นศูนย์
ใช้ผลลัพธ์ก่อนส่งข้อความ
เครื่องคำนวณที่ผ่านการตรวจทานนี้ไม่มีการส่งข้อความ การเรียกใช้บริการของผู้ให้บริการเครือข่าย หรือการหักเงินจากบัญชี ผลลัพธ์เป็นการวิเคราะห์ข้อความที่ส่งเข้ามา ไม่ใช่การรับประกันการจัดส่งหรือยอดเรียกเก็บเงินสุดท้าย การส่งข้อความอาจมีอัตราค่าบริการตามปลายทาง ค่าธรรมเนียมผู้ให้บริการเครือข่าย ข้อกำหนดของแคมเปญ และการแปลงข้อความเพิ่มเติม ให้คำนวณใหม่หลังแก้ไขข้อความ แล้วจึงใช้ขั้นตอนการส่งที่ได้รับอนุมัติและราคาปัจจุบันของบัญชี