2017 2018 4G add-ons Aiarty Image Enhancer Android apbn App Apple Application arabic Archaeology Argentina Arrest warrant Arrow keys Artificial Intelligence Artikel Arus Kas aset kripto Asia Assange Associated Press Aston Martin Aston Martin One-77 Astronomical unit Asyar Atlantis Audi Audi A5 Audi Q7 Australia Austria auto like Automobile Autos Avaya Device Manager Azwar Abubakar B. J. Habibie bacaan tahlil Bachelor's degree Backup badan pengawasan obat bius Badan Pusat Statistik Badanan Bagi Bali Ballmer Bandung Bandwidth Tests Bangkalan Bank Indonesia Banner Baptists Barack Obama Barbie Baru BASIC bbc Beauty pageant Bedework Bedework beginner Belum Beri Berpura BI Biar Biasanya Bilbo Baggins bima sakti Binance Bisnis Bitcoin Biz Stone BJ Habibie BKN BKPM BlackBerry BlackBerry PlayBook Blackpool Blog Blogger Blogger help Blur (band) BNI BNN Bob Hasan Boeing Bogor Bom BonJovi Bonus 1GB Bonus Data Bonus Smartfren Borobudur BPK Brain Bridget Firtle Britney Spears Broadband Broadband Internet access Browser Brunei Bruno Mars Brussels BSE Buah Ape Bubarkan PKS Buddhism Budidaya Buenos Aires Bugatti Veyron BugattiVeyron Bugzilla Bukittinggi bumi Bureau of Labor Statistics Burma Busdiness Business Business and Economy Business school BY COUNTRY Cable television Calendar California capres 2014 Car Cara Cara Mencari Kerja Cara Menjual Diri Cara Menulis Cara Menulis Resume cars Cascading Style Sheets Cash conversion cycle CBS News CCC CD ripper CDDB Central Authentication Service Central Java Chairul Saleh Chania Chat room Chester Chief Digital Offers Chief marketing officer Chile China Cho Kyuhyun Chris Johns Christine Quinn Chuck Hagel Cisco PIX City Classified information Clients Climate change Clothing CMO CMOs cms CNET.com CNN Coba CoffeeScript Cognition Collecting Colleges and Universities Colotomy Combinatorics Community Compact Disc Companies Company Comparison of antivirus software Computer crime Computer file Computers and Internet Connect Content management system Contoh Proposal Control key Corruption Eradication Commission Counties CPN CPNS CPNS 2013 Crack epidemic (United States) Create Crime Cryptocurrency CSS Current account Customer Customer service CV DA2 Daerah Dalam Dalat Dalcroze Eurhythmics Dallas Dan Dan (rank) Dangdut Academy2 Dangdut Akademi2 Daniel Tal Daniele De Rossi Danny Quirk Dari Data center Data Communications Database administrator Dating Daun kelor Dead Space 2 Death Debu Decision making Default (finance) Definisi Deforestation in Indonesia Dell Dell inspiron N4010 Drivers For Windows 7 (32bit) Democracy Democratic Design & Printing Dessau Device driver Device Drivers devisit Dick Costolo Digital Clock Digital distribution Digital marketing Digital photography Digital Subscriber Line Digital System Dire Straits Disk Management Distilleries DNS DNS hosting service DNS Server Dolls Domain name Domain Name System Dompet Donald Benek DoubleClick DoubleClick Insights Dow Jones Industrial Average download Download Driver LapTop Download manager DownThemAll DPR driver canon Drivers Drupal Drupal Planet Dubai Duduk Duhur Dunayevskaya Raya DVD Dynamic Views E-book East Java East Nusa Tenggara Economy ecstasy Education Edward Snowden Efficient Cars Eid al-Adha Eid al-Fitr Eid ul-Fitr Ekonomi Embassies and Consulates Embraer Regional Jet Émile Jaques-Dalcroze Employee Empowerment Employment Enable Flas Player Energy Alternatif Energy minister Entertainment EPUB Eropa Erwin Arnada European Central Bank European Commission European Parliament European Union Evan Williams Evi Juara DA2 Evi Masamba Evil Bong EXO exo planet expensive expensive cars expensive cars 2013 expensive cars speed Experience point F. W. de Klerk Facebook Facebook Graph Search Fashion Federal Reserve System Ferrari Ferrari 458 Italia Ferrari Enzo FIA Fianna Fáil File Management File Transfer Protocol Filipina Financial Aid Firefox Firefox 3.5 Firefox 3.6 FLAC Flas Player Flax Flipcard Floor trader FM Transmitter font Food and Drink Foods Ford Fusion Forest FPI Fred Phelps Free Free content free hosting Free Proxy Free Proxy Lists FreeDB FreeSat TV Freeware Frekuensi friend FriendFeed Fujian Gallery Game design Games Ganjar Garuda Garuda Indonesia Gaussian blur Gautama Buddha Gaya Hidup Gaza Gerindra Germany Daun Ghalib Github Global navigation satellite system Global Newsbeat Global Redirect Glossarium Glutinous rice Gmail GNU General Public License Golden Globe Award Goldman Sachs Golkar Google Google Analytics Google Docs Google Friend Connect Google Search Google Translate Google+ Government Government Issues Grafena Graffiti Grand Final DA2 Grandma Grandparent Graph Search Graphic Design Graphics Graphics processing unit Gratis Greasemonkey Greenhouse gas GROW Guy Rosen GYM Habibie Hacker Hagel Hagen Haiti Hal Halley Halley's Comet Hallo Halloween Hambalang Hamster Handhelds Hank Johnson Hard disk drive Hardware Hari Hars Haryono Suyono HCL Technologies Helmi Johannes Hendarman Supandji Hennessey Venom GT heroin Hewlett-Packard Hibrid High-definition television Hindia Belanda History History of Java Hitung Mundur Pilkada Hobbit Holly Qur'an Hollywood Home Honda Honda Accord Hongkong Hosted Proxy Services Hosting hosting gratis Hosts HOTBISNIS HotBot HOTINFO Hotmail How Search Works How To HTML HTML element HTTP cookie HTTP Secure HTTrack Huffington Post Hulu Human resources Humboldt huruf Hypertext Transfer Protocol Hyundai Sonata Ian Richardson Ibukota Baru ICQ Idaho Falls Idul Adha Idul Fitri Idul Fitri 1435H Ijin Iklan iMacros Image Imsak Income India Indonesia Indonesian Aerospace Indonesian Democratic Party – Struggle Indonesian National Armed Forces Indonesian rupiah Indonesian Ulema Council Indosiar Indro Infiniti Information retrieval Information Technology inggris INI file Ink cartridge Inkatha Freedom Party inovator Insomnia Inspiron Instant messaging Insulators Intel Core Intel Core i7 Intel Corporation intermediate Internal internasional International Monetary Fund International Whaling Commission InternationalSpaceStation Internet Internet access Internet Connect Internet Download Manager Internet Explorer Internet Gratis Internet Phone Internet Protocol Internet safety Internet service provider Internet television Investigasi Investing Investor Investor Awal IOS IP address ip2700 IPad IPhone iPhone terbaik IPsec Iptek Iran Iron Man 3 Islam Islamic Defender Front Islamic Defenders Front Israel Isya Jack Dorsey Jacques-Dalcroze JADWAL IMSAK 2016 JADWAL SELEKSI CPNS Jakarta Jakarta Globe James Brooke Jamur Tiram Japan Jateng Java Java Development Kit Java version history Java virtual machine JavaScript Jawa Timur Jendela jenis proxy Jika Jika Anda jobs Joe Biden Johannesburg Join the Conversation Joko Widodo Jokowi Joseph McBrennan JPEG JRE Juara DA2 Juara Dangdut Akademi 2 Juga Juli Julian Assange Juru Justin Timberlake Jusuf Kalla Kalau Kali Kam Kami Kapal Selam Karena Kata Keamanan Kedua kehidupan Kekuatan sinyal Kelas 3 Kemanusiaan Yang Adil dan Beradab Kenapa Kepemimpinan Kesehatan Kesra Ketiga Ketika Ketuhanan Yang Maha Esa Ketupat Kíla Kilas VOA Kinetic Energy Recovery System Kini Kita Knowledge Graph Koenigsegg Koenigsegg Agera Koenigsegg CCX Koenigsegg CCXR Koenigsegg Trevita kokain Komet Koneksi nirkabel Konflik Konser Kemenangan DA2 Konsultasi Korea koruptor Kota Rajasthan KPU kriminal Kripto Krishna Kristiani Herawati Krystal Jung KSPI Kung Fu Kupang l Sony Lagu Evi Masamba Lamborghini Lamborghini Aventador Lamborghini Reventón land grabs Languages Laporan Arus Kas Laporan Keuangan Layer 2 Tunneling Protocol LCGC LEBARAN Lemsaneg Leopard Let Me Try Libre knowledge like Likuiditas link Link Building link friend linkedin Linux List of Buddhist temples List of countries by oil production List of Empire ships (Sa–Sh) List of PDF software List of petroleum companies LittleBigPlanet LittleBigPlanet 2 Lodging Login Lokal Lord of the Rings Los Angeles Lost Civilizations Mac OS X Mac OS X Leopard Macintosh Macklemore MacOS Magelang Maghrib Maharaja Mailing list Majapahit makanan Makes and Models Malang Malaysia Malicious Software Maná Management Manajemen Manajemen Perubahan Mandela Marc Brackett Marine biology Marine Ecology Progress Series Mario Mark Zuckerberg Market News Market sentiment Marketing Marketing and Advertising Marketing Team Martial Arts Masehi Massachusetts Mata Uang Kripto mata-mata matahari Matematika Math Mbah Google McLaren McLaren F1 McLaren P1 media query MediaTek Megabyte Megawati Megawati Sukarnoputri Membaca Neraca Memory Fox Menjebol Neraca Menulis CV Merdeka Meta Meta element Meta Tags Meteor shower Meteoroid Michael Bloomberg Microsoft Microsoft Internet Explorer Microsoft PowerPoint Microsoft Windows Middle East Mikheil Saakashvili MikroTik Miley Cyrus Military Militer Minta Maaf mirror web Miss World Miss World 2013 Missions mlm Mobil Murah Mobile application development Mobile Computing Mobile device Mobipocket Mobutu Sese Seko Modal Kerja Model Paradigma Budaya Mohammad Hatta MOHON MAAF LAHIR DAN BATHIN Monorail Moon Moscow most expensive most expensive cars Motion Design Motivasi Motivation Movies Mozilla Mozilla Firefox Mozilla Project MP3 Mpu Prapanca MS-CHAP MSN MSN Messenger MTV Video Music Award Muara Hati Multifunction printer Multimedia Murah Mural Music Music and Audio Music roll Muslim my blog My Telkomsel Myanmar N4010 Nagarakretagama Nagasaki Name server Namun NASA Nasional National Football League National Geographic National Monument National Security Agency Nature Negara Nelson Mandela Neraca Netscape Network Network Connection New South Wales New York New York City New York City Police Department New York Stock Exchange New York Times News Nigel Dessau Niger Nigeria Nissan Altima Nobel Peace Prize Norwegian Media Authority Notepad Notepad++ November NSA NTLM NU Nudi Nürburgring Nusa Dua Nusantara NYSE NYSE Euronext NYX obat bius sintetik offline browser Ogg Onavo Online online business Online Communities Online dating service Online Education Online shopping Ookla OPEC Open Europe Open source Opera Mobile Operating system Operating Systems opium Oppa Optical fiber Organization Orion Orionid Orton Orton Effect OS X OS-2 Otomotif Owneys Rum Pada Pada (foot) Pagani Zonda PageRank PageSpeed Pakistan Pala Empire Palestina Palestinian people palm oil Pancasila Panduan Panel Para Partai Demokrat Pathauto Pay per click PayPal pbb PC Plus Peat Pelajaran Bsnis pemasaran Pembinaan Pemenang DA2 Pemilu Pen Qur'an Pendampingan Pendorong Pengetahuan Peningkatan Gambar AI Peningkatan Kualitas Gambar Peninsula Valdes Penipuan Penyakit Berbahaya penyelidikan Penyiaran People People's Justice Party (Malaysia) Perangkat Lunak Pengolah Foto Perilaku Persatuan Indonesia Personal computer Personal Learning Network Personally identifiable information Personals Pertama Pertamina Pertukaran pertukaran kripto Peru Perusahaan Listrik Negara Pesawat Tak Berawak Peter Godwin Peternakan Petroleum Petroleum industry Philippines Phnom Penh Phone Photograph PHP Piano Picasa Picasa Web Albums Picnik PILGUB PILGUB 2018 PILGUB JATENG PILKADA PILKADA SERENTAK 2018 Pilpres Pilpres 2014 PKS Korupsi PKS Sarang Koruptor planet Platforms Playboy Playboy Indonesia PlayStation PlayStation 3 PLN Plone Plug-in (computing) Pluit Point-to-Point Tunneling Protocol Pokki Policy Political Philosophers Political Philosophy Political Science Ponsel ponsel terbaik Porsche 918 Portable Document Format Portlet PostgreSQL Postmedia News Pownce PPTP PQ 12 PQ 15 Prabowo Subianto Prajogo Pangestu Prambanan Pratt Institute Presiden Susilo Bambang Yudhoyono Primera Capital print Print Design printer printer 3d Product placement Profesional Programming Promo Promote Promotion Proposal Usaha Prose Protocols Provinces Proxify Proxy server Proxying and Filtering Przedsiębiorstwo Komunikacji Samochodowej Public DNS Publik Publishing Publishing and Printing Pulang2 Ganteng Pulau Jawa Purnomo Yusgiantoro Python Qualcomm Quantum Leap Qur'an Digital Quran Rabu 18 Desember 2013 Radio Rakernas Ramadan Randall Miller ransomware Rape Rasio Likuiditas Recreation Reducing Emissions from Deforestation and Forest Degradation Registry cleaner Regulasi Rekap Pilpres 2014 Relationship Religion and Spirituality Repost Resolusi Gambar Tinggi Resume Resumes and Portfolios Retirement Reuters RF Power Amplifier Rheinmetall Riau Ridwan Robert Kiyosaki Robin Thicke Roboform Roi Tiger Roundtable on Sustainable Palm Oil RTC RTT News rum Rumah Rusia Sabu Safari Salah Sales Sam Hall Samsung Sandy Bridge Sangat (term) Sani Abacha Sapta Pesona satelit Satu Saving Money SBY Puas Scam Scholarship Scintilla Scripts SCTV (Indonesia) SD Sea Lines of Communication Search Search engine optimization Search Engines Searching Secure Socket Tunneling Protocol Security Sejuk Sekolah Olahraga Nasional SELAMAT HARI RAYA IDUL FITRI 1434H Selamat Idul Fitri Selanjutnya SELEKSI CPNS Semarang seo seo service online Seoul September 2013 Serbia Sergei Krikalev Server Sesungguhnya Shareware Shopping Shopping mall Short Shwedagon Pagoda Siaran Silvio Berlusconi Sime Darby Singapore Single Evi Masamba Single sign-on Site map Site Submission Sitemap skema investasi SlideShare Slideshow SM Entertainment Smartphone Smartphones Smarty Smaug SMV SMV FreeSat TV social bookmark Social media Social Network Social Networking Social Sciences Society Soeharto Soekarno software Software Peningkatan Gambar Solar sail Sosial South Africa Southeast Asia Southern right whale Soviet Union Soweto Space Space Shuttle Discovery Speedtest.net SPN Sports Sports car Sriwijaya Air SSL Stanford University States and Divisions Statistics Indonesia Stephan Winkelmann Stereo FM Transmitter Steve Ballmer Steve McQueen Steven Sinofsky Stock Exchange of Singapore Stock market Streaming media Student Subscriber Identity Module Subuh Suharto Sukanto Tanoto Sukhoi Sumatra Sumatra PDF Super Bowl Superior mesenteric artery Surabaya Surat Susan Boyle Susilo Bambang Yudhoyono Swasta Sweden Switzerland system backup image System Restore T-shirt Tablet Taeyeon tahlil tahlilan Taipan Daily Taiwan Tanah Abang Tapi tata surya Tatto Taylor Swift TeachMeet TechCrunch technology Teknologi Teknologi Kecerdasan Buatan teks tahlil Tel Aviv Telepon Gratis Televisi Television Telkomsel Telstra Template Designer Templates Temporary Internet Files Teori Keuangan Terkenal Ternak Ternak Belut Territorial Disputes Test Testing and Tools Tf–idf Thailand The Noble Experiment Things You Didn't Know About... ThinkPad Thomas Tiffany Tiga Timeline Timor Timor Leste Timur Timur Tengah Tips Tips Kesehatan Title Tommy Suharto Tony Abbott Toolbar Tools Toyota Toyota Camry Toys Toys and Games Traffic collision Translation Transmitter Transport Layer Security Travel Travel and Tourism trik blog Trowulan Tujuan Wisata tutorial tvone Twentieth Century Twitter U.S. Economy Uang Baru Ulang Tahun Ultraviolet Undang Undang Undang Desa Uniform resource locator United Arab Emirates United States United States Secretary of Defense Universities University of Utah unlimited hosting free Unmanned Untuk update Uploading and downloading UPortal Usaha USB Flash Drive Ustad Ustaz utility UU Desa Valuasi Saham Veggies verification Verizon Fios Veto Video Video game Video Games Virginia Virtual private network virus Vista Vitamin VOA VOA News Voice of America VOIP Volkswagen Group Volkswagen Passat Voltage Regulator VPN VPN Connection Waktu Sholat Washington Washington DC WAV Web browser Web cache Web content management system Web Design Web Design and Development Web directory web hosting Web proxy web robot Web search engine Web server Web traffic webmaster tools Website Website Reviews Weekly welcome West Sumatra WETA Digital Whitney Houston Wi-Fi Wibiya Wifi wiki WikiLeak Wikileaks Wikimania Wikimedia Commons Wikimedia Foundation Wilayah Winamp Window 8 Windows Windows 10 Windows 11 Windows 2000 Windows 7 Windows 8 windows 8 backup Windows 8.1 Windows 95 Windows 98 Windows 9x Windows API Windows Media Audio Windows Mobile Windows NT Windows Phone Windows Phone 7 Windows Registry Windows startup process Windows Update Windows Vista Windows XP Wiranto Wireless Data Wisata WordPress World bank Writer Writing x factor Xiaomi Mi5 XML Yahoo Yahoo Messenger Yangon Yogyakarta Yossi Vardi YouTube Yuri Gagarin Zaskia Zemanta ZIP (file format) Zoner Photo Studio ZTE

Tutorial SMS Gateway Gratis : Membuat Sendiri Kirim SMS Gratis Via Web dengan PHP dan MySQL

GampSMS SMS Gateway Masih terkait dengan SMS gateway, dalam artikel kali ini saya akan mencoba memaparkan cara membuat sendiri aplikasi kirim SMS gratis via web. Permintaan untuk membuat artikel dengan topik ini sudah banyak masuk ke email saya maupun komentar dalam blog ini. Namun, mohon maaf baru kali ini saya bisa mewujudkannya.
Untuk membuat fasilitas kirim SMS gratis via web, kita membutuhkan sebuah aplikasi gateway untuk mengirim SMS. Aplikasi sms gateway ini nanti kita install atau letakkan di pc yang ada di rumah kita beserta modem/hp yang tercolok pada PC tersebut sebagai alat untuk mengirim SMS. PC ini harus senantiasa terhubung ke internet untuk berkomunikasi dengan PC server yang ada di hosting. Sedangkan di dalam hosting, kita buat semacam script form untuk interface user yang ingin mengirim SMS. Untuk aplikasi sms gateway yang diinstall di PC rumah, Anda bisa menggunakan Gammu sebagai enginenya.

Pertanyaan yang muncul kemudian adalah bagaimana cara mengkomunikasikan PC server yang ada di hosting dengan PC di rumah, atau dengan kata lain bagaimana mengirim data sms yang disubmit via hosting kemudian bisa sampai di PC rumah lalu mengirimkan sms tersebut via modem/hp?
OK… konsep dasar atau ide dasar dalam pembuatannya adalah kita menggunakan semacam web service yang dibuat di server hosting untuk komunikasi antara PC rumah dan PC hosting. Web service ini nanti senantiasa akan diakses oleh PC rumah. Melalui web service inilah SMS akan dikirim dari PC hosting ke PC rumah. Lantas, apa bentuk output dari web service ini? Web service disajikan dalam bentuk XML yang isinya adalah bunyi SMS dan nomor tujuan SMS yang akan dikirim. Data XML yang berisi bunyi sms dan nomor tujuan inilah yang nanti akan dibaca oleh PC rumah, lalu mengirimkannya lewat SMS gateway (Gammu).
Nah.. sekarang kita menuju implementasi cara pembuatannya.
Langkah pertama, Anda harus sudah menginstall Gammu sebagai tool SMS gateway nya. Pastikan Anda bisa mengirim SMS menggunakan Gammu dan HP/modem yang tercolok di PC Anda.
Langkah kedua, buatlah script form untuk mengirim SMS. Script form ini nanti diletakkan di server hosting
sms.html
1.<form method="post" action="kirim.php">
2.No. Tujuan <input type="text" name="destination">
3.Isi SMS<br><textarea name="sms"></textarea>
4.</form>
Bila diperhatikan, form kirim SMS di atas nantinya akan disubmit di script kirim.php. Di dalam script kirim.php inilah nomor tujuan dan isi SMS akan disimpan dalam tabel temporary pada database server hosting. Misalkan kita beri nama tabel temporary tersebut adalah ‘outbox’. Kita bisa buat tabel ‘outbox’ ini dengan struktur sbb:
1.CREATE TABLE `outbox` (
2.`id` int(11) AUTO_INCREMENT,
3.`destinationNumber` varchar(20),
4.`sms` text,
5.PRIMARY KEY (`id`)
6.)
Field ‘id’ digunakan sebagai nomor unik penanda setiap SMS yang akan dikirim, field ‘destinationNumber’ untuk menyimpan nomor tujuan SMS, dan ‘sms’ untuk menyimpan isi SMS.
OK, kita buat script kirim.php nya
kirim.php
01.<?php
02.// koneksi ke mysql server hosting
03.mysql_connect('dbhost', 'dbuser', 'dbpass');
04.mysql_select_db('dbname');
05. 
06.// baca nomor tujuan dan isi sms dari form
07.$destNumber = $_POST['destination'];
08.$sms = $_POST['sms'];
09. 
10.// query insert data sms ke tabel 'outbox'
11.$query = "INSERT INTO outbox (DestinationNumber, TextDecoded, CreatorID) VALUES ('$destNumber', '$sms', 'Gammu')";
12.mysql_query($query);
13. 
14.echo "SMS sudah dikirim...";
15.?>
Setelah data sms yang dikirim tersimpan dalam tabel ‘outbox’, langkah selanjutnya kita buat script web service untuk menyajikan data sms yang tersimpan dalam tabel ‘outbox’ tersebut ke dalam bentuk dokumen XML. Misalkan kita beri nama script untuk mengenerate XML ini ‘data.php’
data.php
01.<?php
02.// koneksi ke mysql server hosting
03.mysql_connect('dbhost', 'dbuser', 'dbpass');
04.mysql_select_db('dbname');
05. 
06.// membuat header dokumen XML
07.header('Content-Type: text/xml');
08.echo "<?xml version='1.0'?>";
09. 
10.// membuat root tag untuk data XML
11.echo "<outbox>";
12. 
13.// query untuk membaca seluruh SMS yang ada di tabel outbox
14.$query = "SELECT * FROM outbox ORDER BY id";
15.$hasil = mysql_query($query);
16.while ($data = mysql_fetch_array($hasil))
17.{
18.// representasi data sms
19.echo "<data>";
20.echo "<id>".$data['id']."</id>";
21.echo "<destination>".$data['destinationNumber']."</destination>";
22.echo "<sms>".$data['sms']."</sms>";
23.echo "</data>";
24.}
25.echo "</outbox>";
26.?>
OK… ketiga file di atas (sms.html, kirim.php, dan data.php) nanti diletakkan di dalam server hosting. Sampai langkah ini, kita sudah selesai bekerja di level server hosting. Langkah berikutnya adalah membuat script di sisi PC rumah.
Di dalam PC rumah, nantinya kita akan membuat script untuk membaca data sms yang tersaji dalam bentuk XML yang digenerate melalui script ‘data.php’ yang ada di server hosting. Setelah data sms ini dibaca, kemudian kita masukkan ke dalam tabel ‘outbox’ bawaannya Gammu untuk dikirim melalui hp/modem. Oya, kita perlu juga menghapus setiap data sms di server hosting yang sudah dibaca. Mengapa hal ini dilakukan? ya dong, supaya tabel ‘outbox’ nya di server hosting tidak penuh. Lantas, bagaimana cara menghapus data secara otomatis di server hosting setelah data sms nya terbaca? ya… kita gunakan CURL.
OK… ini dia script untuk membaca data sms dari XML nya.
bacasms.php
01.<?php
02.// koneksi ke mysql di server localhost
03.mysql_connect('dbhost', 'dbuser', 'dbpass');
04.// nama database Gammu yang ada di localhost
05.mysql_select_db('dbname');
06. 
07.// baca data XML dari server hosting yang digenerate oleh data.php
08.$dataxml = simplexml_load_file('http://namasitus/data.php');
09.foreach($dataxml->data as $data)
10.{
11.// baca field ID
12.$id = $data->id;
13.// baca nomor tujuan
14.$destination = $data->destination;
15.// baca isi sms
16.$sms = $data->sms;
17. 
18.// mengirim SMS via Gammu dengan insert data ke tabel outbox Gammu
19.$query = "INSERT INTO outbox (DestinationNumber, TextDecoded) VALUES ('$destination', '$sms')";
20.mysql_query($query);  
21. 
22.// hapus data SMS di server hosting yang sudah terbaca berdasarkan ID
23.$curlHandle = curl_init();
24.curl_setopt($curlHandle, CURLOPT_URL, 'http://namasitus/hapus.php');
25.curl_setopt($curlHandle, CURLOPT_POSTFIELDS, 'id='.$id);
26.curl_setopt($curlHandle, CURLOPT_HEADER, 0);
27.curl_setopt($curlHandle, CURLOPT_RETURNTRANSFER, 1);
28.curl_setopt($curlHandle, CURLOPT_TIMEOUT,30);
29.curl_setopt($curlHandle, CURLOPT_POST, 1);
30.curl_exec($curlHandle);
31.curl_close($curlHandle);
32.}
33.?>
Jika web server di PC localhost belum mendukung CURL, maka lakukan setting CURL terlebih dahulu.
Eh… kalo kita liat pada script bacasms.php di atas, pada proses penghapusan data SMS yang ada di server hosting melalui CURL terdapat pemanggilan script hapus.php. Nah… script ini belum kita buat di server hosting. Script hapus.php ini nanti berfungsi untuk menghapus data sms yang ada di tabel outbox dalam database server hosting berdasarkan ID nya setelah data sms tersebut di baca oleh script bacasms.php.
hapus.php
01.<?php
02.// koneksi ke mysql di server hosting
03.mysql_connect('dbhost', 'dbuser', 'dbpass');
04.mysql_select_db('dbname');
05. 
06.// baca ID data yang akan dihapus yang dikirim via CURL dari localhost
07.$id = $_POST['id'];
08.// hapus data SMS berdasarkan ID
09.$query = "DELETE FROM outbox WHERE id = '$id'";
10.mysql_query($query);
11. 
12.?>
Sekali lagi script hapus.php di atas harus ditaruh di server hosting lho ya… !!!
Selanjutnya script bacasms.php ini harus senantiasa kita jalankan melalui web browser localhost di PC rumah kita supaya bisa selalu membaca data sms yang ada di hosting lalu mengirimnya via Gammu. Lalu bagaimana supaya script bacasms.php ini bisa secara otomatis berjalan dan selalu bisa membaca data dari server hosting? Sebenarnya Anda bisa mengklik tombol REFRESH pada web browser supaya script ini bekerja, namun tentu hal ini membuat report kan? Nah… salah satu solusi dari hal ini adalah Anda bisa menjalankan autorefresh melalui AJAX yang secara otomatis merefresh script bacasms.php ini pada setiap selang n detik. Ini dia script nya…
index.php
01.<html>
02.<head>
03.<title>SMS Server Running...</title>
04.<script type="text/javascript">
05.function ajax()
06.{
07.if (window.XMLHttpRequest)
08.{
09.xmlhttp=new XMLHttpRequest();
10.}
11.else
12.{
13.xmlhttp =new ActiveXObject("Microsoft.XMLHTTP");
14.}
15. 
16.xmlhttp.onreadystatechange=function()
17.{
18.if (xmlhttp.readyState==4 && xmlhttp.status==200)
19.{
20.}
21.}
22. 
23.xmlhttp.open("GET","bacasms.php");
24.xmlhttp.send();
25.setTimeout("ajax()", 5000);
26.}
27.</script>
28. 
29.</head>
30.<body onload="ajax()">
31.<h1>SMS Server Running...</h1>
32.</body>
33.</html>
Contoh script AJAX yang ada di index.php di atas diset supaya bisa merefresh secara otomatis bacasms.php dalam interval 5 detik (5000 ms). Dengan demikian yang perlu Anda jalankan di localhost hanyalah script index.php di atas melalui browser.
Nah.. konsep di atas memungkinkan kita untuk bisa membangun aplikasi SMS gateway yang terintegrasi antara PC di server hosting dengan PC di rumah tanpa menggunakan IP public yang urusan untuk mendapatkannya sangat ribet dan mahal biayanya, atau tanpa menggunakan VPS maupun dedicated server untuk tipe hostingnya yang juga sangat mahal biayanya.
Anda dapat belajar teknik-teknik lain kaitannya dengan SMS gateway yang mengintegrasikan server hosting dengan pc rumah dengan contoh-contoh script SMS gateway yang saya buat untuk belajar.
Oya… meskipun namanya SMS gratis, tapi tidak sepenuhnya gratis. Istilah Gratis hanya bagi si pengguna atau pengirim SMS melalui web Anda, namun tidak gratis bagi si pemilik web karena harus menyisihkan sedikit biaya untuk bayar pulsa. Tapi tak apalah, anggap saja itu biaya marketing untuk lebih mengenalkan web Anda, apalagi saat ini pulsa sms sangat murah :-) Bisa pula tambahkan string pada setiap SMS yang dikirimkan dengan nama situs Anda untuk lebih memperkuat branding web Anda. Untuk hal ini silakan utak-atik sendiri ya :-)
Simpel bukan idenya??? Selamat mencoba…

Post a Comment

Write You comment here! Please...

[blogger]

Author Name

{picture#YOUR_PROFILE_PICTURE_URL} YOUR_PROFILE_DESCRIPTION {facebook#YOUR_SOCIAL_PROFILE_URL} {twitter#YOUR_SOCIAL_PROFILE_URL} {google#YOUR_SOCIAL_PROFILE_URL} {pinterest#YOUR_SOCIAL_PROFILE_URL} {youtube#YOUR_SOCIAL_PROFILE_URL} {instagram#YOUR_SOCIAL_PROFILE_URL}

Contact Form

Name

Email *

Message *

Powered by Blogger.