SMS is a useful tool for engaging audiences in conferences and other corporate events. I have been running SMS activities in my company events for the past 10 years:
- SMS Registration and Check-In: Send an SMS to sign up for events and report your attendance
- SMS Q&A: Send a question or idea via SMS.
- SMS Polling: Poll the audience for their opinions through SMS and display a real-time bar chart.
- SMS Quiz: Answer a multiple-choice quiz via SMS and win a prize.
- SMS Feedback: Gather feedback from the audience at the end of the event.
Previously I have used large, commercial SMS aggregators to run these activities. SMS aggregators connect directly to mobile operators to send and receive large volumes of SMS messages, but they can be expensive and slow to set up. I recommend them only for large events when you need to receive SMS messages from hundreds of people simultaneously.
For smaller events, I previously used a PC-based SMS gateway software (like Ozeki SMS Server) connected to a USB GSM Modem. However, using this method to support multiple SMS numbers can be tricky because you need to connect multiple GSM Modems to your USB ports and configure your SMS Gateway software to use the right COM ports. This solution gets quite messy to manage when you have many GSM Modems tethered to your PC.
At my most recent event I used a newer, simpler solution: using my Android phone as an SMS Gateway. I installed the free SMS gateway app on my Samsung Galaxy S II, and configured it to transmit all SMS messages received to my Windows Azure cloud server via HTTP requests.
I wrote a simple ASP.NET program to append the messages received into a Google Docs Spreadsheet using the Spreadsheets API.
I could then flash the spreadsheet on the projector screen and show the messages as they came in, updated in real-time. Moderating the messages was very easy--just delete the spreadsheet row containing the message. The Android SMS gateway solution was easy to deploy and easy to reuse without any messy tethering.
Sending SMS through the Android SMS gateway was not quite as easy, though, since my SMS processing ran in the cloud. So I chose to use a commercial SMS aggregator (BulkSMS), invoking their SMS API to send out SMS responses quickly and reliably.