Channels ▼
RSS

Parallel

Developer Runs Siri Proxy On Desktop


Apple's spoken natural language user interface Siri has perhaps garnered more than its fair share of attention since its introduction this year. The developer community has naturally shown great interest in this iOS mobile-centric technology given the ubiquity and uptake of Apple's products in recent years. No surprise then to find that a St Louis-based programmer known as @plamoni has built a means of running a proxy server on his desktop PC to fool Siri into thinking it is talking to Apple's servers.

According to the GitHub project page describing this "tampering" proxy server, "Siri Proxy is a proxy server for Apple's Siri assistant. The idea is to allow for the creation of custom handlers for different actions. This can allow developers to easily add functionality to Siri. The main example I provide is a plugin to control my thermostat with Siri. It responds to commands such as, 'What's the status of the thermostat?', or 'Set the thermostat to 68 degrees', or even 'What's the inside temperature?'"

The result of this project may well prove interesting to developers who are looking at hacking Siri to work on iPhone versions prior to 4S, upon which Siri currently ships. This also represents a potential opportunity for hackers to try and extend the functionality of Siri itself into third-party applications, something that is not currently possible given that Apple has not released a Siri SDK.

The proxy server itself acts as an interfacing mechanism and intercepts Siri commands before returning answers. As a neat addition, @plamoni even hooked up his room's thermostat to physically work with his project's end result. You can view a demo at YouTube.


Related Reading


More Insights






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.
 

Video