מפתחים

POST/v3/smslength

חישוב הקידוד ומספר מקטעי ה-SMS

ניתוח הטקסט הסופי של ההודעה ללא שליחתו וללא הערכת עלויות המסירה.

בעמוד זה
  1. ניתוח הטקסט המדויק של ההודעה
  2. בקשה
  3. תגובה
  4. מגבלות קידוד ומקטעים
  5. שגיאות וטקסט ריק
  6. שימוש בתוצאה לפני השליחה

ניתוח הטקסט המדויק של ההודעה

חשבו את הקידוד, האורך המקודד ומספר מקטעי ה-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
  }
}
שדות תוצאת המחשבון
שדהמשמעות
charset0 עבור GSM-7 או 2 עבור UTF-16.
encodingGSM-7 או UTF-16.
parts, countשני שמות למספר המחושב של מקטעי ה-SMS. שניהם שווים לאפס כאשר הטקסט ריק.
units, charsשני שמות ליחידות מקודדות. מספרן אינו בהכרח שווה למספר התווים הנראים לעין.
single_limitמגבלת היחידות המקודדות למקטע יחיד בקידוד שנבחר.
multipart_limitמגבלת היחידות המקודדות לכל מקטע לאחר הפחתת התקורה הנדרשת לשרשור המקטעים.

מגבלות קידוד ומקטעים

המגבלות שבהן משתמש המחשבון
קידודמקטע יחידמקטע בהודעה מרובת מקטעים
GSM-7160 יחידות של שבע סיביות153 יחידות של שבע סיביות
UTF-1670 יחידות קוד67 יחידות קוד

תווים ממערכת ההרחבה של GSM-7, כגון ^, סוגריים מסולסלים, סוגריים מרובעים, לוכסן הפוך, קו אנכי, טילדה וסימן האירו, צורכים שתי יחידות של שבע סיביות. תו שאינו כלול ב-GSM-7 מעביר את ההודעה כולה לספירה לפי UTF-16. אימוג'י שמחוץ למישור הרב-לשוני הבסיסי משתמש בשתי יחידות UTF-16; רצף אימוג'י הנראה לעין עשוי להכיל כמה נקודות קוד.

לדוגמה, 160 אותיות רגילות בקידוד GSM-7 נכנסות במקטע אחד, ואילו 161 דורשות שני מקטעים. שמונים תווי ^ משתמשים ב-160 יחידות ונכנסים במקטע אחד; שמונים ואחד משתמשים ב-162 יחידות ודורשים שני מקטעים. שלושים וחמישה אימוג'י פשוטים שמחוץ למישור הרב-לשוני הבסיסי משתמשים ב-70 יחידות UTF-16 ונכנסים במקטע אחד; שלושים ושישה משתמשים ב-72 יחידות ודורשים שני מקטעים. סימנים משולבים ורצפי אימוג'י מחוברים עשויים לשנות את הספירות האלה.

שגיאות וטקסט ריק

שדה text חסר, מערך או אובייקט במקום ערך סקלרי, או קידוד UTF-8 לא תקין גורמים להחזרת קוד API מסוג 403. קראו בתגובת ה-JSON את status.code ואת status.msg, וכן את סטטוס ה-HTTP; נקודת קצה זו מחזירה את הקוד כמחרוזת. מחרוזת ריקה היא תקינה ומחזירה אפס יחידות ואפס מקטעים.

שימוש בתוצאה לפני השליחה

המחשבון שנבדק אינו כולל שליחת הודעה, קריאה למפעיל תקשורת או חיוב חשבון. התוצאה שלו היא ניתוח של הטקסט שנשלח לבדיקה, ואינה הבטחה למסירה או חשבון סופי לתשלום. שליחה עשויה להיות כרוכה בתעריפים לפי יעד, בעמלות של מפעילי תקשורת, בדרישות קמפיין ובשינויים נוספים בטקסט. חשבו מחדש לאחר שינוי ההודעה, ולאחר מכן השתמשו בתהליך השליחה המאושר ובתמחור העדכני של החשבון.