Tag Archives: client

Textoo : iPhone (and now Android) app to send free SMS using web gateways

History of Textoo

It all started back in 2010, when I had written a PHP script to send SMS through different Indian SMS gateways (see blog post on this). I would go around different websites trying to publicize this PHP script so that I would get more hits on my blog as well. In some of the blogs I had noticed different J2ME apps which send free SMS and were quite famous. But none of them had ported their apps to iphone and android platforms. A quick search revealed only the 160by2 official app which can do this.
Then I thought, Why not make a small iPhone app which can provide a client user interface to compose messages and then send the message using my own PHP script which I had already made by then. Since then, I started exploring the Appcelerator Titanium framework which was a vry impressive tool to create iPhone and Android apps using plain Javascript syntax. So I applied for both iOS developer access and Android market access by paying 99$ and 25$ respectively.
Once I got through the membership requirements, I started coding the UI in Titanium. And within a few weeks, the iPhone app was ready. The app would connect to my PHP script which would send the messages through the gateways and then return the result back to the app. The app was quite simple and had only 3 views. “Compose message” where you actually type the message after choosing your contacts from the phone addressbook, the “Outbox” view where you see the sent messages, and the “Settings” view where you add the gateways and account details.
After uploading the finished app to App store and getting it approved, I tried making it a paid app for 0.99$ The first few days I received around 1-5 sales a day. But people started complaining about some bugs in the app. And also there were a few problems with the PHP script. So I decided to make it free after a week of sales, so that I can get myself some time to fix the bugs. Since then it remained free and I spent minimal time of enhancing the app and the app continued to be downloaded for almost 6months with an avergae of 20-50 downloads a day.
I kept myself busy working on some freelancing projects on odesk.com and never actually thought of working on the app itself. But one of the iPhone projects which I had taken up on odesk got scrapped mid way through it. I did receive payment for the effort I had put in, but the app was not complete and the codebase was never used anywhere. Instead of scrapping the whole thing, I planned to use in the next version of the iPhone app and started working on the SMS app again.
But this time there was a big change. The app wouldnt send the SMS through my server/PHP script, but instead will connect directly to the gateway website. This way the load on my server would be minimal, and the gateway website would be happy to see all the HTTP requests coming from different IP addresses instead of my server addresses.
So since then, I spent most of my free time in working on the new version of the app and the new version was named Textoo Pro which can be downloaded here

What does it do ?

Textoo connects to major free SMS websites like way2sms, 160by2 etc and sends your SMS for free. It is a multi-account group-SMS app which can be thought of like a pidgin for SMS websites. You add your account username & password on to your app and instead of you going manually to the website and sending your messages, the app will automate it for you. The main purpose of the app is to give back the native texting experience to the end user even when they wish to use free SMS gateways.

Update: Android app also available.

Read more / Download the app

Incoming search terms:

Multi user avatar chat based flash website for Incident 09

I was very inspired by the Red Interactive agency’s website which allowed the website visitors to talk to each other in realtime with an option to customize their avatars. So I wanted to use my skills and create something similar for my college website. The initial idea came up with was to model the entire college campus in 3D and allow the user to navigate around the campus along with them being able to go through the event details. I had also thought of having interactive elements in the 3D map which shows a miniaturized version of the cultural fest happening inside the 3D space. But as I was the only person who was working on it and also considering the average internet bandwidth available around that time in India, I decided not to plug in very heavy graphics onto the website. I started off by designing the main building of my college using Google sketch up and rendering it with a photorealistic plugin called vRay. The initial results were very impressive. With the crude rendering of the image, I started working on Flash CS3. Till then, I had only worked on Swishmax, which was a stripped down version of Flash. But Flash CS3 didnt prove too difficult given the fact that I never had to use much of drawing and keyframing tools present in flash and had to use only the actionscript features.
I started off testing the feasibiity with just a small ball as an avatar whose position can be moved through the keyboard arrows. The position of this ball was broadcasted using raw XML sockets to a PHP based server listening on port 8080. And every flash client connected to this PHP server received the coordinates of this ball. After doing a real run on NITK network, the concept proved successful. After this, I went on download some human characters for Poser 5 and exported frames which show the human characters to be walking. The simplicity of Poser in working with human models proved to be a blessing as I had the still frames oif the animation ready within a few days. Then these frames were imported onto Flash and separate swf files which showed the human model to be walking were kept separately and then imported onto the main flash movie and placed in front of the 3D background map.
After this, multiple human characters and multiple 3D background were done using the same method and all integrated into the main movie using some actionscript and the final movie was ready. A quick demo to some of my friends showed that the website would become an instant hit.
Along with the main flash site, I had to set up a way to add text content onto the website using a simple HTML admin page.
The final website was hosted on the local NITK student server and a WAN port 80 was mapped to LAN port 8080 on the local server so that no firewall can intrude in the communication between the client and the server. The final result was a major success and was one of the best websites made for a cultural fest in India.

Some stats :

15000 visitors out of which 10000 are absolute unique visitors, 22000 pageviews, 15 GB data transferred, 800 event registrations on the website

Later on , some additional features were integrated into the site like :

  • ALICE chat bot to give standard replies to questions asked during chat
  • Integration of phpbb login with the flash website so that user logged in on phpbb forum is logged in the flash site also
  • Integration of google SMS channels to send out bulk SMS, moderation of chat messages using Google talk
  • Some interesting things in the backend : (which you probably wouldnt know even if you used the website)
    The chat avatar character was assigned based on the IP. If the IP address was in the range for girls hostel , a female character was assigned, If it was from the boys hostel block, a male character was given. Otherwise it was totally random.
    The ALICE chat bot was trained to answer hundreds of questions like “What is Incident”, “When is Incident” etc and would respond to commands like shut up, keep quiet etc. It would also detect when someone would try to use abusive words and then ask them to kindly restrain from repeating it.
    Someone or the other person would always stay online to moderate the chat messages being broadcast and ban users who spread hatred on the group chat.
    To aid in modelling the 3D maps, I had to go around the campus clicking photographs on my phone from different angles for different buildings and then model them on sketchup. There were plans to model every building , but the plan never worked out due to lack of time.

    Some technical details :
    The flash client in the browser connects to the PHP based socket server running on port 80 on the NITK student server and communicates using raw XML sockets. The PHP server separated the users into different rooms(based on the map chosen) and forwarded the messages in realtime.  Running it on port 80 ensured that firewall intrusion was minimal. A chat bot (based on ALICE chat bot) was integrated into the map. Moderators could see the activity of any room by adding a jabber user ([email protected]) to their google talk list. The text content on the website was managed using a simple CMS like page.

    Click to view the demo of my work
    VN:F [1.9.22_1171]
    Rating: 8.8/10 (16 votes cast)

    (to be done)

    Incoming search terms: