SiriProxyを試してみた

Siriの挙動をカスタマイズできる SiriProxy というアプリケーションがある。設定は面倒だが下記サイトのようにいろいろ夢が広がりそうなシステムなのでセットアップして起動してみた。といってもセットアップは下記のサイトにしたがってやれば問題はない。

blog.katsuma.tv

現在のところCFPropertyList 2.2.0はダメで 2.1.3にダウングレードしなければならなかったのも上記サイトにある通りである。証明書はメール経由ではなくUSBにつないで Apple Configurator で設定した。その際、ca.pem を ca.crt にリネームしないと Apple Configurator が認識できなかったのでその点だけ注意されたし。もちろんメールでも構わない。

siriproxy-example.rb をのぞくといくつかテスト用コマンドが定義されているので、それを使って動作確認できるようだ。siriproxyを起動してためしてみると、まずsiriを起動した瞬間にリクエストが飛ぶようで、ログが流れ始める。そして「test siri proxy」とsiriに向かって言うと以下の様なログがsiriproxyから出力され、siriが「Siri Proxy is up and running!」と返すのが確認できた。

[Info - iPhone] Received Object: FinishSpeech
[Info - Guzzoni] Received Object: SpeechRecognized
[Info - Plugin Manager] Processing 'Test Siri proxy '
[Info - Plugin Manager] Processing plugin #<SiriProxy::Plugin::Example:0x007fc29c557c90>
[Info - Plugin Manager] Matches (?i-mx:test siri proxy)
[Info - Plugin Manager] Applicable states: 
[Info - Plugin Manager] Current state: 
[Info - Plugin Manager] Matches, executing block
[Info - Plugin Manager] Say: Siri Proxy is up and running!
[Info - Plugin Manager] Sending Request Completed

日本語でもできるはずだが、siriproxy-example.rb を編集して日本語にマッチするハンドラを書いてもうまくいかなかった。エンコーディングまわりで何か設定が必要かもしれないがまだ調べていない。

なお、pluginのリロードは自動ではされないようで、書き換えるたびにsiriproxyの再起動が必要であるようだ。