Siri might be coming to other iOS devices with iOS 6, but in the meantime you can still fix Siri's shortcomings and get it working on other devices with these tweaks.
If you have an iPhone 4S, one of the first things you probably did after switching it on and going through the setup process was give Siri a go. After all, it’s one of the main things that separates it from its predecessor, the iPhone 4. And you probably discovered, after testing out its basic voice dialling, text messaging and scheduling capabilities, that there are a fair few things that Siri can't do. It can't launch apps, which would save you from having to search through half a dozen home screens and folders, and it can't access system settings like Wi-Fi or Bluetooth, which would be another time-saver. But the biggest shortcoming is that Siri's clever ability to search for relevant local businesses using natural-language processing (statements like "I feel like Chinese food" returns a list of the nearest Chinese restaurants) is currently available for users in the US only.

All too easy: Evi taps local search for Siri's benefit.
But it isn't Apple's way or the highway, much as the company would like it to be. If you have a jailbroken iPhone 4S (or you're looking for a good reason to jailbreak it), you can download a bunch of Siri extensions through Cydia (the jailbreak app store) that make the voice control technology a lot more useful. You can also get Siri working on iOS devices other than the iPhone 4S (such as the iPhone 4/3GS, iPad 1/2 and iPod Touch) using Spire. Finally, you can get most of the local business search capabilities that are missing in the local version of Siri using a third-party app called Evi.
Siri extensions
AssistantExtensions is a free MobileSubstrate tweak that can launch any of your installed apps (say "open" or "launch" followed by the name of the app), turn certain system settings on and off (such as Wi-Fi and Bluetooth), update your Twitter status (say "tweet" followed by your status for it to post automatically, or "show tweet" followed by your status for it to show you the text of the tweet before posting it) and search for particular videos on YouTube (say "search xxx on YouTube"). Other developers have also created plug-ins for AssistantExtensions to extend Siri's functionality further, including Lingual (free) for translating phrases into over 30 other languages (say "translate hello to Spanish") and SiriLoveLyrics (99c) for displaying lyrics to the currently playing track.
MyAssistant is a paid app (99c) that's similar to AssistantExtensions, minus the plug-in architecture and with a few extra capabilities. With MyAssistant you can launch apps, change system settings and tweet, and you can access lots of other commands (take a photo, power your iPhone off and put it in Safe Mode). You can also create custom question-and-answer sequences and select a background image from your photo library to display behind Siri.
Sadly, the picture-taking function is misleading, as it merely takes a screenshot of the current Siri screen rather than activating the rear-mounted camera, although you can get close to that functionality by launching the Camera app itself. The most powerful feature of MyAssistant is its integration with Activator events – this lets you assign any of the dozens of events (such as displaying the Favorites tab in the phone dialler, controlling music playback and pulling down the notification centre) to a keyword that you specify.
Siri on other iOS devices
The easiest way to get Siri working on an iPod Touch, iPad or older iPhone is by using AssistantConnect. The only catch is that you need to know somebody else who has a jailbroken iPhone 4S, as your device will essentially be masquerading as that phone whenever you use Siri. For that reason, you don't want to use that iPhone 4S with too many other devices over AssistantConnect – the developer recommends no more than five other devices.
To set it up, install Spire and AssistantConnect on your device, and AssistantConnect4S on the iPhone 4S. Launch AssistantConnect4S on the iPhone 4S and then reboot it. When you're back up and running, open AssistantConnect4S, ask Siri to do anything (this is just to activate Siri), then go back to AssistantConnect4S and tap the ‘Email Siri Data’ button. Specify the email address you'd like to send it to (it needs to be an email account that you can open from your device) and open the attachment in that email on your device. This will open AssistantConnect and give you a ‘File Copied’ dialogue box. Reboot your device (or you can just respring it, if you have a jailbreak app like SBSettings), enable Siri by going to ‘Settings > General > Siri’ and toggling it to On, and you're good to go!
If you don't have access to an iPhone 4S, you can still use Spire, but you'll need to find a Spire proxy server, which will send the requisite iPhone 4S authentication tokens on your behalf to Apple's Siri servers. iJailbreak has a list of proxy hosts that you can use
here - given the fact that your personal data will be passing through that proxy, we recommend you choose one carefully.
Search for local businesses
The final piece of the puzzle is getting Siri's local business search smarts working. Sadly, this can't be enabled by a hack, as this data isn't actually available on Apple's servers yet. Instead, you'll need to use a free third-party app called Evi to get this functionality. The good news is that it works remarkably well, with a natural-language processing function that seems to work just as well as Siri. Answers are taken from a wide variety of online information sources (not just Wolfram Alpha); you can ask it a variety of questions as well like "where are the closest Chinese restaurants?", "how do I get stains out of carpet?" and "what is the capital of Venezuela?", and it will return the closest matching answers and cite the source it got them from.
You can even assign Evi to a hardware button so you can launch it in a similar fashion to Siri using Activator. If you don't have Activator installed yet, download it from Cydia, then open the Activator settings from within the iOS Settings app. From here, you can assign Evi to a button or gesture – we recommend assigning it to a triple-press of the Home button.