n the last few years, SMS (Short Message Service) has made a big impact on the way we communicate (or at least the youngsters). Instead of communicating over the phone using voice, more and more people are turning to using SMS for messaging. One of the popular uses of SMS is for voting. For example, you can vote for your favorite contestant on the television program "American Idol" by simply sending an SMS message to a particular phone number. This is then automatically tabulated into a final vote count for each participant. Traditionally, to implement such a system, you needed to buy an expensive SMS gateway, which is overkill for a small project with limited budget.
In this article, I will show you how you can use a Windows Mobile 5.0 Pocket PC device as an SMS gateway for voting purposes. Figure 1 shows the architecture of the example system you will build.
The following steps show the communication protocol between the Pocket PC application and the server application:
- The user (phone number +123456789) sends an SMS message to the Pocket PC, e.g. "VOTE A 987-65-4329." The message format is: VOTE <Choice> <Social Security Number>.
- The Pocket PC receives the message from the user and forwards it to the server application along with the phone number. The server receives the SMS message and tallies the vote count. The communication between the Pocket PC and the server is conducted over a Bluetooth connection.
- The server sends a command "SEND:+123456789:Thank you for your vote!" to the Pocket PC application.
- The Pocket PC receives the command from server and sends an SMS message "Thank you for your vote!" to the phone number +123456789.
In this system, there are altogether two components:
- A Pocket PC application that sends and receives SMS messages
- A Windows application that communicates with the Pocket PC application and keeps track of the number of votes.
What You Need
To build the SMS Gateway system described in this article, you need the following:
- A Windows Mobile 5.0 Pocket PC Phone Edition device (with Bluetooth capability). You would also need to have a valid SIM card that allows you to send and receive SMS messages.
- A Bluetooth USB adapter to connect to your PC.