Books I've read or currently reading

Smartphones I like

What is a smartphone and what can you do with it?

Blog powered by TypePad

« Poor Man's SMS Gateway update | Main | Mercurio and OS X's RSS Visualizer Hack »

May 21, 2007

TrackBack

TrackBack URL for this entry:
http://www.typepad.com/services/trackback/6a00d83456f3f469e200d83545932553ef

Listed below are links to weblogs that reference Poor Man's SMS Gateway is now Mercurio:

Comments

Ali Ozoren

Jose - I was looking for something like this but a completely standalone version would work better (at least for me). Since I have zero knowledge of Python, I cannot tell how much effort it would take it to change the code so that it posts the incoming sms directly to a web server (..?sender=123&msg=abc) over gprs without a computer, bluetooth, ultrasms, etc. That would be a little costly connection-wise but totally eliminate the need for a dedicated phone. I can pitch in via PayPal as well. Thanks. -a

Jose

Hi Ali,

Thanks for your comment and interest in Mercurio.

I'm trying to understand what you mean by a standalone version. Are you looking for an all-in-one appliance that accepts the messages and has a web server?

If this is what you're looking for, please let me know. I started thinking about it as I was writing the Mercurio installation instructions. I'm thinking something the size of a Mac Mini with GSM capabilities and Mercurio built right in. You can then take it with you anywhere, turn it on and you're ready to accept messages. Is that what you have in mind?

Jose

Ali Ozoren

Jose - A standalone version meaning, only phone, and nothing else (except the web server listening in the cloud). The phone will receive the sms and post it to a web server on the Internet via gprs. It is a low cost, albeit low bandwidth too, solution to my inbound sms problem. If that too is not clear, my email address is also my msn address for further discussion. Thanks.

Jose

Hi Ali,

What you are looking for is already in Mercurio. You see, Mercurio is really 2 SMS Gateway solutions in one. The first solution involves UltraSMS, a mobile and a computer running Mercurio Web. The second solution - using Mercurio S60 - is closer to what you're asking. If you install Mercurio S60 on a Series 60 Symbian phone, it will "forward" your incoming messages directly to the web server - running Mercurio Web - via GPRS or any other connection available to your mobile - EDGE, 3G, Wi-fi, etc.

I hope this helps.

Jose

Ali Ozoren

Jose - Is it possible to run the "phone part" as a deamon? I wouldn't want it to exit when a call comes in or when I make a call. In other words, I wish to continue using the phone while it still is in the background.. I also would like it to delete the messages as they arrive since they pile up and consume memory.. Thanks. Ali

Jose

Hi Ali,

As it is Mercurio S60 - aka mercurio.py - runs in the background if you leave it running. Due to Symbian's multitasking, if a call comes in the data connection pauses and reconnects when the call is over.
To delete messages after uploading to the web server and Mercurio Web all you need to add is one line of code to the end of the read_sms() function in mercurio.py:

i.delete(id)

Regards,

Jose

lambo4jos

Hello. Thank you for such a great post. I noticed you mentioned writing a post for linux if someone requests it. Unfortunately I don't have a Mac. I'm using ubuntu, but I'm sure its the same across different versions of linux. I would be more than appreciative if you could offer some guidance to me of how I can get the sample app up and running on linux to test out your poor mans sms gateway. I would also be willing to give some bug fixes if I come across any and feedback on my usage as well. Thanks in advance.

Jose

Hi lambo4jos. Do you need the linux instructions immediately? I can post them this upcoming week if that's ok or we can communicate via email if you're in desperate need.

Thanks for the kind remarks.

Amit

Hi Jose,

Excellent stuff. I have a quick question. What kind of throughput can one expect, as in messages sent or received per second?

Also, when sending messages, can one set any phone-number as sender-id? Or will it always be the number of the phone being used?

Thanks!

Regards,
Amit.

Jose

Hi Amit,

Throughput is one of the hardest things to measure when dealing with SMS applications because each component of the system has a certain amount of latency and their behavior is unpredictable. Try sending a message to 3 people in the room at the same time and you'll notice that they will all get it at different times.

Sending and receiving takes a few seconds per message. If you send or receive multiple messages at the same time you don't have to worry about it much. Messages get qued in your phone when you receive. At that point it all depends on the amount of memory your phone has. When you send, the message gets deleted from the phone so you don't have to worrry about running out of memory. Normally, a text message is limited to 140 bytes, or 160 7-bit characters. Most "feature" phones have at least 4MB available and smartphones have at least 20MB so you do the math.

So... to answer your question I would say that if you expect your service to send/receive between 2k and 5k messages per day you're in good shape with Mercurio. If your users start experiencing slowdowns then it's time to move away from this prototyping solution and move on to a shortcode.

CallerID/Send id:
People will receive messages from the number that's attached to your phone. However, there are ways to change the CallerID depending on your phone's manufacturer.

I hope this helps.

Thanks for your interest in Mercurio.

Jose

Tony Hansen

I am imagining a script running on a web connected cell phone that can post an SMS message to a webpage and send a text message in response to a post from a webpage. Would this device not be a fully functional gateway? Could I then not write a web page in PHP, for example, that could make it possible to do a google search from a text message?

mat_kinotek

Hi Jose,
compliment for your efforts!!
i m trying mercurio with a nokia 6021, ultraSMS works fine receiving the sms, but when I go on localhost:3000/inboxes the incoming message page dont display any sms received. I followed all the intructions smoothly, have rails and locomotive all installed, etc.. any idea? Or else, where could i see if the DB created by cocoa ultraSMS is actually filled with the sms correctly? Im on osx leopard. thanks in advance!!
mat

Jose Marinez

@mat_kinotek

Hi Mat, can you please tell me which version of Mercurio you're using? The latest version deprecates the need for ultraSMS, but then makes a Series 60 phone as a requirement. In your case, i think it will just be a quick change to the Mercurio Web component letting it know that the table name is different from the standard settings. Once Mercurio Web knows the new table names everything else will work.

Charles

Hi, great tool, could you please post installation instructions for linux (ubuntu) not everyone has a mac :-)

Alphonse Tan

Can I use this on a windows based computer at home that i can readily make into a server?

If so how can I do it?

If not, I can setup a computer to run on ubuntu.

In either case, i can setup the computer to run as a server that is accessible from the outside.

Will this do? sorry for the questions. Will this also run on older nokia mobile phones like 6150?

thanks. appreciate it if you could email me.

more power

Ravi

Hi,
I need sms gateway details
i already have sms sending application built in ASP .net but it requires the sms-gateway url/ip address, its port number, username and password for authentication.
can u please help me.
regards
Ravi.

Verify your Comment

Previewing your Comment

This is only a preview. Your comment has not yet been posted.

Working...
Your comment could not be posted. Error type:
Your comment has been posted. Post another comment

The letters and numbers you entered did not match the image. Please try again.

As a final step before posting your comment, enter the letters and numbers you see in the image below. This prevents automated programs from posting comments.

Having trouble reading this image? View an alternate.

Working...

Post a comment