Address Book SMS Plugin

In the distant past, the Address Book app in Mac OS X Tiger could send mobile SMS messages directly from within the app, if you paired your mobile phone with your Mac via Bluetooth. Along came Leopard, and the feature mysteriously vanished without trace or explanation, and hasn’t reappeared since. Missing the feature, I found a roundabout replacement in the emitSMS dashboard widget. It offers SMS sending via Bluetooth and can also search the Address Book for phone numbers. Having seen that the source code for emitSMS was released, I adapted the backend into a plugin for Address Book.app to provide the missing former functionality.

The latest version is v3, which has a few bugs fixed, in particular the one which caused it to hang after sending an SMS on some phones. It also now uses native Mac OS X methods to communicate with the phone, rather than an emulated serial port.

Download, unzip and place the plugin in /Library/Address Book Plug-Ins/ and restart Address Book. You should then be able to click on a phone number on a person’s card and select “Send SMS via Bluetooth” to send them a SMS.

Screen shot of emitSMS Address Book pluginThe source code is also available, under the same MIT license as the original emitSMS source code.

Notes

The plugin should be compatible with Address Book in Leopard and Snow Leopard.

To use the plugin, you must first pair your phone with your Mac, by using the Bluetooth Setup Assistant. This assistant can be accessed by clicking the ‘plus’ button in the Bluetooth System Preferences panel.

After you select a port to use in the pop-up menu, it will test the port for SMS sending capabilities. The port will only be usable if the test succeeds. Some phones seem to be a little flaky when communicating via Bluetooth and require the test to be run a few times before it can establish a connection successfully. If it fails initially, try clicking on the port again.

If ‘Long Messages’ is not enabled your messages will be limited to 160 characters (or 70 characters if you use symbols outside the standard GSM set, e.g. ^ ). Not all phones support the sending of long messages (actually splitting the message into several SMSs). Additionally, not all phones support requesting delivery receipts.

In general, if your phone works with the emitSMS dashboard widget, it should work with this plugin as the same underlying method is used to send the SMSs.

Debug Version

If the plugin doesn’t work with your phone, replace the installed version with the debug version from here. Then try to send SMSes using the plugin. A log file, ABSMSPlugin.log, should be created in your home directory; send me the log file and I’ll try to add support or figure out the problem.

5 Responses to “Address Book SMS Plugin”

  1. Julius says:

    Hi,
    This is the contents of the log file.
    > ATE0
    AT+CMGS=?
    <
    +CMGS: (?),(?),(?)

    OK

    My phone model is samsung 3310.

    • sigmaris says:

      Can you download the latest version (2.2) and try it out? I’ve included a small fix that should get around this problem on your phone.

  2. Thom says:

    This is great! One question. The “Send using:” pop-up menu offers me 2 options. They are “LG-GR500: Dial-up Networking” and “LG-GR500: Serial Port 1″. Is one method preferred over the other? (LG-GR500 is my phone model)

    • sigmaris says:

      It varies between different phones, often both will work but occasionally only one of the options will work. Try out both options, if they both work then there is no preference for one over the other.

  3. Pino says:

    Great tool :)
    I didn’t succeed to get the message to be saved in phone sent tray of mine E55.
    Is it possible to get this functionality in some way?
    Thank you

Leave a Reply