Thursday, 20 December 2007

Quicker response

You've told us that it takes too long for the sms to be sent and the call to be connected. So we did something about it.

You should now notice better response times for sending sms and your phone ringing when making calls. Just a little something from us for Christmas.

Friday, 14 December 2007

Self registration

Well, you may have noticed that you can register yourself now - but you will still have to mail us to get some mojits. Buying mojits for real will come later on.

There should be some well needed work on the gallery in and around the holidays.

Monday, 3 December 2007

New stuff

We've just deployed some new stuff to the site. Nothing to write home to mother about, just a few corrections to our howtos page and a link to this blog, Mojo's twitter page.

Anyway, thats all for now - more coming!

Quiet for a while

We've been quiet on the blog for a while. Thats cos we're beavering away at new stuff for Mojo. Yeah yeah i hear you say, but really, honest! We're working on getting Mojo ready to welcome the world (between the lines - moving stuff to a bigger server), working on a funky new gallery to show your gadgets, and building some new gadgets for your favourite platforms on the side.

Do you want us to build a gadget specifically for you? Let us know by posting here.

Friday, 16 November 2007


Minor change, we are now showing Mojits as the official currency of Mojo.

We also allow those test gadgets you don't need to be removed.

Tuesday, 13 November 2007

SMS delivered!

The SMS status now get updated with delivery information as well. The status will change from SENT to DELIVERED when the sms is, um, delivered. It will also change to FAILED if the mobile could not be reached (e.g. if it is invalid or turned off, if the sms times out, etc.).

Thursday, 8 November 2007

Now you can talk back

Want to rant? Tell us we are great? Share an idea? Beg for more credit?

Well, we have finally set up a google group at so feel free to talk to us and anyone else reading.

We won't read it, but its sure to make you feel better! No, we will. Honest.

Thursday, 1 November 2007


I'm on twitter. To use twitter, i've been using snitter. Using snitter to post to twitter is often much quicker. Is this getting annoying? Ok I'll stop.

I'm going on holiday in a few days. I'm off to barcelona to be demo'd to a shed load of developers. Hopefully they will love me and send me their messages. How i love sending messages... ah.

Anyway, just a quick update. More from me soon. Toodlepip.

Tuesday, 30 October 2007

Updates Shmupdates

I've just had some little fixes put in this morning. Nothing really to write home about, just a few little things.
  • Making sure I give you a gadget secret when activating
  • Making sure the secret is properly randomised
  • Fixed a broken gadget activation process

Just thought i'd keep you posted.

Friday, 26 October 2007

I Love Twitter

Not sure if you knew, but i'm on twitter. Follow me to get snippets from the front line, latest changes, and witty snipes ;) my id is bt_mojo. Show me some love!

Thursday, 25 October 2007

I'm sorry I broke your GETs

Sorry for no updates for a little while. Not, I assure you, due to lack of activity.

I have broken your gets calls / messages /balances for retrieving records - so here is the fix.

Simply add "call:", "message:" or "balance:" to the front of the digest calculation.

So for a call example, in ruby, the digest to use when retrieving call records would be

digest = Digest::SHA1.hexdigest("call:#{@my_username}:#{@my_gadget_key}:#{@secret}")

or if it makes more sense in a javascript snippet, this example would make a digest associated with retrieving message records:

var digestString = "message:" + form.username.value + ":"+ form.gadgetkey.value + ":" + form.secret.value;
form.digest.value = sha1(digestString);

Wednesday, 17 October 2007

Gadgets making gadgets

We've worked on the types of things gadgets can do through calls to Mojo; now they can make and register other gadgets. Checkout the documentation for further enlightenment.

We will be looking at ways to record bugs and issues fairly soon too.

Monday, 8 October 2007


We now have blocks, a way to stop bad calls being made through your gadget. And the howto's section has been converted into a TiddlyWiki. This week we are busy with the APIs.

We are contacting people who have asked for registration - and we will have some simple way of recording your triumphs and tribulations soon. Though we are quite happy to follow you on Twitter if you are nice..

Friday, 28 September 2007

Where have all the gadgets gone?

All existing gadgets are invisible to the gallery, until you publish them.

You can always see your own gadgets, but you must edit a gadget and pulish it to allow others to see it in your gallery.

Obviously the gallery is far from complete..

Wednesday, 26 September 2007

Calls and messages back

An admin can now edit user details - as has been the case previously.

Calls and messages should all be working normally.

Blocks are entering the building, but are not visible yet.

Friday, 21 September 2007

New URI :

As of this afternoon you can now access Mojo through the following URI(s): and even

So theres no excuse for not coming to visit :-)

Monday, 17 September 2007


So you can now check your balance from a simple URI, see this ruby example:



Sunday, 9 September 2007

More than one

The relationship between users, services and applications always becomes an issue as different use cases come to light.

From Mojo's point of view, the user takes responsibility for payment when using a gadget, with one user having a single account. The gadget is just a trusted intermediary.

This model will doubtless always exist, but needs to be expanded to work with different scenarios:
  • A company wants its staff to use a corporate gadget. The company will pay for all use, but wants to deal with staff user management internally.
  • A media company wants to promote a new service with a fancy gadget. It will pay a fixed amount of credit that matches the campaign budget. They want to limit any one user to a few calls each.
  • A group of friends all want separate user accounts but want to share costs. They also want access to group audits.

No doubt our users will have more to say.

Friday, 7 September 2007

Mojo live is now on - no funny port numbers needed!

Site Updated

The mojo site has been updated with the final touches to the new design, a new 400 error page, a new image for the 404 error page, updates to the Developer Guides, a user can now edit their own details.

Thursday, 6 September 2007

Lets separate

You will need colon separators now when constructing your digests.



for getting feeds or


for posts.

See /howtos for details

Wednesday, 5 September 2007

Change, change everywhere

Come back for your daily dose huh? Well, have we got news for you!

As we approached feature complete, we let some of our developers here in the office loose on Mojo. We're pleased we got lots of thumbs up and lots of feedback. Some of the changes we've made include:

  • No more hashing on parameters
    • e.g. previously we supprted parameters such as message[name]=messagename
    • Now we support name=messagename. Much more pretty we think.
  • We've got rid of the term api_key, now we're using gadgetkey as a parameter.
  • You now get a nice 201 status code when you create a call or message instead of 302. Check the Location header in the response for where the resource has been created.
  • We've also updated the UI, like it? Let us know.

Saturday, 1 September 2007

Gift certificate (future story)

One of the early ideas that our chief web fiend has coveted is that of unique URIs that are good for one (or more) calls. This gift certificate would probably be a time limited credit, and maybe only for a particular gadget.

It might sound as if its just a strange way to give credits to another user, but that's not quite true. For a start, a non Mojo user could, in theory, use a gift certificate, though this may not be required. A gift could be given to an anonymous recipient, something not possible for a credit transfer. And a time limited gadget promotional offer would make good marketing.

The mechanism isn't too important; the certificate must match a record in Mojo and so is quite secure. Sending the uri itself to the server should be enough to redeem it.

Address book (future story)

(This blog is for talking about whats new on Mojo, but I'm just going to cover a couple of things that are whirling about in the sea of future stories.)

In most cases an address book is simply a mapping between a name and a number, and exists purely for the users convenience. And many would be quite happy if it was left to a client to implement. However, it might be appropriate if the audit lists (i.e. the list of past calls and messages) could display names as opposed to numbers. And of course it would be nice if a Mojo user could use the same name in any gadget. And it might be a useful privacy feature if a number need not be displayed in audits or the UI.

The downside of all this is that Mojo would need to accept both numbers and names from requests. This is looking less of an issue as a notional prefix ("tel:", "sip:", "name" etc.) will probably force its way onto us sooner or later.

Would the user worry about Mojo storing this private info? Just encrypt it in the database.

Friday, 31 August 2007

Formatting of POST requests

There's an important change taking place in Mojo for anyone building gadgets and that is the format in which requests come in. Up until now, Mojo has taken an array of message and call objects with the required parameters and this has surfaced issues calling Mojo from PHP, Ruby and JavaScript. We've decided to include a new parameter called 'version' (set to 1), which will allow POSTs to come in without the message array, but placing the parameters at the top level.

We'll support both while we convert the Mojo site to use the new version=1 way, but we'll be looking to turn off version=0 soon.

Updates from yesterday

Hello boys and girls,

todays updates include:

  • pagination on the transactions page
  • feeds for calls & messages with on page auto detection
  • admin only navigation section