Showing posts with label AdiumSMSEmail Plugin. Show all posts
Showing posts with label AdiumSMSEmail Plugin. Show all posts

Wednesday, January 23, 2008

Adium SMS / Email Plugin "Improvements"

There's lots of things I should be blogging about:
  • My Christmas in Ghana
  • My job search and how its gone so far
  • My thesis (I'll finish setting up my thesis blog today)
  • My current coding exploits
For now I'd like to get my Adium plugin up and running before the semester starts
so its taking priority.

I corrected a bug in the original version thanks to advice from Peter Hosey.

I added Four Canadian service providers (Rogers, Telus, Fido and Bell Mobility) as per requests from users. With regards to service providers, many more can be added. The only problem will be testing since I personally don't have access to that many people in countries outside of the U.S. with cell phones. Here is my current policy: If you want a service provider added, let me know about it. I'll add only if you are prepared to test the smtp gateway and confirm that it works.

There is now support for AddressBook. I'm still maintaining a "Save Settings before Sending Email or SMS policy"; that might change depending on feedback. When
you open the Edit Email/SMS Settings window, there is a drop down text field.
If your contact is already in AB, I pull all their associated phone numbers and email addresses in the order in which they appear in AB. From there, you can select and save whichever email address or phone number you prefer.

Any and all feedback on the plugin is appreciated. I'll post the new source code shortly for critique but for now I just want feedback on the plugin proper. See previous plugin
posts
on how to use the plugin, what it does etc.

Note plugin is in beta stage. License can be found here

Download the plugin here

Wednesday, August 15, 2007

Univershally : SMS plugin FIXED

A couple of users were having problems with my SMS plugin. It was working fine on my machine though. I knew the code was right: it had been double checked by myself and the adium devs.

Thanks to a nice user (Comster) who volunteered to help me figure out the problem I think I have a fix. It was a really dumb mistake .... I didn't build a universal binary so it was giving probs on ppc machines.

I'll have him test it out and update this blog as soon as I confirm that my fix was right.

dumb nOObs ... ha


Update: I was right ... my universal build worked on his machine. Hopefully this will address the problems other users faced when trying to use the plugin. I'll be updating my links after I do svn commits and update the Xtra's site.

Sunday, July 8, 2007

Afterthoughts

After doing a lot of googling, forum and irc questioning and direct email and ims I have come to the following conclusions.

Currently there is no "easy" free way to enable your Cocoa app. to send sms messages.

Sending emails from a Cocoa App is possible. You however need to provide information on the smtp server doing the sending. If your app is going to be distributed to end users, they will have to enter this information. There might be port settings and TLS stuff to consider. Here are two frameworks that might work EDMessage MailCore.

I'm a bit disappointed that I couldn't find a really clean way to implement the desired plugin funcitonality. Currently, the only improvements I can come up with are trying to format the sent message so it doesn't display the from address as the username@machinename.local. Also, aim users can send txt to mobile phones even though the message format is still the same. For now I'll go ahead and submit it and see what the developers have to say ... and then the user community too since in the end its their voices that matter the most.

Meanwhile, I'll look for other stuff to work on.


Thursday, July 5, 2007

Adium SMS Plugin (almost) ready

A brief introduction to what the plugin does.
First it lets you right click on a contact and choose a Send Email option which opens up your default email app. You can save whichever email you'd like to associate with that contact when you choose the Edit Email / SMS preferences option. I added Send Email because I had seen it on other chat clients and its really simple to implement. I think it should be a part of the Adium Source.


The second thing the plugin does is enable you to send free sms messages to a contacts with US Phone numbers from AT&T, AllTell, Metro Call, Nextel, Sprint PCS, T-Mobile, Verizon, Virgin Mobile. I have only tried sending to T-Mobile and AT&T and both worked fine. You have to save your contact's SMS settings before attempting to send a text message. Each service provider has a limit on the message length. I'll look into that and add that information to later versions.

How it works
The plugin is actually a convenience rather than something that does something new. It sends the sms messsages via email; a service which almost all Phone companies now provide for free. I got this idea from my Software Engineering class last semester where we built a board game hub in which we managed a database of players and their respective board games. (We had just Tic Tac Toe and Chess). When it was your turn to make a move, the system would send you either an email or txt message notification depending on your saved settings.

Feedback
The main reason I did this was to get me started learning Cocoa and Objective C. There's a couple of things I'd like feedback on for both the source and plugin itself.
For the source:
  • Any general comments regarding how sections of code could be better done i.e. making the code more efficient.
  • Currently I use Unix's mailx to send the txt message. I think almost every mac should have it, there might however be exceptions. I looked into various options when trying to implement this. There was an email framework called MailCore that I tried using. The only problem with it is that it needs information on the server that is doing the mail sending (ie. server name, user name, password etc.).
  • Ideally I would like to implement this by having the code send the txt message to some Wireless Application Protocol or SMS gateway that then forwards the messages to the phones. There is open source stuff to help set up these gateways (Kannel is one example) but I don't want to have to host the hardware to do this. If anyone knows of any free SMS or WAP gateways that can be used for I would appreciate having that information.
  • The messages on the phone are formatted a certain way. ie. The sms message has a number as a subject with yourMacusername@yourmachinename.local. I'm looking into how to format the message so it displays only your contact's screenname or something like "Adium TXT from contactName" in the subject heading. Any hints on how to achieve that would be much appreciated.
For the Plugin itself
  • The UI needs work. Or maybe not. Any comments on it are welcome.
  • If you can think of any additions or modifications to the idea let me know, I'll see if I can implement them.
I have some free time on my hands this summer so if there's an Adium feature you'd like to see which isn't being worked on now by any of the team or their SoC students, you can let me know and I might work on it or find someone who will.

Thanks to all those nice people on #adium and #adium-devl who helped me with bugs. Also, big thanks to Peter Gibson, a lot of the source was based on his Time Zone Plugin. I leave for Uganda in a week and some days so I'll be working on this all week so that its hopefully ready for release before I leave.

To install the plugin, drag it onto the Adium icon in the dock and restart Adium.

To use right click on a contact and you will see the following options:
Send Email...
Edit Email/SMS Settings...
Send SMS...

To uninstall the plugin navigate to
yourHomeDirectory/Library/Application Support/Adium 2.0/Plugins and delete the plugin.

AGAdiumSMSPlugin

AGAdiumSMSPlugin Source Code

Blog Archive

Labels