Solved

send sms using a gprs modem

Posted on 2006-10-22
4
2,430 Views
Last Modified: 2013-12-26
Hi expert...

I am developing an application using PB 6.5 for sending sms using a gprs modem (iTegno 3000).
How can I connect my application with the modem.

thanks
0
Comment
Question by:micky_ng
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
4 Comments
 

Author Comment

by:micky_ng
ID: 17793508
Dear Experts...

I am trying to use MSComm32.ocx now. Do you have an example for sending sms trought a gprs modem ?

thanks
0
 
LVL 6

Expert Comment

by:tr1l0b1t
ID: 17818011
0
 
LVL 6

Accepted Solution

by:
tr1l0b1t earned 250 total points
ID: 17818208
Using MSComm32.ocx ...you must send AT GSM commands to the modem.
This page will be useful to get the basics : http://www.traud.de/gsm/sms.htm

Full list & specifications of AT GSM commands are at ETSI page :
(http://webapp.etsi.org/key/key.asp?GSMSpecPart1=27&GSMSpecPart2=005)
...an extract :

SMS Commands SMS Text Mode
---------------------------------------
AT+CSMS   Select Message Service
AT+CPMS   Preferred Message Storage
AT+CMGF   Message Format
AT+CSCA   Service Centre Address
AT+CSMP   Set Text Mode Parameters
AT+CSDH   Show Text Mode Parameters
AT+CSCB   Select Cell Broadcast Message Types
AT+CSAS   Save Settings
AT+CRES   Restore Settings
AT+CNMI   New Message Indications to TE
AT+CMGL   List Messages
AT+CMGR   Read Message
AT+CMGS   Send Message
AT+CMSS   Send Message from Storage
AT+CMGW   Write Message to Memory
AT+CMGD   Delete Message

PB source code should be something like this (just pseudocode):

String ls_data

OLEObject ole_1
ole_1 = create OLEObject
ole_1.ConnecttoNewobject("MScommlib.Mscomm")

// Configure the communication's port
ole_1.object.CommPort = 1
ole_1.object.Settings = "9600, N, 8, 1"
ole_1.object.InputLen = 0

// Open it
ole_1.object.PortOpen = True

// Send data
ole_1.object.Output = "AT " + char (13)

// Wait for "OK" response
Do
    ls_data += ole_1.object.Input
LOOP Until (Pos (ls_data, "OK") > 0)

// Close port
ole_1.object.PortOpen = FALSE

ole_1.DisconnectObject()

As you see, it's a very extensive subject  but I hope
you got the idea. I reccommend you to test AT commands with
Hyperterminal, then code the working sequence in PB.
Regards
0
 

Author Comment

by:micky_ng
ID: 17841097
Hi... Sir...

thanks very much for your detail description. It is very helpful.
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Update (December 2011): Since this article was published, the things have changed for good for Android native developers. The Sequoyah Project (http://www.eclipse.org/sequoyah/) automates most of the tasks discussed in this article. You can even fin…
Here is a helpful source code for C++ Builder programmers that allows you to manage and manipulate HTML content from C++ code, while also handling HTML events like onclick, onmouseover, ... Some objects defined and used in this source include: …
The viewer will learn how to use NetBeans IDE 8.0 for Windows to connect to a MySQL database. Open Services Panel: Create a new connection using New Connection Wizard: Create a test database called eetutorial: Create a new test tabel called ee…
The viewer will learn how to synchronize PHP projects with a remote server in NetBeans IDE 8.0 for Windows.

740 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question