เขียน PHP เพื่อส่ง SMS

เทคนิคเกี่ยวกับการเขียนเว็บ และ Programming ที่เกี่ยวข้องครับ PHP, MySQL, ...

เขียน PHP เพื่อส่ง SMS

โพสต์โดย admin » พฤหัสฯ. 24 ก.พ. 2011 5:18 am

ปกติเราคุ้นกับการติดต่อเซิร์ฟเวอร์เมล์เพื่อส่งอีเมล์แจ้งเตือนจากคำสั่ง PHP ใช่ไหมครับ (ที่คุ้นเพราะมันฟรี)
แต่เดี๋ยวนี้เริ่มฮิตกับการส่ง SMS แจ้งเตือนแทนเมล์มากขึ้น
(เพราะเมล์ถ้ามือถือไม่ต่อเน็ตอยู่ หรือไม่ใช่สมาร์ทโฟน ก็คงเช็คเมล์ไม่สะดวกเท่าไร)
ตัวอย่างที่เห็นๆ เลยคือการส่ง One-Time Password (OTP) เวลาใช้ e-banking
หรือการส่ง Log แจ้งเตือนจากเซิร์ฟเวอร์ของพวกเอนจิเนียร์ที่ดูระบบตาม Provider ใหญ่ๆ ที่ uptime ค่อนข้างสำคัญ

งั้นผมจะลองอธิบายวิธีการเขียน PHP เพื่อแจ้งเตือนทาง SMS กันนะครับ
วิธีที่ใช้กันอยู่ปัจจุบัน เห็นอยู่ 2 แบบ
1. (ฟรี) ใช้ฟีเจอร์ Google Calendar ที่ส่งแจ้งเตือนยังเบอร์โทรศัพท์ "เจ้าของบัญชี" กูเกิ้ลได้ฟรี (นั่นหมายความว่าวิธีนี้ ต้องใช้ user/pass ของกูเกิ้ลของผู้ใช้รายนั้นๆ หรือพูดง่ายๆ คือคนที่จะได้รับแมสเสจต้องสมัครบริการนี้ด้วย ซึ่งถ้ามองจุดนี้คงไม่ค่อยยืดหยุ่นเท่าไร)

2. (เสียเงิน) ใช้บริการของบริษัทผู้ให้บริการส่ง SMS อีกทีหนึ่ง ซึ่งเรียกเซิร์ฟเวอร์ผู้ให้บริการพวกนี้ว่า "SMS Gateway" เวลาเขียนโปรแกรมติดต่อกับเซิร์ฟเวอร์ก็ขึ้นกับที่ผู้ให้บริการกำหนด ค่าใช้จ่ายก็จะคิดเหมาเช่น 1,000 message ต่อ 1,xxx บาท ตัวอย่างผู้ให้บริการก็เช่น http://www.icentric.co.th

ถ้าจะใช้ SMS Gateway โค้ดที่เขียนก็ต้องติดต่อกับผู้ให้บริการเองครับ
ดังนั้น จะเขียนวิธีสำหรับการใช้กับ Google Calendar เพื่อเป็นแนวทางสำหรับผู้ที่อยากทดลองใช้แล้วกันครับ
1) เปิดบัญชีกูเกิ้ลก่อน (เข้าไปที่หน้า Google Calendar เลย ถ้าไม่มีหรือไม่ได้ล็อกอินบัญชีกูเกิ้ลไว้ก่อน ก็จะมีลิงค์ให้ลงทะเบียนหรือล็อกอินก่อนเข้าใช้ครับ

2) ไปที่ การตั้งค่า (เมนูมุมบนขวา) > การตั้งค่าอุปกรณ์เคลื่อนที่ เพื่อกรอกเบอร์มือถือที่ต้องการทดลองส่ง และรับรหัสบืนยันจากกูเกิ้ลเป็น sms มาให้ เพื่อเปิดใช้งานครับ

3) คราวนี้เราก็ใช้โค้ดที่ลิงค์กับบริการของกูเกิ้ล Google Carlendar API ได้แล้วครับ ซึ่งบน PHP ที่นิยมจะใช้ไลบรารีของ Zend Framework (ดูรายละเอียดได้จาก http://code.google.com/intl/th/apis/gdata/articles/php_client_lib.html เลยครับ เพราะนอกจากฟีเจอร์ sms แล้ว เรายังใช้ไลบราลีนี้เพื่อลิงค์กับ API ของบริการอื่นๆ ของกูเกิ้ลได้ด้วย ส่วนวิธีการเขียนโค้ดเพื่อคุยกับ Calendar API อย่างละเอียด ให้ลองศึกษาที่หน้านี้ครับ http://code.google.com/intl/th/apis/calendar/data/1.0/developers_guide_php.html)

ดังนั้น เราก็ต้องไปดาวน์โหลดไลบราลีนี้มาก่อน ที่ http://framework.zend.com/releases/ZendGdata-1.7.3/ZendGdata-1.7.3.zip ซึ่งในนี้จะมีไฟล์ document, example เต็มไปหมด แต่ที่เราต้องการคือโค้ดไลบรารีในโฟลเดอร์ "Zend" ให้อัพโฟลเดอร์นี้ขึ้นเซิร์ฟเวอร์พร้อมตั้งค่า permission ให้เรียบร้อยพร้อมนำไปใช้อ้างอิงในไฟล์ PHP ต่อไป

4) เราจะใช้ฟังก์ชั่นใน Zend ที่ชื่อ Zend_Gdata_Calendar ซึ่งวิธีโดยละเอียดลองศึกษาจากเว็บนี้ครับ http://www.select2web.com/php/send-sms-free.html (ขอบคุณทางเว็บต้นฉบับด้วยนะครับ)

ลิงค์กลับไปยังหน้าหลัก -> LIEWnetwork วางะรบบร้านเน็ตร้านเกมส์
รับวางระบบร้านเนต-เกม-หอพัก Internet Cafe ติดต่อ LIEWNETWORK TEL : 082-644-1694 cycob41139@hotmail.com
ดูผลงานได้ที่ board.liewnetwork.com มีเบอร์โทรให้คุยกับลูกค้าตัวเป็นๆได้เลย
ภาพประจำตัวสมาชิก
admin
Administrator
 
โพสต์: 374
ลงทะเบียนเมื่อ: เสาร์ 17 ม.ค. 2009 1:47 pm
Has thanked: 8 times
Have thanks: 215 times

Re: เขียน PHP เพื่อส่ง SMS

โพสต์โดย klaifa » พฤหัสฯ. 24 มี.ค. 2011 2:46 pm

กำลังคิดจะใช้อยู่เหมือนกันครับ แต่เห็นแล้วเนื้อที่ SMS มันใส่ข้อความได้น้อยกว่าเดิมมากเลย จาก 70 ตัวอักษรมีข้อความของกูเกิ้ลโผล่ขึ้นมากินเกือบครึ่งนึง
klaifa
 
โพสต์: 3
ลงทะเบียนเมื่อ: พฤหัสฯ. 24 มี.ค. 2011 2:42 pm
Has thanked: 0 time
Have thanks: 0 time

Re: เขียน PHP เพื่อส่ง SMS

โพสต์โดย Piyara66 » จันทร์ 09 ก.ย. 2013 4:56 pm

เยี่ยมเลยครับน่าสนใจ
Piyara66
 
โพสต์: 2
ลงทะเบียนเมื่อ: จันทร์ 09 ก.ย. 2013 4:51 pm
Has thanked: 0 time
Have thanks: 0 time


ย้อนกลับไปยัง Web Programming

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: Bing [Bot] และ บุคคลทั่วไป 2 ท่าน


cron