ja ja ja ja ja ja ja ja ja ja ja ja ja en ja ja ja als ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja es es en kn en en ja ja ja ja ja ja ja ja ja ja ja ja ja de ja de ja de ja de ja de ja en ja en
このようなアプリを作ってみたい。列車の来る間隔が十数分おきで、ランダムなダイヤ編成の路線沿線のちょっとした郊外の住宅での利用を想定している。山手線のように数分に一本くるような状況(なぜなら、駅に行けばすぐに列車が来るから)や、1時間に一本程度しかこない状況(なぜなら、ダイヤ覚えられるから)での利用は想定してない。繰り返しになるがかなり限定された状況であることは、お許しを。
1. Actions on Googleにログインし、プロジェクトを作成する。
2. 様々なテンプレートが用意されているが、ここでは一番下の”Conversational”を選択する。
3. “Build your Actionを開き”Add Action(s)”を実行する。
4. “ADD YOUR FIRST ACTION”を実行する。
5. “Custom intent”を選び”BUILD”を実行する。⇒Dialogflowが作成される。
6. 言語やタイムゾーンを適当に選び作成を実行する。
7. Intentsを選び、”Responses”の”Set this intent as end of conversation”をONにする。
8. さらに”Fulfillment”の”Enable webhook call for this intent”をONにする。
9. “SAVE”を実行する。
10. サイドメニューの”Fulfillment”を選び、”Inline Editor”を有効にする。
11. 17行目、welcomeという関数内、agent.add(“”)に発話させたい文字列(このアプリでは次の列車の発車時刻)を入力する。
12. “DEPLOY”を実行(結構時間がかかる)する。
これで完了である。次の列車の発車時刻を取得するロジックについては、ここでは割愛した。ステップ11で、addの引数に渡す文字列を作るロジックはアプリそれぞれの実装であり、今回は現在時刻で間に合いそうな列車の時刻を埋め込んだ。「のぼり 快速 16時42分」の様な文字列を渡すようにした。現在時刻と列車の時刻表を比較し最適な列車をしゃべらせればよい。そのロジックは作りたいアプリそれぞれに依存する部分なので割愛した。Google Homeがあれば「Ok Google、テスト用アプリにつないで」と言えば、上記ステップ11で入力した文字列を発話してくれるはずである。百聞は一見に如かず。出来上がったアプリの動作(ただし、リリース前アプリ:音声あり)は以下の動画で確認できる。興味のある方はご覧ください。
12ものステップがあるが、数分でおつりがくる程度の作業である。後は適切な文字列を返すロジックをFulfillmentに組み込むだけだ。
呼びかけに使った「テスト用アプリについないで」も、返答の「テストアプリです。」もリリース審査が通れば、ちゃんとした気の利いたメッセージになるはずだ。
こちらも読まれています
「雑記」カテゴリーの記事一覧
アップルの開発プラットフォーム「Project Catalyst」–「iOS」アプリを「macOS」向けに