Friday, July 27, 2007

Trick Google Calendar and send free SMS!

You have probably heard about google calendar's option for sending free SMS notifications about your calendar events.
Some time ago, while playing with google-calendar-data-api , I got an idea to write a program that would allow its users to send sms for free.
Sender and recipient both must have their google calendar account.
Recipient MUST set up her/his account for receiving SMS messages(This can be done in google calendar in "Settings->Mobile Setup") and then for receiving SMS notifications (in "Settings->Calendars->Notifications" check the "New invitations: SMS" checkbox).

So, how it works..
When a sender wants to send sms, she/he enters the text of the message and email address(es) of the recipient(s). Then the program, using google-calendar-data-api, tricks google calendar by creating an event (with no body, just the subject (text of the message)) and invites recipient(s) to that event (by sending the event notification to all email addresses user entered).

After that, the google calendar account of every recipient informs her/him about the event she/he is invited to by sending the sms notification which contains the event's subject.

And that is it.
Google Calendar becomes the free sms service :)

Of course there are some limitations.
Anyone can receive up to 20 messages per day, up to 150 per month. (Number of messages the user can send is unlimited)
The format of the message is: "SENDER'S NAME invites you to: MESSAGE TEXT @time and date"
The sms is sent by google, so my program can't do anything to format it.
The number of the characters for MESSAGE TEXT depends on the length of sender's name.
There are about 60 characters available in my case.
If your text contains more than that number, the program will split the text and create as much the events as necessary and send several sms messages.

The program (written in java) can be downloaded from here

note:
You can't send sms to yourself.

19 comments:

Dam said...

Dude do you think you can release the java code instead of jars? That would be really much appreciated.. Keep up the pace!

Damjan said...

Hi Dam,
sure I can release it.
You can download java source code (zipped NetBeans project) from
here
I also wrote the .NET version of this, and soon (well, if i have time to finish it:) ) there will be PHP version on my web site, so anyone who has google account could use it.
Cheers,
Damjan.

Eric Bruzzone said...

great idea! my only concern is on the confidentiality of my password. do you keep it?

Damjan said...

No, I do not keep it.
Actually I cannot see it at all, because the application communicates with google server only.

Anonymous said...

wow, that was great post.. thanx for sharing the same...
Mobile Social networking

dadecoders said...

DO you know How these services are able to send SMS for free ?
Actually they dont. They have come up with a nice idea of allowing the users to use a part of message say 80 characters of 160 allowed and rest is used for advertising. Smart move!. So they collect the money from advertisers and we were surprised that one of the site sends contextual advertisements.

You wouldn't believe how much congestion sms is causing nowadays to the mobile network. SMS's are usually delivered using the signaling channels. Telstra has had to upgrade their's to 2 Mb just to cope with it.

Sending local and std messages in India is still costly and charges any where around 1 to 2 INR. Last couple of weeks I had been feeling the hype of sending free SMS all over India as I am getting a lot of messages from couple of sites regularly. On further analysis and talks with my friends and We found 2 sites which seems to be best from sending FREE SMS to anywhere India.

Questor said...

Have u checked out the gsms plugin in pidgin?? It uses the same trick too only in that you can get only remainders to your own mobile.

Anyways, Cool work man!

Questor said...

Btw have you thought of designing a gadget using the same idea?? Maybe implement the gadget in gmail,etc :) Just a thought....

Damjan said...

Hi Questor,
No I haven't try that pidgin sms plugin, but from what I can see it does the same trick..
Regarding my application, I did have a couple ideas for extending it (I even created a little php site that was doing the same thing from the browser, and was thinking of adding some other options...) but that was back then in 2006.. I was doing a lots of other things since then, and was always post poning work on that site, so it never came to public..

But now when you mentioned it I might write a gmail gadget... that's kind of popular these days :)

Thanks,
Damjan

Questor said...

gr8! .. post about it if do come up with something ;)

Narayana Enaganti said...

its great and use ful post. hey Dam can u post for pidgin also..because it have all chanales(gmail,yahoo,...like that)..so please try for that one..once u complete post it....

weiming said...

hi dam,

can you release the .net version for this?

thanks alot

Anonymous said...

Who knows where to download XRumer 5.0 Palladium?
Help, please. All recommend this program to effectively advertise on the Internet, this is the best program!

jasmine said...

This seems to be great site for sms software with the help of this we can send SMS directly from PC without the use of mobile phones.i would surely like to try their service.i had been relying on http://www.nsplsmssoftware.com

Anonymous said...

Hi,

Will you be able to post the php source code? I tried to do the same but I can never get sms notification.

Thanks for sharing.
Jeff

vincentywh said...

i would like to ask what is the function of controler.java. I am a newbie to Java, so I cannot catch up what it is doing.

Nenad Veljkovic said...

www.supervelja.com do that on line ;)

Anonymous said...

Any progress on the php version ? :)

Damjan said...

Nope :)
I started php version loong, long time ago, and I never had time to finish it.. Now I even don't know where is the source I started working on..
Maybe some day I finish it.. If that happens I'll share the code of course :)