Interactive Canvas API は、ウェブアプリで interactiveCanvas
オブジェクトを使用して会話型アクションとやり取りするために使用する JavaScript ライブラリです。
Interactive Canvas の詳細については、Interactive Canvas のドキュメントをご覧ください。
Methods
ready
ready(callbacks) returns undefined
コールバックを登録するために読み込まれると、Interactive Canvas ウェブアプリによって呼び出されます。
パラメータ | |
---|---|
callbacks |
InteractiveCanvasCallbacks
メソッド コールバックを含むオブジェクト。 |
sendTextQuery
sendTextQuery(textQuery) returns Promise<state>
テキストクエリを会話型アクションに送信します。
パラメータ | |
---|---|
textQuery |
string
会話アクションに送信するクエリ。 |
state |
string
次のいずれかが表示されます。
|
getHeaderHeightPx
getHeaderHeightPx() returns Promise<height>
ディスプレイの上部にあるヘッダーの高さを指定します。
パラメータ | |
---|---|
height |
number
ピクセル単位の高さ。 |
outputTts
outputTts(text, openMic) returns undefined;
SSML テキストを再生します。
パラメータ | |
---|---|
text |
string
SSML がサポートする文字列。 |
openMic |
boolean
TTS の再生後にマイクを開くかどうかを指定します。 |
createIntentHandler
createIntentHandler(intentId, callback) returns IntentHandler
NLU カスタム インテントのインテント ハンドラを作成します。
パラメータ | |
---|---|
intentId |
string
Actions Builder で定義されたインテント名。 |
callback |
function(MatchedIntent)
インテントが一致したときに実行される関数。 |
IntentHandler |
object
|
IntentHandler
インテント ハンドラを表すオブジェクト。expect()
または prompt()
を使用して登録できます。
MatchedIntent
一致したインテントのデータを含むオブジェクト。
Methods | |
---|---|
getIntentArg(parameterName) |
function(string)
一致したインテントのインテント パラメータを取得するメソッド。 |
createNumberSlot
createNumberSlot(callback, hints?) returns Slot<number>
number 型のスロットを作成します。
パラメータ | |
---|---|
callback |
function(FilledSlot)
スロットが埋められたときに実行される関数。 |
hints |
Hints
ユーザーがスロットを埋めるときに発話する可能性のある短い単語。 |
Slot |
object
|
createTextSlot
createTextSlot(callback, hints?) returns Slot<string>
文字列型のスロットを作成します。
パラメータ | |
---|---|
callback |
function(FilledSlot)
スロットが埋められたときに実行される関数。 |
hints |
Hints
ユーザーがスロットを埋めるときに発話する可能性のある短い単語。 |
Slot |
object
|
createConfirmationSlot
createConfirmationSlot(callback, hints?) returns Slot<boolean>
ブール値のスロットを作成します。
パラメータ | |
---|---|
callback |
function(FilledSlot)
スロットが埋められたときに実行される関数。 |
hints |
Hints
ユーザーがスロットを埋めるときに発話する可能性のある短い単語。 |
Slot |
object
|
createOptionsSlot
createOptionsSlot(options, callback, hints?) returns Slot<string>
事前定義されたオプションのリストからスロットを作成します。
パラメータ | |
---|---|
options |
array<Option>
スロットが埋められたときに実行される関数。 |
callback |
function(FilledSlot)
スロットが埋められたときに実行される関数。 |
hints |
Hints
ユーザーがスロットを埋めるときに発話する可能性のある短い単語。 |
Slot |
object
|
スロット
埋めるスロットを表すオブジェクト。expect()
または prompt()
を使用して登録できます。
FilledSlot<T>
塗りつぶしスロットを表すオブジェクト。
パラメータ | |
---|---|
T |
boolean|number|string
スロットタイプ。 |
オプション
スロットタイプのエントリを表すオブジェクト。
フィールド | |
---|---|
key |
string
スロットタイプ エントリの一意の識別子。 |
synonyms |
array<string>
スロット オプションの選択に使用される単語のリスト。 |
ヒント
スロットのヒントを表すオブジェクト。
フィールド | |
---|---|
associatedWords |
array<string>
NLU システムが埋めるスロットを決定するために使用する単語のリスト。 |
expect
expect(expectation) returns HandlerRegistration
クライアントで期待値を登録します。インテント ハンドラとスロットで呼び出すことができます。
パラメータ | |
---|---|
expectation |
IntentHandler|Slot
登録するインテント ハンドラまたはスロット。 |
HandlerRegistration |
object
登録されたインテント ハンドラまたはスロット。 |
HandlerRegistration
登録済みのインテント ハンドラを表すオブジェクト。
Methods | |
---|---|
deleteHandler() |
function
想定されるインテント ハンドラの登録を解除します。 |
clearExpectations
clearExpectations() returns undefined;
以前に登録されたインテント ハンドラとスロットをすべて削除することで、すべての想定を削除します。
プロンプト
prompt(tts, expectation) returns Promise<Answer<T>>
指定された TTS 文字列でユーザーにプロンプトを表示し、クライアントで期待事項を登録します。インテント ハンドラとスロットで呼び出すことができます。
パラメータ | |
---|---|
tts |
string
ユーザーに期待する内容についてユーザーに求めるために使用される TTS 文字列。 |
expectation |
IntentHandler|Slot
登録するインテント ハンドラまたはスロット。 |
Answer<T> |
object
プロンプトに対するユーザー提供の回答。 |
回答<T>
プロンプトに対するユーザー提供の回答を表すオブジェクト。
フィールド | |
---|---|
value |
boolean|number|string
ユーザーが指定した回答の値。 |
status |
string
回答のステータス。 次のいずれかが表示されます。
|
triggerScene
triggerScene(sceneName) returns Promise<TriggerSceneStatus>
シーンをトリガーします。
パラメータ | |
---|---|
sceneName |
string
トリガーするシーンの名前。 |
TriggerSceneStatus |
string
triggerScene() の呼び出しのステータス。 次のいずれかが表示されます。
|
setUserParam
setUserParam(key, value) returns Promise<undefined>;
会話間で渡されて保持される Key-Value ペアを設定します。
パラメータ | |
---|---|
key |
string
パラメータキー。 |
value |
object|array|boolean|number|string
パラメータ値。 |
getUserParam
getUserParam(key) returns Promise<object|array|boolean|number|string>;
指定されたキーの param 値(存在する場合)と呼び出しのステータスを取得します。
パラメータ | |
---|---|
key |
string
パラメータキー。 |
resetUserParam
resetUserParam() returns Promise<void>;
すべてのユーザー パラメータをクリアします。
setHomeParam
setHomeParam(key, value) returns Promise<undefined>;
会話間で渡されて保持される Key-Value ペアを設定します。
パラメータ | |
---|---|
key |
string
パラメータキー。 |
value |
object|array|boolean|number|string
パラメータ値。 |
getHomeParam
getHomeParam(key) returns Promise<object|array|boolean|number|string>;
指定されたキーの param 値(存在する場合)と呼び出しのステータスを取得します。
パラメータ | |
---|---|
key |
string
パラメータキー。 |
resetHomeParam
resetHomeParam() returns Promise<void>;
すべてのユーザー パラメータをクリアします。
setCanvasState
setCanvasState(state) returns undefined
Canvas ウェブアプリが状態を更新したことをアシスタントに通知します。setCanvasState
メソッドは値を返しません。状態ペイロードには、conv.context.canvas.state
プロパティを介してアクセスできます。
パラメータ | |
---|---|
state |
Object
JSON オブジェクトとしての Canvas アプリの更新状態。 |
InteractiveCanvasCallbacks
これらのコールバックは会話型アクションからの情報またはリクエストに応答する方法を提供し、メソッドは会話型アクションに情報やリクエストを送信する手段を提供します。
onUpdate
onUpdate(data) returns Promise|undefined
会話型アクションから Canvas
レスポンスが送信されたときに呼び出されます。TTS は、返された Promise が解決されるか、10 秒後にタイムアウトすると開始されます。
パラメータ | |
---|---|
data |
Object
Webhook によって送信された更新済みデータ。 |
onTtsMark
onTtsMark(markName) returns undefined
TTS の再生中に呼び出されるコールバック。
通常トリガーされる特別なマークを以下に示します。
START
は、TTS の開始を示します。END
は、TTS の終了を示します。ERROR
は、TTS の再生中にエラーが発生したことを示します。
SSML と <mark>
タグ(<mark name="custom"/>
など)を使用してカスタムマークを定義することもできます。
パラメータ | |
---|---|
markName |
string
TTS の再生中に呼び出されたマーク名。 |
onInputStatusChanged
onInputStatusChanged(inputStatus) returns undefined
アシスタントの入力ステータスが変更されたことを Canvas アプリに通知します。
パラメータ | |
---|---|
inputStatus |
Enum
デバイスでの音声入力やテキスト入力の処理のステータス。以下のいずれかになります。
|