Untuk mengirim SMS menggunakan bahasa pemrograman Delphi, modem Anda harus support AT command. Instal dulu software / driver bawaan modem (biasanya auto install) dan pastikan driver modem tersebut menciptakan COM port (serial port) virtual. Untuk melihat virtual port yang tercipta, silahkan lihat di device manager. Jika Anda menggunakan Windows XP maka menunya adalah sebagai berikut : Start | My Computer (klik kanan) | Manage | Device Manager | Port (COM & LPT). Nah di sana akan muncul port-port (serial atau parallel) yang sedang attach di computer Anda. Untuk mengirim SMS lewat modem, gunakan COM Port yang ada tulisannya ‘NMEA’ – nya (contoh di laptop saya adalah COM 33.
Langkah kedua adalah menginstal komponen Delphi ‘CPort’ (bisa Anda baca tutorialnya dan download di tulisan saya sebelumnya). Setelah berhasil menginstal komponen CPort, Delphi kini telah siap untuk mengirim SMS. Saya anggap Anda sudah bisa menggunakan IDE (Integrated Development Environment) Delphi, sudah bisa ‘menarik’ komponen ke form Delphi, meng’compile’ dan me-‘run’ program. Jika belum familiar dengan Delphi, Anda bisa googling dulu di internet dan mencari tutorialnya.
Program Sederhana Kirim SMS
Buat satu project dan simpan dengan nama sesuai keinginan Anda. Misal ‘SMSkirim.dpr’. Klik komponen ComPort1 di tab component pallete ‘CPortLib’, ke dalam form kerja. Setelah itu ‘tarik’ komponen kotak edit 2 buah, komponen ‘label’ 2 buah dan ‘button’ 3 buah, atur seperti contoh pada gambar di bawah.
Double click tombol dengan tulisan ‘Setting modem’ dan isikan baris program sebagai berikut :
procedure TForm1.Button2Click(Sender: TObject);
begin
comport1.ShowSetupDialog; // isi ini aja
end;
Maksud dari baris program comport1.ShowSetupDialog; adalah untuk menampilkan kotak setup dialog, hingga Anda bisa mengatur konfigurasi modem secara run time (nomor COM port, baud rate, bit parity, star/stop bit dll). Tekan tombol F9 untuk menjalankan (Run) program dan coba klik tombol ‘Setting modem’, maka akan muncul kotak dialog untuk mengatur settingan modem. Kemudian atur supaya Port berisi COM port modem (contoh dalam laptop saya adalah COM33), dan klik tombol ‘OK’. Untuk settingan yang lain gunakan settingan default saja.
Setelah selesai melakukan konfigurasi, modem masih harus diinisialisasi dan ‘dibuka’ koneksinya melalui COM port virtual. Untuk melakukannya klik ganda pada tombol ‘Open’ dan isikan baris program sebagai berikut:
procedure TForm1.Button3Click(Sender: TObject);
begin
if ComPort1.Connected then
begin
ComPort1.Close;
button3.Caption:=’Open’;
end
else
begin
ComPort1.Open;
button3.Caption:=’Close’;
ComPort1.WriteStr(‘at+cmgf=1’+#13#10);
ComPort1.WriteStr(‘at+cscs=”GSM”‘+#13#10);
end;
end;
Untuk membuka atau menutup koneksi dengan modem dapat digunakan perintah ComPort1.Open; atau ComPort1.Close; . Sedangkan untuk menginisialisasi modem untuk keperluan SMS adalah baris perintah
ComPort1.WriteStr(‘at+cmgf=1’+#13#10);
ComPort1.WriteStr(‘at+cscs=”GSM”‘+#13#10);
Perintah ComPort1.WriteStr(‘at+cmgf=1’+#13#10); adalah untuk mengirim AT command ‘AT+CMGF=1’ ke modem. Arti perintah ini adalah untuk mengeset modem agar berada di mode teks, jadi proses kirim (dan terima) SMS akan berlangsung dalam mode teks (semua karakter akan berbentuk karakter ASCII alfanumerik dan kita juga bisa membacanya). Berbeda jika jika ‘AT+CMGF=0’, jika kita memberikan command ini, maka modem akan berada di mode PDU (Packet Data Unit), sehingga semua karakter SMS harus dikirim menggunakan format PDU (dalam bentuk angka dan harus mengikuti format PDU). Saya sendiri lebih menyukai mode teks karena selain lebih mudah pemrogramannya juga lebih mudah men-trace program jika terjadi crash.
Sedangkan perintah ComPort1.WriteStr(‘at+cscs=”GSM”‘+#13#10); adalah untuk memerintahkan modem agar menggunakan karakter set ‘GSM’, yakni karakter alfanumerik standar seperti yang kita gunakan sehari – hari. Pada beberapa modem karakter set ‘GSM’ sudah merupakan settingan default. Oya, pastikan agar software bawaan modem Anda matikan dulu supaya tidak terjadi konflik saat mengakses COM Port modem.
Langkah terakhir dan inti dari program sederhana ini adalah mengisikan baris program sebagai berikut ke tombol ‘Send SMS’. Klik ganda tombolnya dan isikan beberapa baris program berikut:
procedure TForm1.Button1Click(Sender: TObject);
begin
ComPort1.WriteStr(‘at+cmgs=”‘+edit2.text+'”‘+#13#10);
ComPort1.WriteStr(edit1.text);
ComPort1.WriteStr(#26);
end;
Maksud dari baris program di atas adalah sebagai berikut :
ComPort1.WriteStr(‘at+cmgs=”‘+edit2.text+'”‘+#13#10); -> mengambil data nomor handphone tujuan di kotak edit2 dan mengirimnya ke modem melalui perintah ‘AT+CMGS=”no tujuan” ‘. Karakter ‘#13#10’ adalah kode ASCII untuk tombol ‘Enter’ (CR LF). Jadi seakan – akan Anda melakukan penenkan tombol enter secara otomatis di sini.
ComPort1.WriteStr(edit1.text); -> menuliskan isi SMS dan mengirimnya ke modem
ComPort1.WriteStr(#26); -> mengirim karakter ASCII untuk CTRL-Z ke modem sebagai penanda berakhirnya penulisan isi SMS.
Silahkan Anda ‘RUN’ program yang telah Anda buat tadi, kemudian coba untuk mengirim SMS setelah melakukan konfigurasi dan inisialisasi modem. Jika butuh bantuan Anda dapat menghubungi saya di YM: ajiew atau email [email protected]
Bersambung ke tulisan berikutnya : Cara Menerima SMS dengan Delphi
a Technopreneur – writer – Enthusiastic about learning AI, IoT, Robotics, Raspberry Pi, Arduino, ESP8266, Delphi, Python, Javascript, PHP, etc. Founder of startup Indomaker.com
bagi pengunjung lain yang mencoba aplikasi ini mohon untuk diperiksa setting bauderate modem anda dan pastikan modem tidak terhubung dengan program terminal lain seperti hyperterminal, teraterm dll bsa crash komunikasix.
mkasi buat pak ajie atas artikel dan ilmunya dYM.
terima kasih sharingnya mas
Mana lanjutan Tutorial Menerima SMS dengan Delphi-nya?
bisa dibaca di sini pak http://saptaji.com/2011/05/21/konsep-menerima-sms-dengan-delphi/
mas tutorial sebelum cara mengirim SMS dengan Delphi-nya mana ya mas?
sebaiknya dibaca dari awal aja mas http://saptaji.com/2011/03/19/membuat-sms-gateway-dengan-delphi-bagian-1/
mas ajie artikel tentang CPort-nya dimana ya mas?
bisa dibaca disini http://saptaji.com/2011/04/21/at-command-dan-delphi/
siiiiiiiiiiip mas ajie…… mksh bnyk mas,,,, lg cri2 referensi buat skripsi nih mas.4 jmpol untk mas ma artikelnya.
oh ya mas,,,,, knp tabnya ga keluar ya mas? apa ga support ma win 7.
Tab apaan sih ???
oh mf mas, tab CPortLib-nya mas.
harusnya ada sih, coba comp pallete-nya geser ke kanan, atau baca-baca lg di http://saptaji.com/2011/04/21/at-command-dan-delphi/
oh iya mas sdh ada,semua sudah jalan mas,namun waktu saya coba sand tidak terjadi apa-apa mas…. padahal sudah saya ikuti sesuai prosedure mas,,, knp ya mas? untuk download source codenya ada dimana mas?
sebelumnya makasih mas. 😀
saya pake modem HUAWEI Mobile Brodband Model:E1550,apakah modem ini support AT Command mas?
coba lihat di device manager, ada virtual serial port (COM) ngga, di ‘Ports (COM & LPT)’
mas saya udah nyoba koq te2p gbisa y?? padhal scriptnya udah sama persis+portnya udah bener. Q test dengan yang example modem udah mau menerima perintah AT command. ohya mas,setelah sya selesai run projectnya… kq malah debug cport.pas yah?? mank kenapa tuh mas?? mohon pencerahannya.. trims
ga bisanya dimana/errornya apa? bisakah lebih spesifik?
utk masalah debug cport.pas, biasanya krn gagal koneksi dg modem
jadi gini mas… gbisa kirim sms.. saya pake modem merk sierra..
mohon pencerahannya.. 🙂
mas kalau at command untuk dial up internet apa ya?
saya coba “atd*99#” balasanya no cariage
itu bukannya dial panggilan ?
seperti cek pulsa .
===================
mas maaf oot 😀
saya agak terganggu dengan ada yang menelpon ke modem saya.
adakah AT command auto reject ?
kalo auto answer ada mas, kalo auto reject blm tau
tanya lagi mas 😀
detect sms sukses gmn ya ?
kalau pakai indosat pas kirim gagal biasanya jawaban error . tapi kalau XL OK aja. walaupun pulsa abis
kl sms berhasil dikirim ada kode +CMGS:xx, dg xx menunjukkan index memori. Kode tersebut dikirim modem ke PC melalui port COM dan dpt dilihat (langsung muncul) di software handlernya misalnya putty/hyperterminal/delphi di kotak memo
weh ya ada +CMGS:xx …
tapi tau index itu sms yg mana gimana mas ?
pakai tutor disini gak simpan index dulu
index nya ga perlu tau, yg penting kalo ada code +CMGS:xx berarti sms berhasil dikirim (kan itu kan yg ditanyakan?)
ya si mas 😀
tadi saya mikirnya harus tau indexnya 😀
coba troubleshoot pake hyperterminal atau 7G-Terminal. Ntar kirim at command nya satu-satu dari situ
mas ajie salam kenal..
artikelnya siiiippp banget, bermanfaat buat saya yg msh newbi
terus berkarya dan sukses selalu mas…
amiin. terima kasih mas ^_^
mas aji bagaiman kalo kirim sms ke banyak nomer atau broadcast dari database
tinggal dikasih looping
saya pake coding ini
comport1.writestr(‘AT+CMGS=”‘adoquery1.FieldValues[‘Nomer_Tlp’]'”‘+#13#10) kenapaa gak bisa yah..tetep aja kirinbya ke satu nomer
di-loop mas. Jangan lupa kasih jeda/delay
mas bisa tolong kasih sedikit coding loopingnya gk mas..soalnya aplikasi saya eror pada saat broadcastnya mas..
maaf, sy hanya bisa kasih kail bukan ikan
mas tolong banget..saya dedline TA saya mas, saya cuman eror di broadcast nya aja..saya minta tolong banget…
mas… component CPORT sama source code nya gak bisa di donlod tuh,,,
boleh donk mas kasi link nya,,, soalnya tulisan “DISINI” nya gak ti hypelink mas, hehehe…
btw, thanks ya mas ajie…
link download cport http://www.4shared.com/file/EQvBuLal/cport310.html . Terima kasih atas koreksinya
Gan, Mohon di posting mengenai AT Command untuk USSD, saya merasa kesulitan membuat program pake delphi untuk mengecek pulsa simpati. misalnya saya masukkan at+CUSD=1,”*888#” OK dan tidak keluar hasilnya… kan seharusnya keluar berapa sisa pulsa yang ada. mohon pencerahannya… Thx
Coba at+cusd=1,”*888#”,15 bs ga? Insya Allah akan sy bahas dlm postingan artikel tersendiri
mas mau bertannya..tentang cara menggunakan komponen TComport..pada delphi..
saya akan mengrim data berupa bit..melalui USB to serial yang terhubung ke beberapa IC baru masuk ke relay…nantinya Data bit yang dikirm dari komputer menggunakan program sederhanan..data bit tersebut akan memutuskan Relay tersebut..kiranya dapat membantu saya atau coding untuk cara menggunakan Tcomport mengrim data dan menerima data…help ya mas
Data serial yg keluar di port COM tipenya asynchronous, jd perlu penerjemah di sisi target. Biasanya sih pake mikrokontroller mas. Habis itu tinggal mikronya yg mengubah data serial mjd parallel. Kalo delphi/comport nya sih, kirim data string aja kyk biasanya. Kalo pgn mencoba krm data lwt port serial bs menggunakan soft 7G terminal
mas saya membuat sofwere sperti battery status pada leptop..jadi nantinya status battery percentnya yang akan menjadi patokan untuk ukuran jika 100% battery full maka relay akan of dan sebaliknya ketika 10% maka relay akan On? alat ud stenby mas tinggal cara bagaimana saya putuskan relay tersebut atau mengirim data bit..saya tidak pake IC suntik mas..sperti ATmega ..saya menggunakan alat usb to serial RS232 + ic max232 + ic hdls164 + relay… alatku terhubung dengan charger mas….jadi alatku yang menjadi pebatsan arus listrik dc Charger tersebut….mas kira2 codingnya sperti apa ya…klo kita menggunakan component Tcomport? contoh coding via RTS 232 atau… Read more »
yg anda maksud hdls164 itu shift register serial in parallel out, bukan. Kalo benar itu berarti memang nggak bisa buat menerjemahkan data serial yg keluar dr port serial. LS164 bekerja pd mode serial synchronous (membutuhkan clock sinkronisasi), sedangkan port serial (COM) komputer menggunakan mode asynchronous (tanpa clock sinkronisasi). sepertinya memang harus ada mikrokontroller utk project Anda. Kalo ngirim data serial lewat tcomport dg bhs delphi cukup dg comport1.writestr(‘datanya’);
mas Adjie mau tanya kenapa setiap saya coba kirim sms ke beberapa nomor hape, pasti ada beberapa yang tidak terkirim, kalau hanya 1-1 sieh bisa mas ?
Mohon tuntunannya
kasih delay min 5 detik utk pengiriman sms berikutnya
dalam interface diatas anda memakai modem apa? apakah modem huawei e173 support untuk atcommand mengirim sms? trims
utk tipe e173 saya belum pernah mencoba, tp kemungkinan support at command. Modem2 yg pernah saya coba ada disini
articlenya bagus bget mas, T.O.P dah. clo article comport untuk menyalakan dan mematikan led memakai paralel port ada gak mas? makasih ya mas atas share ilmunya, smoga yang kuasa membalas kabaikan mas.
ntar ada, ditunggu aja yach ^_^
saya coba iktin artikel yang diatas untuk kirim sms kok ngak bisa ya. saat saya tekan send seperti ngak ada respon, saya pakai mode e1153
COM nya sudah bener apa belum mas?
Artikelnya mantappppp…kalau ingin yang auto reply gimana mas???
terima kasih. utk sistem autoreply sms bs dilihat di http://saptaji.com/2011/07/19/membuat-software-autoreply-sms-dengan-delphi/
makasih ya mas atas penjelasannya….sangat bermanfaat..
mas,sya udh ikutin semua perintah di atas tapi ketika di klik send,hasilnya tidak terkirim ke no tujuan, ,
apa modemnya tidak support,karena di ports nya hanya ada 3g wireless-application interface (com13),3g wireless-diagnotic interface (com14), 3g wireless-PC UI interface (com15) tidak ada com port yang tulisannya NMEA. .
sya menggunakan modem advan dt-8. .
mohon pencerahannya. .
terima kasih mas. .
coba pakai COM15 (PC UI Interface), kalo masih ga bisa coba cari COM Port di dalam Device Manager | Modem (di tab ‘Modem’ setelah jendela properties modem terbuka)
masih belum bisa mas,kira-kira dimana ya kesalahannya?
ada software yg lagi akses modem ga? (misal software bawaan modem yg lg running). Kalo ada dimatiin dulu krn tdk boleh conflict dlm mengakses COM port
Mas Aji, begitu kirim SMS karena karakternya banyak jadi error bagaimana mengatasinya ? mohon pencerahan & terima kasih sebelum nya…..
errornya apa mas?
utk mengetahui arti error yg terjadi bisa baca2 artikel http://saptaji.com/2011/11/13/arti-error-code-pada-at-command/
Error nya ada yaitu 305 (Parameter Mode Teks invalid), tapi cara memperbaikinya blm tahu…..mohon bantuannya,terima kasih sebelumnya.
kemungkinan modemnya tidak support mode teks. Coba cek dengan command at+cmgf=? kalo hasilnya ada angka 1 berarti support mode text, tp kalo hanya ada angka 0 berarti hanya support mode PDU. Solusinya semua perintah dikonversi ke sintaks PDU atau ganti modem yg support mode teks.
Mas Ajie maap jadi banyak nanya, maklum gaptek tapi pingin bisa, sudah saya coba tulis di 3G at+cmgf=? hasilnya 0 dan 1 tapi pas saya coba yg bisa di kirim sms yg karakternya kurang dari 166 karakter. Bagaimana bila pingin lebih dari 255 karakter kalau dikonversi ke sintaks PDU maksudnya gimana yah. terima kasih. Wassalam
oiya, hrs pake mode pdu utk kirim long sms. PDU=Packet Data Unit, settingannya at+cmgf=0. Kalo at+cmgf=1 adl settingan mode teks
Mas mohon bisa share cara konv text ke PDU, dan kalau kita kirim format PDU nanti SMS yg keterima di HP yg dituju apakan masih format PDU ? saya perlu sekali untuk kirim sms lebih dari 250 karakter. Terima kasih.
mas coba cari fungction text2pdu di internet, ntar tinggal panggil function tsb kalau mau konversi dr teks ke pdu
Alhamdulillah mas ajie,,sya coba tidak ada error,.tpi kq sms tidak terkirim z??
pa d modemnya itu untuk settingnya disesuaikan dengan sim card nya?masalahnya untuk modem yg sy pakai ini telkom flash tipe SU-8600U, dan settingan untuk sim card nya masih manual ..
terima kasih,
Mas Ajie, bagaimana kalau mau membuat flag di database untuk sms yang gagal atau sukses terkirim. Trim’s
kalo ada balasan dr modem +CMGS=xx berarti terkirim, kalo ada ERROR berarti gagal. Tinggal di create aja satu kolom buat status sms berdasarkan respon modem td
mas ajie ….tandanya terkirim dan tidak nya sms ada tidak?
ni saya sudah mencoba 2 kali pakai 2 sim card yang berbeda koq tetep tidak bisa terkirim .
pa modemnya harus diconectkan dulu dengan internet?
kyknya modemnya perlu direset pake command at+cfun=1
kyknya modemnya perlu direset pake at+cfun=1
“at+cfun=1” p itu sebagai pengganti “at+cmgf=1” mas??
bukan mas, at+cfun=1 adl utk mengaktifkan functionality modem ke mode full function (bbrp sumber mengatakan seperti soft reset), sedangkan at+cmgf=1 adl utk mengaktifkan modem dalam mode teks
terus apa “at+cfun=1” itu dimasukkan ke source code button OPEN mas?apa source code “at+cmgf=1” yg ada dalam button OPEN diganti dengan “at+cfun=1”?
atau mungkin untuk me-refresh modem ada mini aplikasi lagi mas?
ditambahkan aja mas
siapppp ….berarti bkin button buat me-refresh mas…
maksih mas,.nnti sya coba ..
mas ajie..ni tanda terkirim dan tidaknya sms gimna?saya sudah coba dan tidak ada error,tapi sms nya kq tidak terkirim ke nmor tujuan z…apa masalahnya mas?
makasih bos artikelnya
Maaf mas ajie, mau nanya…, apa sistem kirim sms nya bisa dibuat kirim otomatis tdk mas? dan jika bisa bagian dari coding mas diatas yg mana yg harus d rubah atau ditambah mas? 🙂
bisa mas. Tambahkan komponen timer dan masukkan script kirim sms ke dalamnya. Ntar tinggal mengatur waktu aktifnya timer
Ok thank mas atas info nya 🙂
makasih buat tutornya akan saya coba
Kalau mau kirim sms lebih dari 160 karakter selain kita potong manual apakah bisa langsung dari cport nya? (maksud nya apakah ada event nya untuk itu?)
bisa mas, pake concatenate sms/long sms, tp harus pake mode pdu
wieh … sip mas udah berhasil ngirim smsnya
cuma koq mesti harus 2 percobaan tekan tombol sendnya ya
apa emang seperti itu ato sy salah ngetik codingnya ya?
ini codung yg sy ketik
procedure TForm1.BtOpenClick(Sender: TObject);
begin
if ComPort1.Connected then
begin
ComPort1.Close;
BtOpen.Caption:=’Open’;
end
else
begin
ComPort1.Open;
BtOpen.Caption:=’Close’;
ComPort1.WriteStr(‘at+cmgf=1’+#13#10);
ComPort1.WriteStr(‘at+cscs=”GSM”‘+#13#10);
end;
end;
procedure TForm1.BtSendClick(Sender: TObject);
begin
try
begin
ComPort1.WriteStr(‘at+cmgs=”‘+edit1.text+'”‘+#13#10);
ComPort1.WriteStr(memo1.text);
ComPort1.WriteStr(#26);
end;
finally
memo2.Lines.Add(‘send sms’);
end;
end;
ditunggu dulu mas, siapa tau dari operatornya yg lama. harusnya sih sekali sdh bisa terkirim
oya mas bisa tidak tulisan yg terkirim ke no tujuannya itu hanya messagenya aja, bisa tidak mas? jadi tulisan at+cmgs=”no tujuan” ga usah ikut terkirim di layar pesan no tujuannya….
harusnya memang tidak ikut terkirim at+cmgs -nya. Kemungkinan modemnya queueing eksekusi perintah sebelumnya
mas kenapa waktu kirim sms ada sms yang isi pesannya kosong dilayar hp penerima? sy buat debug di event OnRxChar yg menyimpan setiap interaksi cport ke memo
nah kalo liat tanda2 dari log memonya, isi teksnya yang berhasil ke kirim (muncul di layar hp penerima) itu muncul tanda > setelah tombol send di tekan
tolong dong beritahu bagaimana caranya supaya waktu pengiriman sms isi teks selalu terkirim ( tidak kosong ) dan lebih stabil ( muncul tanda > setelah tombol send ditekan. plz ya
ini pake modem apa ya? selama ini saya pake bermacam2 tipe modem jg ga ada masalah
sudah ku coba pak, tapi gak berhasil, di Run bisa tapi SMS nya gak nyampe nyampe. boleh tw knapa ya pak?
apa kerana modemnya CDMA ya?
tapi dah kucoba ganti GSM jadi CDMA
ComPort1.WriteStr(‘at+cscs=”GSM”‘+#13#10);
ComPort1.WriteStr(‘at+cscs=”CDMA”‘+#13#10);
untuk modem cdma, perintah at command-nya berbeda dengan at command utk modem GSM. Contoh source code di artikel di atas adalah utk modem GSM
makasih pak. bleh tw gimana listing programnya untuk CDMA pak?
coba googling dulu mas. Agak susah cari at command utk modem CDMA
mas, kalo misalnya pas kirim sms itu di kasih filter kalo sms gagal terkirim akan muncul message dialog gimana ya caranya?
indikasi sms terkirim kan ada respon code +CMGS:xx. Nah jika dalam bbrp waktu tidak muncul respon code tsb, dianggap sms gagal terkirim. Utk mudahnya, gunakan function showmessage utk menampilkan pesan bahwa sms gagal terkirim
oh gtu yaa, terima kasih mas.
kalo misalnya saya potong pesannya jadi 3 bagian, trus saya kirim ke nomor yang sama dengan looping apakah memungkinkan mas?
soalnya udah saya coba sms yang masuk cuma part 1 aja.
bisa juga sih, tapi kalo isi sms > 160 karakter sebaiknya menggunakan mode long sms
iya sih mas, tp belom nemu untuk mode long sms. hhehe
oh iya mas, cara nyimpan jawaban dari at command itu pake readstring itu bukan??
iya, pake readstr
oke mas, terima kasih. ini udah bisa
mas, boleh gak saya minta komponen comport nya, soalnya link yang mas kasih udah expired,
mohon dibalas mas 🙂
silahkan mas https://docs.google.com/file/d/0B9SAGqlrEVzCY0hsaElOVmtrTm8/edit?usp=sharing
Mas,
Aku baca buku mas Ajie ttg SMS Gateway Delphi, dan kalo mas masih inget duluuuuuu kita pernah bahas ttg baca sms panjang via whatsapp. saya dah coba tapi gagal mas, bisa tolongin saya mas??? soale di buku mas ajie tsb cuma ada kirim smsnya, nggak dibahas masalah baca smsnya
iya pak, sy masih inget :-). Ntar sy posting kalo sdh berhasil
mas aji, saya install componen Cport dan berhasil, tapi setelah saya coba ternyata di run error, ini mas command error nya, [Fatal Error] Unit1.pas(7): File not found: ‘CPort.dcu’, mohon pencerahanya mas. thnks
baca di sini mas http://saptaji.com/2013/08/03/mengatasi-error-cport-dcu-not-found-di-delphi-7-dan-delphi-xe2/
mas, link cport sudah tiada,,
bisa tolong untuk uploadkan ulang ?
terima kasih
artikelnya sangat membantu saya
terima kasih banyak
bisa dicari di sourceforge.net mas
Mas mau tanya neh…, kalau kita membuat aplikasi sms menggunakan delphi apa bisa “Masking ID Sender”…? Kalau pun bisa ada nggak komponennya..? atau ada AT-Command khusus untuk itu..? mohon penjelasannya. Terima Kasih.
bisa aja mas, tp hrs pake metode SMPP (ngehit langsung ke SMSC via content provider). Utk model ini dibutuhkan koneksi internet atau VPN ke SMSC operator. Kl lewat at command ke modem ga bisa
Mas, saya tertarik dengan metode SMPP yang dimaksud sama mas ajie, kalau bisa mas ajie posting materi metode tersebut. Terima kasih.
googling aja dulu mas
Kalo membuat tanda bahwa modem sudah terkoneksi?? ya.. seperti membuat status connected atau seperti tanda signal, atau tanda kedipan agar meyakinkan kita bahwa modem tersebut sudah terhubung ke operator, caranya gimana ya…??
bisa pake kombinasi command at+cops (status operator) dan at+csq (status sinyal)
mas..gmn kalo kirim sms broadcast?
tinggal diulangi aja prosesnya
mas sy mau nanya,kenapa waktu saya coba send terjadi error mas (‘Port Not open’),padahal setting port.x udah bener mas…
NB :modem yg sy pake tuh vodafone type K3715, trus OS. Win 8…
apa nggak compatible yah mas delphi7 ma win.8?
mohon pencerahan.x mas…
terima kasih
coba dipastikan dulu software bawaan modem benar2 ga running. Biasanya (kl win7) di taskbar sebelah pojok kanan bawah, icon software bawaan msh running
running mas, tapi tetap port.x nggak mw di buka mas. . .
software bawaan modem dimatiin mas, jgn dirunning. Baca lg comment sy sblmnya
mas, kalau mau ngirim long message gmn?
soalnya kalau lebih dari 160 karakter itu tidak bisa.
hrs pake mode pdu mas
_Mas Ajie… Untuk Long Sms.. Kenapa cuma beberapa kali saja berhasil mengirim… seterusnya tdak terkirim…. memang pada at commandnya tertulis terkirim… Tpi HP target tdak menerima SMS…
coba delay-nya ditambahi
text.nya diubah ke 7bit gt mas ajie ??
kalo mode text ga usah mas
kalo saya mau ngirim long sms pake mode PDU, itu text + nomor tujuan.nya d.format ke 7bit mas ??
iya, betul mas
comport1.writestr(‘at+cmgf=0’+#13#10);
comport1.writestr(‘at+cmgs=”‘+GSMEncode7Bit(edit1.text)+'”‘+#13#10);
comport1.writestr(GSMEncode7Bit(memo1.text));
comport1.writestr(#26);
seperti itu mas ??
dicoba aja mas, bisa atau ngga
Mas ajie mw tanya..
gmn coding untuk menfilter sms supaya kalau sms yang dikirim oleh member tidak sesuai dengan isi dari tabel “nopol” tidak tersimpan ke tabel inbox….
tolong pencerahannya….
mas aji gimana cara kalau kita mw memfilter salah satu filed dari tebel???saya coba pakai script ” if zquery2.recordcount=1 then” tapi malah memfilter seluruh filed yang ada dalam tabel??? mohon pencerahannya….trimakasih
maksudnya gmn mas?
mas kalo untuk mengirim secara broadcast sourcodenya gimana ya mas
mas source code untuk pengiriman pesan tanpa menginput tanda titik atau koma, setelah sms masuk kepeda penerima sudah ada tanda titik atau koma tersebut? contoh mengetik “tadi” di edit1, mengetik lagi “siang” di edit2, pada saat si penerima menerima sms “tadi.siang” mhon bantuanya,
maksudnya gmn? bingung
It is actually a nice and helpful piece of information. I am happy that you simply shared this helpful information with us. Please stay us informed like this. Thank you for sharing. bdbacdkgfeca
kang mau tanyak, boleh ngak?? boleh ya.. pliss…. 😀
kan aku dah ngikutin cara diatas, waktu tak klik send sms.a… kok kagak masuk sms.a ya kang?? padahal hp juga ada disebelah modem… aku coba diatas modem juga tetep kgak bisa… :p
pa ada kang script yang buat semacam message box low sms.a terkirim gitu kang?? low ada mohon tuturnya kang…
untuk setting modem.a pa cuman gitu aja kang??
low aku lihat yang make gammu kan kayak di identifikasi dulu gamu.a konek gak ma modem.a…
low yang make comport kyak gini gimana ya kang?? mohon pencerahannya suhu…
mungkin settingan modem blm benar. Langkah2 pengecekan :
1. cek COM port modem lewat Device Manager. Pastikan settingan comport di aplikasi sudah sesuai
2. Pastikan tidak ada service/apliklasi yg sedang mengakses COM port modem (misalnya software bawaan modem, Gammu, dll)
3. kalo kirimnya pake hp, pastikan hp-nya support mode teks. Caranya lewat hyperterminal/putty ketik at+cmgf=1, kalo responnya ERROR berarti tdk support mode teks. Kalo pake modem pada umumnya sudah support mode teks semua
tanya lagi dong mas.
kalau 1 modem dibuat kirim + nerima yang aman gmn ya ?
soalnya kalau indikator sms dinyalain pas sms masuk dan modem lg proses sms keluar kan error.
belum lg kena hapus pesan tiap ada sms masuk.
sementara sih saya akalin pakai timer.
ada cara yg lebih cepet ?
kalo kirim sms jadikan prioritas pertama, baca sms prioritas kedua. Utk baca sms pake metode polling aja jangan yg sistem live/real time
Bang bisa bantu ane bikin progam SMS gateway memakai delphi… sudah pusing ni bang error terus hasilnya….
bikin program ya gitu ‘keasyikannya’, dinikmati aja 🙂
Mas ajie..bagaimana tips agar sms broadcast/massal bisa sampai semua ke penerima..saya pakai cport dan delphi..maksimal 1x klik untuk brp nomor hp?apa ada batasan atau terserah? dan apa bisa sambil kirim juga terima informasi status terkirim ke nomor massalnya itu..sebelumnya trims…
biasanya hrs dikasih jeda antar pengiriman sms minimal 3 detik
om…
nasib saya kayak kebanyakan temen-temen di atas,
ga ada error, termasuk pas send,
tapi ga ada sms yang masuk di HP,
saya yakin semua nya sudah sesuai,
soalnya saya coba di hyperterminal, itu sms kekirim,
dengan setingan yang sama,
tapi pas dipake di delphi,
entah kenapa ga kekirim,
mohon pencerahannya,
coba cek ini mas :
yg pertama, pastikan tidak ada aplikasi lain yg sedang mengakses port COM modem. Biasanya software bawaan modem blm benar2 close walaupun sdh dimatikan. Cb cek di task manager atau paling tidak cek di taskbar kanan bawah, msh ada icon-nya atau tidak. Termasuk hyperterminal hrs dimatikan dulu ya
yg kedua, cek apakah port COM modem sdh benar atau blm.
Kalo baca dari comment mas di atas, sdh bs pake hyperterminal berarti port com sdh benar, tinggal dicek kemungkinan yg pertama
Kalo masih blm bisa coba comment lagi mas
dobel post gag ya….biasa, inet lemot …
pak saya sudah bikin program kirim sms utk sekolah, berhasil dengan baik
Tapi kalo kode kirim sms saya masukkan ke looping utk dikirim ke semua siswa 1 kelas tidak terkirim.
Bagaimana cara cek kalo proses kirim pertama selesai, sblm kirim sms berikutnya ?
Atau haruskah pake timer ? atau ada event dari Comport yang bisa dimonitor ?
Mohon pencerahannya pak. terima kasih.
kl berhasil kirim sms ntar akan muncul kode +CMGS:xx, tinggal di detect aja kode itu, bisa pake timer atau teknik yg lain
Pak kalo misal mau dikirim ke banyak nomor langsung itu gimana yah..?
terima kasih..
pake script di atas+timer. Jadi script di atas diulang-ulang aja di dalam timer. Cuma harus ada mekanisme untuk mengubah no tujuan (bisa ambil dari database atau file)
terima kasih pak.. saya coba dulu..
ntar kalo ada yg error lagi boleh tanya lagi kan pak ajie..
writefile function failed (win error code:6)
itu kenapa ya pak. padahal portnya sudah saya ganti.. posisi modemnyapun sudah saya pindah.. tapi tetap muncul.. mohon bimbingannya Pak..
terimakasih..
biasanya karena ada software lain yg sedang mengakses port COM modem. Contohnya aplikasi bawaan modem
nambah lagi masalahnya Pak..
jadi “Unable to open com port (win error code:2)” itu setelah saya keluarin app modemnya..
hehehe.. maaf Pak ngerepotin..mohon bimbingannya
aplikasi bawaan modem jangan di-uninstall ya, ntar driver modemnya ikut hilang. Akibatnya muncul error di atas. Cukup di-close aja aplikasinya
gan izin tanya lagi, ane saat waktu ngirim ada bacaan error ” project.exe raised exception EcomPort with message’port not open’. process stoppep. use step or run to contiune”.. itu kenapa ya gan?
dan satu lagi mas waktu klik send. kenapa sms nya ga masuk ya?
kemungkinan karena gagal konek ke modem
biasanya karena com port modem ada yg pake (misal software bawaan modem)