 |
| >> โครงสร้าง API SMS ที่ใช้เชื่อมต่อกับระบบ DIY-SMS |
| >> ตัวอย่าง Code SMS ASP ในการเชื่อมต่อ API |
| >> ตัวอย่าง Code SMS PHP ในการเชื่อมต่อ API |
| >> ความหมายของ Retrun Code จาก API SMS |
| >> API SMS สำหรับเช็คยอดคงเหลือ |
 |
 |
โครงสร้าง API SMS ที่ใช้เชื่อมต่อกับระบบ DIY-SMS |
 |
| API (Application Programming Interface ) ทางผู้พัฒนาระบบ SMS ได้ทำการสร้าง API เพื่อให้เกิดความสะดวกในการส่งข้อความ SMS ผ่าน เว็บไซต์ หรือ Application ของผู้ใช้งานเอง ซึ่งการทำงานของ API ที่ผู้พัฒนาระบบ SMS ได้พัฒนาขึ้นมานี้ สามารถเชื่อมต่อกับ เว็บไซต์ หรือ Application ได้ทุกภาษา โดยที่นักพัฒนาระบบ SMS ที่จะนำ SMS ไปใช้งานจำเป็นต้อง ศึกษาโครงสร้าง และทำความเข้าใจ เกี่ยวกับ Parameter และ Retrun Code ต่างๆ ของ API SMS ที่ทางผู้พัฒนาระบบ SMS พัฒนาขึ้นมา ให้เข้าใจ และทดสอบก่อนนำไปใช้งานจริง. |
 |
 |
.:: HTTP API to submit messages ::. |
Parameter | ความหมาย |
| URL | http://www.diy-sms.com/sms/DIY_SMS_API.ASP |
| EmailAddress | Email ที่ใช้สมัครสมาชิกกับทาง diy-sms.com |
| PWD | Password ที่ใช้สมัครสมาชิกกับทาง diy-sms.com |
| Phone | หมายเลขโทรศัพท์ปลายทางที่ต้องการ ส่ง SMS ซึ่งต้องเป็นเลข 10 หลัก เช่น 0897777777 |
| SMode | ประเภทภาษาของข้อความที่ส่ง โดยถ้าส่งข้อความเป็น ภาษาอังกฤษ จะเท่ากับตัว E, ถ้า ข้อความที่จะส่งเป็นภาษาไทย จะต้องเท่ากับตัว T SMode=E (English) ,SMode=T (Thai) |
| Text | ข้อความ SMS ที่ต้องการส่ง |
| Sender | ชื่อผู้ส่งที่ต้องการ โดยต้องเป็นภาษาอังกฤษ หรือ ตัวเลขเท่านั้น โดยมีเงื่อนไขดังนี้ ถ้าเป็นภาษาอังกฤษ ต้องไม่เกิน 11 ตัวอักษร , ถ้าเป็นตัวเลขต้องไม่เกิน 18 ตัวอักษรโปรดตั้งชื่อผู้ส่งเป็นตัวเลข เพื่อหลีกเลี่ยงการ Block ข้อความของผู้ให้บริการ |
** ในการส่ง SMS ภาษาไทย และ SMS ภาษาอื่นๆ ที่ไม่ใช่ SMS ภาษาอังกฤษ จะต้องทำการแปลงข้อความ SMS ที่ต้องการส่ง ให้อยู่ในรูปแบบ UTF16 ซึ่งการเข้าแปลงข้อความ SMS ต่างๆ สามารถศึกษาได้จากเว็บนี้ http://rishida.net/tools/conversion/
ตัวอย่างผลลัพธ์จากการแปลงเป็น UTF-16
ข้อความ "ทดสอบข้อความ" เมื่อแปลงเป็น UTF-16 จะได้ผลลัพธ์เป็น "0E170E140E2A0E2D0E1A0E020E490E2D0E040E270E320E21"
|
เมื่อนักพัฒนาระบบ ทำการส่งข้อมูล SMS ผ่าน http จะอยู่ในรูปแบบเหมือนตัวอย่าง ดังนี้
เมื่อส่งข้อความ SMS ภาษาไทย
http://www.diy-sms.com/sms/DIY_SMS_API.ASP?EmailAddress=xxxxx&PWD=xxxxx&Phone=0897777777&SMode=T&Sender=diy-sms.com&Text=0E170E140E2A0E2D0E1A0E020E490E2D0E040E270E320E21
เมื่อส่งข้อความ SMS ภาษาอังกฤษ
http://www.diy-sms.com/sms/DIY_SMS_API.ASP?EmailAddress=xxxxx&PWD=xxxxx&Phone=0897777777&SMode=E&Sender=diy-sms.com&Text=Test SMS from www.diy-sms.com
|
|
|
 |
.:: ตัวอย่าง Code SMS ASP ในการเชื่อมต่อ API ::. |
Username = "xxxx"
Password = "xxxx"
Text = "xxxx"
PhoneNumber = "xxxx"
SMSMode = "E"
SName = "xxxx"
Message = urlencode(Text)
strData = "Phone="&PhoneNumber &"&EmailAddress=" & Username & "&PWD=" & Password & "&Text=" & Message & "&SMode=" & SMSMode & "&Sender=" & SName
Set xmlHTTP = CreateObject("MSXML2.ServerXMLHTTP")
xmlHTTP.Open "POST", "http://www.diy-sms.com/sms/DIY_SMS_API.ASP", False
xmlHTTP.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded"
xmlHTTP.SetRequestHeader "Content-Length", Len(strData)
xmlHTTP.SetRequestHeader "Connection", "close"
xmlHTTP.Send strData
strReturn = xmlHTTP.ResponseText
Set xmlHTTP = Nothing
Response.write "strReturn="&strReturn <<<<<<<<<<<<< ค่าที่ทาง diy-sms ตอบกลับมา ซึ่งมีความหมาย ดูได้ที่ ความหมายของ Retrun Code
|
|
|
 |
.:: ตัวอย่าง Code SMS PHP ในการเชื่อมต่อ API ::. |
.:: ตัวอย่าง Code ส่ง SMS PHP ที่สามารถนำเอาไปใช้งานได้จริง ::. |
$Username = "xxxx"
$Password = "xxxx"
$Text = "xxxx"
$PhoneNumber = "xxxx"
$SMSMode = "E"
$SName = "xxxx"
$message = urlencode($Text);
$data = "EmailAddress=" . $Username . "&PWD=" . $Password . "&Text=" . $message . "&Phone=" . $PhoneNumber. "&SMode=" . $SMSMode . "&Sender=" . $SName;
$ch = curl_init('http://www.diy-sms.com/sms/DIY_SMS_API.ASP');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch); //This is the result from diy-sms
curl_close($ch);
|
|
|
 |
.:: ความหมายของ Retrun Code จาก API SMS::. |
 |
| ทุกครั้งที่ทำการ ส่งข้อความ SMS ระบบของ diy-sms จะมีการส่งผลการส่งกลับมาทุกครั้ง ซึ่งการตอบกลับของระบบ จะตอบกลับ มาในรูปแบบ ดังนี้ |
Code|CELL_NO:MESSAGE ID เช่น 1701|66858585933:37ad90a4-c782-4134-b526-64a9507080d5 |
Code | ความหมาย |
| 1701 | Success ส่งได้สำเร็จ |
| 1702 | Invalid URL Error, ผิดพลาด ซึ่งอาจจะเกิดจากการที่ส่งข้อมูลไม่ครบ เช่น มี parameter บางตัวไม่ได้กำหนดค่า (ไม่ได้ส่งไป, มีค่าเป็น ค่าว่าง) เป็นต้น |
| 1703 | Invalid value in username or password field, ไม่ได้ส่ง Username หรือ Password. |
| 1705 | Invalid Message, ไม่พบข้อความที่ต้องการส่ง. |
| 1706 | Invalid Destination, ไม่พบหมายเลขโทรศัพท์ ปลายทาง ที่ต้องการส่งข้อความ |
| 1707 | Invalid Sender, ไม่พบชื่อผู้ส่ง |
| 1709 | User validation failed, ชื่อ หรือ รหัสผ่านไม่ถูกต้อง |
| 1025 | Insufficient Credit, เครดิตไม่พอ |
|
 |
.:: API SMS สำหรับเช็คยอดคงเหลือ ::. |
 |
| ผู้พัฒนาระบบสามารถ เช็คยอดคงเหลือได้ง่ายๆ ผ่านทาง API SMS โดยมีโครงสร้าง และ Parameter ของ API SMS ดังนี้ี้ |
Parameter | ความหมาย |
| URL | http://www.diy-sms.com/sms/DIY_SMS_API_CR.ASP |
| EmailAddress | Email ที่ใช้สมัครสมาชิกกับทาง diy-sms.com |
| PWD | Password ที่ใช้สมัครสมาชิกกับทาง diy-sms.com |
|