משלוח סמס מתוך תוכנה ללא תלות בחברת סלולר

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

נניח שאתם רוצים להציע מוצר או שירות אשר כולל במסגרתו גם משלוח הודעות SMS. ההודעות עשויות להיות מקומיות (בארץ בלבד), או בינלאומיות (מכל מדינה לכל מדינה).

חברה בריטית ותיקה בשם CardBoardFish, מציעה תשתית טכנולוגית כזו, המקיפה את רוב מדינות העולם, ותעריף משלוח SMS בישראל (לצורך הדוגמה) יעלה כמחצית האגורה.

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

הדרך לצרוך שירות כזה הוא באמצעות התממשקות. זה יכול להיות אתר אינטרנט שמציע שירות הכולל משלוח SMS, או תוכנה (Desktop Applition), כאשר הדרכים להתממשק למערכת הנן:

  1. המרת מייל לסמס. שיטת Mail2SMS.
  2. פנייה לשרת HTTP באמצעות פקודת GET.
הטכנולוגיות הנתמכות על ידי החברה הן:
SMPP 3.3 ו-3.4
CIMD2
OIS
שפות התכנות הנתמכות כוללות: Soap, XML, Java, Visual Basic, PHP ו-Pearl. 
שפת ++C אינה נתמכת ישירות. פניתי לחברה וקיבלתי תשובה שאין להם תמיכה או דוגמאות קוד לשפה זו, שכנראה הולכת ונעלמת מן העולם. למרות זאת, כתבתי בעצמי תוכנה קטנה שעושה שימוש בשפה זו ובMFC אשר שולחת SMS לכל יעד בארץ ובעולם, ואף נידבתי את קוד התוכנה (עכשיו יש להם תמיכה ב++C … ).
התוכנה נראית כך:
והקסם מאחוריה הוא בהתממשקות שנעשית באופן הבא:
כל משתמש (כולל משתמש Trial כמו במקרה שלי), מקבל שם משתמש וסיסמה אשר הופכים לחלק מקוד התוכנה. 
התוכנה שלי עושה שימוש בClass קוד פתוח בשם WinHTTPClient אשר חיבר תוכניתן סיני בשם Sheng Chi.
כתבתי רוטינה בשם SendSMS אשר משמשת ה"מנוע" של התוכנה.
כפי שתראו יש צורך לקבוע פרמטר בשם DC עם ערך "4" ולקדד את ההודעה כHexadecimal, זאת על מנת שתתמוך בתווים בעברית (ובשפות נוספות), ולצורך כך כתבתי פונקציה נוספת בשם ConvertHex:
שם השולח יכול להיות מספר טלפון, או שם (באותיות לטיניות בלבד, וללא רווחים).
כתובת הנמען כוללת קידומת מדינה, ומספר טלפון (ללא ה"0" בהתחלה).
והעלות, כאמור, חינם לתקופת נסיון ולאחר מכן 0.006 יורו (כ-2 אגורות) להודעה.
מודעות פרסומת

כמה קל לגבות (ולגנוב) הודעות סמס

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

מי שמשתמש בITunes ומחזיק במכשיר IPhone אולי יופתע לגלות עד כמה קל לשלוף את תוכן הודעות הסמס מהמחשב שלו.

אחרי חיבור המכשיר למחשב, מתבצע סינכרון, ולמרות שאין כל חיווי לכך בתוכנת ITunes שלכאורה מסנכרנת רק קבצי מדיה, הרי שמאותו רגע המידע הרגיש שמור כבר בתיקיה הבאה:

c:\users\שם המשתמש שלך\appdata\roaming\apple computer\Mobilesync\backup\תיקיה זמנית

עכשיו נסביר מה זה מה:

"שם המשתמש שלך", השם דרכו עשית לוג אין לWindows.

תיקיה זמנית, תיקיה בעלת שם אקראי שנוצרת על ידי ITunes. לכל מכשיר אייפון תיווצר תיקיה נפרדת.

אם תפתחו תיקיה זו תראו קבצים מוזרים למראה…

Image

אולם הקובץ בו נשמרות כל תכתובות הסמס, הנו קובץ ייחודי בעל שם אחיד לכולם.

שם הקובץ: 3d0d7e5fb2ce288813306e4d4636395e047a3d28 .

כן. פשוט וקליט…

נפתח את הקובץ ונראה משהו כזה:

Image

אולם בעזרת ידע או כלים מתאימים ניתן לשלוף כל הודעה, כולל הודעות שנשלחו או התקבלו, מאז שהמכשיר היה בשימוש.

רק לדוגמה, ניתן לטעון קובץ זה לאתר הבא, ולהמיר אותו לפורמט קריא כמו PDF או אקסל.

גם המרה לפורמט HTML אפשרית בקלות. לדוגמה:

<html><head><meta http-equiv="content-type" content="text/html; charset=UTF-8"></head><body>
<table border='0'><tr style='font-weight: bold'><td>Date</td><td>Number</td><td>Sent</td><td>Text</td></tr>
<tr><td>'2011-09-12 03:03:00'</td><td>'07777'</td><td></td><td>'בהתאם להחלטת משרד התקשורת, חסימת זיהוי מספר הפלאפון (קבועה או חד פעמית) אינה חלה בעת התקשרות לשירותי חירום ציבוריים'</td></tr>
<tr><td>'2011-09-12
אשר יוצג כך:
כמה פשוט…
ואין מדובר בתצוגת ההודעות כפי שהיא מופיעה בטלפון הנייד שלכם (רק ההודעות האחרונות) אלא כל ההודעות מיומו הראשון של המכשיר.
והרי לכם סיבה נוספת להגן על המחשב שלכם.