Blog: Mobile Phones

Setting Up a Two-Way SMS Gateway with Gnokii and Drupal
coder, sms integrator

Gnokii Sends and Receives SMS Text Messages Using USB or Bluetooth

Gnokii Sends and Receives SMS Text Messages Using USB or Bluetooth

In addition to all of the work being done on the SMS Framework, we have also started researching how to quickly create our own two-way SMS gateway for sending and receiving SMS messages. It is a proof of concept based on needs we are hearing from development agencies. Our solution is based around gnokii, an open source project that can be used to control the various functions of any mobile phone it supports. gnokii sends and receives SMS text messages over a USB or Bluetooth connection with the phone. 

In our setup we’re using a Nokia 6102i mobile phone, gnokii 0.6.8 (installed using Macports) and a MacBook Pro with Bluetooth.

A daemon, written in Python, manages the process of sending and receiving messages and a Drupal module acts as the end point on the Drupal side. The daemon periodically checks the phone for incoming messages and the server for outgoing messages. If a message is found it is processed and passed to the other side.

An outgoing message that originated from a Drupal module will be stored in a queue temporarily. The daemon checks the queue using an HTTP request. When it finds the queued message it connects the phone, sends the message, and clears the item from the queue. Incoming messages are handled in a similar fashion. When a message is first received it is queued on the mobile phone temporarily. When daemon finds the message waiting on the phone, it passes it to the server using an HTTP request and deletes the entry from the phone.

We are making the daemon open source so check out the code in the Drupal CVS repository and let me know if you want to talk about this.

SMS Framework 1.0 released + 1.1 Roadmap on Drupal Groups
coder, sms integrator

Drupal and SMS Integration, Ready To Go

Drupal and SMS Integration, Ready To Go

The 1.0 release of the SMS Framework is now available for download from Drupal.org. The project has come a long way since it’s initial development release last summer and is now ready for use. Numerous fixes and functionality improvements have turned the SMS Framework into a robust tool for integrating SMS and Drupal.

This release introduces a rewritten SMS user module, which allows your users to provide and confirm their mobile information. Thanks to Tylor from Raincity Studios an SMS receive module and a gateway module for Mobile Muse are included in version 1.0. Expect to see more gateway modules with receiving support in future releases.

We’re already looking ahead to work on version 1.1, which will focus on improving international support, expanding documentation, and upgrading to Drupal 6. Please review and edit the latest roadmap on the wiki and submit feature requests to the project’s issue tracker.

Roadmap for 1.1

  • Improve international support
  • Standardized phone number format
  • Drupal 6 release
  • Write more API documentation
  • Improve the SMS Blast module
  • Ability to make double opt in optional
  • More gateway modules that support receiving
  • Improve sms_receive module
  • Remove behavior mapping

I go into more details on these points here.

Improving SMS Double Opt-In Process with SMS Framework
coder, sms integrator

Usability, Customization Options, and Data Storage Improvements have been Committed

Usability, Customization Options, and Data Storage Improvements have been Committed

We’ve been improving the usability, customization options, and data storage architecture of the “SMS User module,” (which is included as part of the SMS Framework). The module allows your Drupal site to store mobile information for users that can then be used by other modules. To ensure that a user actually owns a number we use a double opt-in process where a confirmation message is sent to the handset with a four digit code. The user is then asked to enter this code to confirm ownership. Here is a screencast showing how this works.

As you can see, site administrators can now customize the text of the confirmation message using the token module. So if Obama was using Drupal to run his awesome SMS campaign, he could now have a confirmation message look like “Together we can bring change. Confirm your number at [mobile-url] with the code [confirm-code] to get locally targeted messages.”

Here are the two options hooks into the token module:

  • [confirm-code] The mobile confirmation code for the user.
  • [mobile-url] The URL for the user’s mobile settings page.

Here is a screenshot showing each step so you can see the new work done.

SMS Framework Presentation is Going to Rock DrupalCon
Strategist

Join Us Thursday at 2:00 pm in Barcelona or Online

Join Us Thursday at 2:00 pm in Barcelona or Online

Everyone who wants to integrate Drupal with an sms campaign should come to tomorrow's session SMS and Drupal. It's starting right after lunch at 2:00 pm in the Picktek room. The goal of the session is to let people know about some of the exciting things you can do with sms and about some of the great tools that already exist. There will be a live stream of the talk from the official DrupalCon website.

I'm moderating tomorrow's session and had a great meeting today with all the players to prep for it. Will White, the Summer of Coder who worked on sms integration, and his SoC mentor Ian Ward planned out a demonstration of the new sms API, while Jeff Miccolis flushed out some of his past experiences with sms campaigns to talk about, including one with Planned Parenthood. We also got to meet Chad Phillips for the first time, who was a huge help to Will this summer in getting sms to email integration working (which allows small Drupal sites to have free sms integration). Chad will end the presentiment with a demo of his work on a two-way email gateway functionality.

Everyone who was at the Google Summer of Code presentations today got to hear a short teaser of the work Will has done. Tomorrow you'll get to hear all the details and see a live demo. You can watch Will's screen capture SMS Email Gateway + Send to Phone Inline SMS Filter for Drupal if you want to get another sneak peak. 

 

Some Things Go Better Together – SMS and Drupal

Building an SMS framework to integrate with Drupal

Building an SMS framework to integrate with Drupal

Considering the technology is 15 years old, text messaging is sadly lacking in its ability to integrate with other applications. Luckily that’s about to get easier, and it’s long overdue.

This summer Will White is developing a framework that allows sms functionality to easily integrate with Drupal as part of Google’s Summer of Code. By the end of the summer, he’ll have created a driver-based API that works with common sms service providers and syncs with Drupal core and contributed modules. This means the hottest open source content management system will soon have the best sms integration, and everyone with a Drupal website can take advantage of it.

Emergency Messaging: Remember Who You’re Talking To
Strategist

Targeting SMS Messages to Your Audience

Targeting SMS Messages to Your Audience

It’s wicked hot in DC this week. We’re in the middle of a heat wave, one so intense that even big thunderstorms aren’t helping to cool things off (in fact, yesterday the steam rising off the streets after a storm made the humidity worse). So I wasn’t surprised when I got this text message yesterday, although I was confused:

I get “heat emergency,” but what does the rest of that mean? What’s Washington’s heat emergency plan, where are the cooling centers, and what the heck is DCHSEMA? I’m used to crazy acronyms being tossed around here - we’re a city that’s known for them - but even Google let me down on this one. A search for DCHSEMA only turned up three hits, two of which were PDFs. One led me to determine that HSEMA is the Homeland Security and Emergency Management Agency.