中津川篤司Twitter2Facebook32はてブ1Pocket1LINESiriやGoogleアシスタントなど、ユーザからの音声による命令を理解してアクションを起こす技術に注目が集まっています。音声操作を行う際、音声をテキストに変換する作業が必要なのはもちろんですが、テキストからユーザの意図を読み解く技術も重要です。docomoから提供されている発話理解APIを紹介します。このAPIを利用することで、話し言葉から文脈を理解して、ユーザの意図した通りに動作する柔軟な音声操作機能を実現できます。ベースについてまずベースになるコードは以下の記事で解説した内容になります。APIを使い、音声をテキストに変換したところから開始します。このコードはgoofmint/monaca_voice_recognitionにありますので、実装時の参考にしてください。NTTドコモにてユーザ登録とアプリケーション登録を行ってください。後ほど必要になります。APIを呼び出す発話理解APIの呼び出し方は下記になります。Ajaxで呼び出すだけなのでとても簡単です。supportにて得られるキーになります。解析対象のテキストです。下記は「今日は良い天気だったってメモしておいて」という文字列を解析した結果になります。最初に出ている項目が実行するべきアクションになります。今回で言えば「メモ」になります。設定されている項目になります。組み合わせることでアクションが特定できます。他にも様々なwordsTypeがありますので、発話理解APIのリファレンスを参考にしてください。こちらは「monacaでアプリを作りましょうってメモしておいて」と発声した結果です。大事な「monacaでアプリを作りましょう」の部分だけが抜き取れています。今回のコードはgoofmint/Monaca_Voice_commandにアップロードしてあります。実装時の参考にしてください。ここではメモ機能を取り上げて解説しましたが、アクションと実行する内容さえ分かれば、地図アプリを開く、電話をかける、動画を再生すると言った様々な機能を実行できるようになるはずです。音声操作で実行できる範囲が広がれば、文字で入力するよりも手軽で便利なアプリになるはずです。皆さんのアプリにも音声操作機能を追加してみてはいかがでしょう。中津川篤司プログラマ、エンジニアとしていくつかの企業で働き、28歳のときに独立。2004年、まだ情報が少なかったオープンソースソフトの技術ブログ『MOONGIFT』を開設し、毎日情報を発信している。2013年に法人化、ビジネスとエンジニアを結ぶエバンジェリスト業「DevRel」活動をスタートした。