カスタムの意図
あなたのアプリが、どの SiriKit ドメインにも当てはまらない日常のタスクを人々に実行させる場合、それを表すカスタムの意図を作成できます (ドメインのリストについては、システムの意図 を参照してください)。また、カスタムの意図またはシステムの意図を使用してショートカットをサポートすることもできます。ショートカットを使用すると、簡単なフレーズを話すか、Siri からの提案を受け入れることで、頻繁に実行されるアクションを人々はすばやく開始できます。人々が意図を見つけて Siri に追加できるように、意図をシステムに統合する方法については、ショートカットと提案 を参照してください。
カスタムの意図のカテゴリと反応
あなたのカスタムの意図は SiriKit ドメインに属しませんが、あなたのアクションに関連するシステム定義の 意図のカテゴリ でモデル化する必要があります。SiriKit は、作成、注文、共有、検索などの一般的なタスクを表すいくつかのカテゴリを定義しています。これらの定義はシステム内にあるため、Siri は、注文やコンテンツの共有など、各カテゴリに関連する一般的なアクションについて、自然に感じられる方法で人々と通信する方法を知っています。
カテゴリは、Siri がそのアクションについて話す方法や、人々がインターフェイスで表示するコントロールに影響を与えるため、アクションを最もよく表すカテゴリを選択することが重要です。たとえば、コーヒーアプリは、カスタムの コーヒーオーダー の意図を表す注文カテゴリを選択する可能性が高く、その結果、Siri は、 "注文しますか?" そして "OK。 注文。" など、このアクションのコンテキストで意味のあるデフォルトの応答を話します。カテゴリの選択には、他の効果もあります。注文カテゴリには財務に影響を与えるアクションが含まれるため、このカテゴリを コーヒーの注文 の意図に使用すると、人々はアクションを完了する前に認証を求められます。
いくつかのカテゴリについて、システムはカテゴリのデフォルトアクションに関連する追加の動詞を定義します。これらの代替動詞を使用して、インターフェイスに表示される Siri ダイアログとボタンのタイトルが、あなたのアプリのアクションを提示する方法と一致するようにできます。たとえば、デフォルトの動詞 order (注文する) に加えて、order カテゴリには動詞 buy (買う) と book (本) が含まれます。
SiriKit は、以下のカスタム意図のカテゴリと関連する動詞を定義しています。
カテゴリ | デフォルトの動詞 | 追加の動詞 |
汎用 | Do (する) | Run,go (実行) |
情報 | View (表示する) | Open (開く) |
注文 | Order (注文する) | Book,buy (本、買う) |
開始 | Start (開始) | Navigate (ナビゲート) |
共有 | Share (共有) | Post,send (投稿する、送信する) |
作成 | Create (作成) | Add (追加する) |
検索 | Search (検索) | Find,filter (検索、フィルター) |
ダウンロード | Download (ダウンロード) | Get (入手) |
その他 | Set (セット) | Request,toggle,check in (要求、切り替え、チェックイン) |
SiriKit では、以下の 3 つの応答タイプも定義されています。
いくつかのカスタムの意図のカテゴリで、SiriKit は各応答タイプのデフォルトダイアログを定義しています。たとえば、注文カテゴリのデフォルトの確認ダイアログは "注文しますか?" で、共有カテゴリのデフォルトの成功ダイアログは "OK。共有しました" です。
応答をカスタマイズするには、意図の処理中にあなたのアプリが提供できる関連情報のプレースホルダーと、作成したダイアログを組み合わせたテンプレートを作成して下さい。たとえば、コーヒーアプリでは、注文の合計金額のプレースホルダーを含むカスタムの意図を提供することで、デフォルトの注文確認ダイアログを強化できます。
応答のタイプに応じて、あなたのカスタムダイアログはデフォルトのダイアログの前または後に提示されます。たとえば、確認応答では、カスタムダイアログの後にデフォルトのダイアログが提示されます。コーヒーアプリの例では、カスタマイズされた確認ダイアログは、"クリーム入りの大きなコーヒーは 2.50 ドルになります" のような内容で始まり、デフォルトのダイアログ "注文しますか?" で終わります。
カスタムの意図のデザイン
組み込みの SiriKit の意図があなたのアクションの目的を表している場合は、カスタムの意図を定義する代わりにその意図を採用します。たとえば、メッセージを送信するためのショートカットを提供したい場合は、INSendMessageIntent (INSendMessageIntent) を採用します。メディアを再生するためのショートカットを提供したい場合は、INPlayMediaIntent (INPlayMediaIntent) を採用します。ガイダンスについては、システムの意図 を参照してください。
あなたのアプリのアクションにカスタムの意図が必要な場合は、アクションに最も近いカテゴリを選択してください。 カテゴリは、意図またはショートカットの一般的な機能 (注文、ダウンロード、検索など) についてシステムに通知し、ショートカットがシステムによって提供されたとき、または Siri で使用されたときに、人々に提示されるテキストと会話ダイアログに影響を与えます。あなたの提供するカスタムの意図の会話の流れを設計するのはあなたなので、各意図の意味に対応するカテゴリを選択することが不可欠です。
ヒント
あなたのアクションの主な目的が、情報を取得すること、または人々に何かを表示すること (スポーツの試合結果や天気の表示など) である場合は、情報カテゴリを使用します。別のカテゴリを使用すると、人々は情報を取得するために追加のタップを行う必要があります。
一般的な、便利なタスクを高速化するカスタムの意図を設計します。 人々があなたのアプリに慣れ親しんでいることを利用して、人々がすでに頻繁に行っているタスクに集中してください。
すべてのシナリオであなたの意図が適切に機能することを確認してください。 意図を開始する方法に関係なく、人々があなたの意図をショートカットとして簡単に実行できるようにします。たとえば、スクリーンの有無にかかわらずデバイス上で、ロックスクリーンの提案や Apple Watch の Siri 文字盤から、検索から、複数ステップのショートカット内で、人々が音声を使用して実行できるように準備してください。
一般に、過度に複雑でないタスク用のカスタムの意図を設計します。 人々は、タスクを完了するために必要なアクションの数を減らす意図から最も恩恵を受けます。あなたのアプリとの長い会話を人々に要求することで、そのシンプルさを妨げないでください。カスタムの意図を明確に定義されたタスクに制限することで、ユーザーエラーの可能性を減らすこともできます。
あなたの意図が長続きするように設計します。 日付固有の意図や一時的なデータに関連した意図を提供することは避けてください。たとえば、旅行アプリが特定の旅程ごとにカスタムの意図を提供するのは得策ではありません。より良い意図では、フォローアップの質問を使用して、人々が次の旅行の旅程を取得できるようにします。
Siri を使用する許可を求めないでください。 あなたのアプリがカスタムの意図のみをサポートし、システムの意図をサポートしない場合は、人々があなたの意図の音声ショートカットを作成して使用する前に、Siri を使用する許可を取得する必要はありません。許可を求めると、人々の作業が遅くなり、あなたのアプリのカスタムの意図の使用を思いとどまらせる可能性があります。
バックグラウンド操作をサポートします。 最良の意図は、すばやく実行され、人々を現在のコンテキストから引き離さないショートカットを可能にします。あなたのアプリを前面に出さずにバックグラウンドで実行できるカスタムの意図をサポートするよう努めてください。また、バックグラウンド操作をサポートすることで、人々はハンズフリーおよび音声のみのシナリオでタスクを完了できるようになります。
人々が要求をカスタマイズできるように支援
カスタムの意図は、その場で結果を絞り込むことで、人々が 1 つの意図でより多くのことを行えるようにするフォローアップの質問を提供できます。たとえば、コーヒーを注文する 意図を提供する場合、"サイズは?"、"フレーバーは?"、"場所は?" などの質問をすることで、人々が欲しいものを正確に手に入れるのを支援することができます。サイズ、フレーバー、場所などの詳細は、人々が要求をパーソナライズできるようにあなたのアプリで定義できる パラメーター です。
人々は、あなたのフォローアップの質問に回答するか、ショートカットアプリまたはアプリ内の [Siri に追加] シートで既存の値を編集することにより、意図をパーソナライズするためのパラメーター値を提供します。たとえば、コーヒー豆の挽いたサイズのパラメーターを含む 挽いたコーヒーの注文 意図を提供する場合、"どの挽いたサイズですか?" などのフォローアップの質問を提供できます。粗挽きコーヒーを注文することが多い人は、"粗挽きコーヒーでよろしいですか?" などのダイアログでデフォルトのパラメーター値として 粗挽きの 値を使用することで、操作を簡素化できます。人々が別の挽き方を選択した場合は、オプションの完全なリストを提示してフォローアップできます。音声のみのシナリオでは、Siri がフォローアップの質問を話し、回答を送信します。人々がショートカットアプリまたは [Siri に追加] シートを使用してパラメーター値を編集すると、関連したショートカットを使用したときに新しい値が受け取れます。開発者向けガイダンスについては、Siri ショートカットとショートカットアプリを使用したユーザー操作の追加 (Adding User Interactivity with Siri Shortcuts and the Shortcuts App) を参照してください。
フォローアップの質問をできるだけ少なくする意図を設計します。 多くの場合、意図は、追加の質問をすることなく要求を満たすことができます。フォローアップの質問は意図をより柔軟にしますが、人々に長時間の操作を強制したくはないでしょう。ほとんどの場合、1 つまたは 2 つのフォローアップの質問を提供するのが最善です。
できるだけ少ない数のオプションをリストし、意味のある方法で項目を並べ替えます。 フォローアップの質問が多すぎるのと同じように、人々に与える選択肢が多すぎると、タスクを完了するのが面倒に感じる可能性があります。項目を含めるかどうかを決定するときは、その複雑さと有用性を考慮してください。たとえば、食品注文アプリでは、それぞれが複数の項目を含む注文のリストよりも、個々のメニュー項目のリストを解析する方が簡単かもしれません。いくつかの有用な項目を特定したら、最新性、頻度、または人気度で並べ替えることを検討してください。
フォローアップの各質問が意味のあるものであることを確認してください。 理想的には、フォローアップの各質問は、人々が重要な選択をするのに役立ちます。提示するオプションや質問が細かすぎたり、類似しすぎたりすると、会話が繰り返しになり、人々はあなたの意図を使用するのが面倒だと感じるかもしれません。
人々が理解しやすく、使いやすいパラメータを設計します。 単純な値または属性を表すパラメーターを目指し、単純でわかりやすい用語を使用して名前を付けます。たとえば、スープ注文アプリでは、スープ、サイズ、場所 などを、名前を使用して、スープの種類、1 人前のサイズ、配達場所のパラメーターを定義できます。ガイダンスについては、ショートカットと提案 を参照してください。
必要な場合にのみ確認を求めてください。 意図は、タスクを完了する前、またはフォローアップの質問に対する回答を解釈する際に、人々に確認を求めることができます。注文を可能にするアプリなど、金銭的に影響を与えるタスクをサポートするアプリは、注文を完了する前に確認を求めなければなりません。金銭的に影響のないタスクの場合、確認を求めることは余分な作業のように感じられ、人々が要求を完了するのを思いとどまらせることがあります。いずれの場合も、確認を何度も求めることは避けてください。
理にかなっている場合は、フォローアップの質問の連鎖をサポートします。 たとえば、人々が食べ物を注文するのを支援するアプリは、集荷または配達のオプションを提供しますが、人々が配達オプションを選択した後にのみ特定の場所を尋ねます。
あなたの Add to Siri (Siri に追加) シートに便利なデフォルトパラメータ値を指定して下さい。 人々の現在のコンテキストに基づいてデフォルト値を設定することで、人々があなたの意図のショートカットを簡単に作成できるようにします。たとえば、スープ注文アプリは、過去の注文を特定するよう人々に求めるフォローアップの質問を含む、スープの再注文 の意図を提供します。人々が特定の注文の詳細ビューからこのショートカットを Siri に追加すると、アプリはショートカットを事前に構成して、その注文の値をパラメーターに含めることができます。ショートカットアプリやあなたの [Siri に追加] シートであなたの意図を決して構成しない人もいることに注意してください。そのため、追加の構成に依存しないショートカットを常に提供してください。
人々があなたのショートカットを実行するコンテキストに基づいて、提供するオプションに優先順位を付けます。 たとえば、人々があなたのショートカットを使用して商品の受け取りを注文する場合は、現在近くにある受け取り場所を提供します。あなたのショートカットが実行されるコンテキストに適応するオプションを提供すると、人々が特定のオプションに対して別のショートカットを作成することを避けられます。
人々があなたのショートカットを設定するときに提供するパラメーター値を調整することを検討してください。 パラメーターに動的オプションがあることをあなたが示すと、2 つの方法でショートカットの設定体験を向上させることができます。
開発者向けのガイダンスについては、SoupChef サンプルコードプロジェクト の意図定義ファイルの storeLocation パラメーターを参照してください。
カスタムの意図の音声体験を強化する
会話的な操作を作成することを目指します。 フォローアップの質問の処理を含む、音声体験全体で Siri の発言内容をあなたはカスタマイズできます。ダイアログを書いて、他の人と演じてみて、あなたのダイアログが対面でのやり取りでどれだけうまく機能するかを確認してください。このようにカスタムダイアログを体験すると、操作が自然に感じられない場所を見つけるのに役立ちます。
エラーや失敗を人々が理解できるようにします。 システムはデフォルトのエラーの説明をいくつか提供しますが、現在の状況に固有のものになるようにエラー応答を強化することをお勧めします。たとえば、チキンヌードルスープが売り切れの場合、スープアプリは、"申し訳ありませんが、ご注文を完了できません" ではなく、"申し訳ありませんが、チキンヌードルスープは売れ切れです" のようなカスタムエラーで応答できます。
魅力的な音声応答に努めます。 人々は、AirPods で "Hey Siri" を使用して、またはスクリーンを見ずに CarPlay を使用して、HomePod からあなたのアプリのタスクを実行できることに注意してください。このような場合、音声応答は、視覚要素が表示するものと同じ重要な情報を伝えて、人々が Siri をどのように操作しても、必要なものを確実に入手できるようにする必要があります。
簡潔で説明的で、音声主導のシナリオで適切に機能する音声応答を作成します。 ショートカットのタイトルと同様に、効果的なカスタムの音声応答は、ショートカットの実行中に何が起こっているかを明確に伝えます。フォローアップの質問をする場合は、明確にするためにデフォルトのダイアログをカスタマイズしてください。たとえば、"どのスープ?" は "どれ?" よりも明確です。
不必要な繰り返しは避けてください。 人々は音声ショートカットを頻繁に実行する傾向があるため、フォローアップの質問に答えたり、エラーに対処したりするときに、同じプロンプトが何度も聞こえる場合があります。現在の会話のコンテキストを使用して、プロンプトからできるだけ多くの詳細を削除します。不必要な言葉やユーモアの試みを含めることは避けてください。どちらも時間の経過とともにイライラするためです。
Siri との会話が自然に感じられるようにします。 人々はさまざまな方法で Siri と対話します。たとえば、"2 つ目" と言ってリスト項目を選択したり、スープ注文アプリの場合は "ボウル" や "カップ" の代わりに "大" または "小" と言ったり。アプリ固有の類義語として機能する別の用語やフレーズをシステムに与えると、人々の Siri の操作がより自然に感じられるようになります ("大" の同義語として "ボウル" を使用するなど)。また、Siri が話す別のダイアログオプションを提供して、明瞭さを高めることも検討してください。たとえば、スープアプリでは、"クラムチャウダー 1 個"、"クラムチャウダー 1 個とトマト 1 個" などのメニューオプションのリストがスクリーン上に提示される場合がありますが、これらのオプションは "どう注文しますか?クラムチャウダーだけですか、トマト入りですか?"
アプリ名を含めないで下さい。 システムは、人々に応答するときに、あなたのアプリの口頭および視覚的な属性を提供します。口頭での応答にあなたのアプリの名前を含めることは冗長であり、Siri の操作体験が不自然に感じられる可能性があります。人々がショートカットを何度か使用した場合、Siri があなたのアプリの名前を話す頻度は低くなります。これは、応答しているアプリを常に思い出させる必要がないためです。
Siri 自体を模倣したり操作したりしないでください。 あなたのアプリで Siri になりすましたり、Siri が提供する機能を再現しようとしたり、Apple からのように見える応答を決して提供したりしてはなりません。
適切であり、保護者による制限を尊重してください。 攻撃的または侮辱的なコンテンツを提示しないでください。多くの家族が保護者による制限を使用して、明示的なコンテンツや特定のレーティングレベルに基づくコンテンツを制限していることに注意してください。
人称代名詞の使用は避けてください。 すべての人を含むコンテンツを作成して下さい。
人々があなたのアプリでより多くのオプションを表示できることを検討してください。 オプションのリストに人々が必要とする項目が含まれていない場合は、人々があなたのアプリを開いて詳細を表示できる項目を含めることができます。リストでは、"アプリ名 でもっと見る" のようなコピーを使用でき、音声ダイアログでは、"その他のオプション" と言うように人々を促すことができます。
応答をデバイスに依存しないようにします。 人々は Siri を使用して、Apple Watch、HomePod、iPad、iPhone、または CarPlay あなたのでアプリを操作します。デバイス固有の表現を提供しなければならない場合は、ユーザーの現在のデバイスが正確に反映されていることを確認してください。
宣伝しないでください。 意図のコンテンツには、広告、マーケティング、またはアプリ内購入の売り込みを含めないでください。
リソース
関連
開発者用文書
SiriKit (SiriKit)