次の方法で共有


Session class

ユーザーとのボットの会話を管理します。

コンストラクター

Session(ISessionOptions)

セッションのインスタンスを作成します。

プロパティ

connector

このセッションで使用されているコネクタ。

conversationData

会話のすべてのメンバーに表示される共有会話データ。

dialogData

現在のダイアログにのみ表示されるデータ。

library

ダイアログのボット ルート ライブラリ。

localizer

現在のセッションのローカライザー。

message

ユーザーから受信したメッセージ。 ボットから送信されたメッセージの場合、これは "from" フィールド & "to" フィールドのみを含む場合があります。

privateConversationData

ユーザーにのみ表示されるプライベートな会話データ。

sessionState

現在の状態情報をセッションします。

userData

ボットとのすべての会話で保持されるユーザーのデータ。

メソッド

activeDialogStackEntry(IDialogState[])

スタックのアクティブなダイアログまたは null を返します。

beginDialog<T>(string, T)

会話の制御を新しいダイアログに渡します。 現在のダイアログは、子ダイアログが完了するまで中断されます。 子が終了すると、現在のダイアログは、dialogResumed() の呼び出しを受け取り、子から返された結果を検査できます。

cancelDialog(string | number, string, any)

既存のダイアログを取り消し、必要に応じて新しいダイアログを開始します。 現在 ダイアログに影響する endDialog()replaceDialog() とは異なり、このメソッドを使用すると、スタック上の任意の場所で親ダイアログを終了できます。 取り消されたダイアログの親は、ダイアログが endDialog() を呼び出したかのように続行されます。 ダイアログが取り消されたことを示すために、ResumeReason.canceled の特別な が返されます。

clearDialogStack()

現在のダイアログ スタックをクリアします。

delay(number)

送信メッセージ間に遅延を挿入します。

dialogStack(IDialogState[])

現在のダイアログ スタックを取得/設定します。 現在のダイアログのコピーが返されるため、返されたスタックに変更が加えられた場合は、session.dialogStack()の 2 回目の呼び出しを介してセッションにコピーし直す必要があります。

dispatch(ISessionState, IMessage, Function)

セッション オブジェクトの初期化を完了し、インストールされているすべてのミドルウェアを介してセッションをルーティングします。 渡された next() 関数は、ミドルウェア チェーンの最後のステップとして呼び出されます。

endConversation(TextOrMessageType, any[])

現在の会話を終了し、必要に応じてユーザーにメッセージを送信します。

endDialog(TextOrMessageType, any[])

現在のダイアログを終了し、必要に応じてユーザーにメッセージを送信します。 親は、IDialogResult.resumed 完了した 理由で再開されます。

endDialogWithResult(IDialogResult<any>)

現在のダイアログを終了し、必要に応じてダイアログの親に結果を返します。

error(Error)

エラーが発生したことを通知します。 ボットは on('error', err) イベントを介してエラーを通知します。

findDialogStackEntry(IDialogState[], string, boolean)

ダイアログ スタックを検索して、特定のダイアログを順方向または逆方向に検索し、そのインデックスを返します。

forEachDialogStackEntry(IDialogState[], boolean, (entry: IDialogState, index: number) => void)

すべてのスタック ダイアログ エントリを順方向または逆方向に列挙します。

gettext(string, any[])

メッセージ言語のローカライズされた文字列を読み込みます。 引数が渡された場合、ローカライズされた文字列はテンプレートとして扱われ、sprintf-js を使用して書式設定されます (詳細については、ドキュメントを参照してください)。

isReset()

セッションがリセットされた場合は true を返します。

messageSent()

このセッションに対してメッセージが送信された場合は true を返します。

ngettext(string, string, number)

メッセージ言語のローカライズされた文字列の複数形を読み込みます。 出力文字列は、文字列内の %d をカウントに置き換えることで、カウントを含むように書式設定されます。

on(string, (data: any) => void)

イベント リスナーを登録します。

popDialogStackEntry(IDialogState[])

アクティブなダイアログをスタックからポップし、スタックが空でない場合は新しいダイアログを返します。

preferredLocale(string, (err: Error) => void)

パラメーターが指定されていない場合は優先ロケールを返し、それ以外の場合は優先ロケールを設定します。

pruneDialogStack(IDialogState[], number)

指定したインデックスから始まるすべてのダイアログ スタック エントリを削除し、新しいアクティブなダイアログを返します。

pushDialogStackEntry(IDialogState[], IDialogState)

新しいダイアログをスタックにプッシュし、アクティブなダイアログとして返します。

replaceDialog<T>(string, T)

現在のダイアログを終了し、新しいダイアログを開始します。 親ダイアログは、新しいダイアログが完了するまで再開されません。

reset(string, any)

セッションの呼び出し履歴をクリアし、構成された dialogId を使用して会話を再開します。

routeToActiveDialog(IRecognizeResult)

アクティブなダイアログまたは既定のダイアログにセッションをディスパッチして処理します。

save()

dialogData、userData conversationdata、または [privateConversationData'(#privateconversationdata) に加えられた変更の保存をトリガーします。

say(TextType, IMessageOptions)
say(TextType, TextType, IMessageOptions)

テキストとオプションの SSML メッセージをユーザーに送信します。

sayLocalized(string, TextType, TextType, IMessageOptions)

特定のローカライズ名前空間を使用して、テキストとオプションの SSML メッセージをユーザーに送信します。

send(TextOrMessageType, any[])

ユーザーにメッセージを送信します。

sendBatch((err: Error, addresses?: IAddress[]) => void)

現在のバッチを直ちに終了し、キューに登録されたメッセージを配信します。

sendLocalized(string, TextOrMessageType, any[])

特定のローカライズ名前空間を使用してユーザーにメッセージを送信します。

sendTyping()

ボットが入力していることを示すメッセージをユーザーに送信します。 実行時間の長い操作では、数秒ごとに呼び出す必要があります。

toRecognizeContext()

セッション オブジェクトを読み取り専用コンテキスト オブジェクトとして返します。

validateDialogStack(IDialogState[], Library)

ダイアログ スタック上のすべてのエントリが、ライブラリ階層内の有効なダイアログを参照していることを確認します。

watch(string, boolean)

現在のセッションのウォッチを有効または無効にします。

watchable(string, IWatchableHandler)

監視できる変数を追加または取得します。

watchableList()

監視可能な変数の一覧を返します。

watchList()

セッションで監視されている変数の現在のリストを返します。

コンストラクターの詳細

Session(ISessionOptions)

セッションのインスタンスを作成します。

new Session(options: ISessionOptions)

パラメーター

options
ISessionOptions

セッション構成オプション。

プロパティの詳細

connector

このセッションで使用されているコネクタ。

connector: IConnector

プロパティ値

conversationData

会話のすべてのメンバーに表示される共有会話データ。

conversationData: any

プロパティ値

any

dialogData

現在のダイアログにのみ表示されるデータ。

dialogData: any

プロパティ値

any

library

ダイアログのボット ルート ライブラリ。

library: Library

プロパティ値

localizer

現在のセッションのローカライザー。

localizer: ILocalizer

プロパティ値

message

ユーザーから受信したメッセージ。 ボットから送信されたメッセージの場合、これは "from" フィールド & "to" フィールドのみを含む場合があります。

message: IMessage

プロパティ値

privateConversationData

ユーザーにのみ表示されるプライベートな会話データ。

privateConversationData: any

プロパティ値

any

sessionState

現在の状態情報をセッションします。

sessionState: ISessionState

プロパティ値

userData

ボットとのすべての会話で保持されるユーザーのデータ。

userData: any

プロパティ値

any

メソッドの詳細

activeDialogStackEntry(IDialogState[])

スタックのアクティブなダイアログまたは null を返します。

static function activeDialogStackEntry(stack: IDialogState[])

パラメーター

stack

IDialogState[]

エントリを返すダイアログ スタック。

戻り値

beginDialog<T>(string, T)

会話の制御を新しいダイアログに渡します。 現在のダイアログは、子ダイアログが完了するまで中断されます。 子が終了すると、現在のダイアログは、dialogResumed() の呼び出しを受け取り、子から返された結果を検査できます。

function beginDialog<T>(id: string, args?: T)

パラメーター

id

string

開始するダイアログの一意の ID。

args

T

(省略可能) begin() メソッド ダイアログに渡す引数。

戻り値

cancelDialog(string | number, string, any)

既存のダイアログを取り消し、必要に応じて新しいダイアログを開始します。 現在 ダイアログに影響する endDialog()replaceDialog() とは異なり、このメソッドを使用すると、スタック上の任意の場所で親ダイアログを終了できます。 取り消されたダイアログの親は、ダイアログが endDialog() を呼び出したかのように続行されます。 ダイアログが取り消されたことを示すために、ResumeReason.canceled の特別な が返されます。

function cancelDialog(dialogId: string | number, replaceWithId?: string, replaceWithArgs?: any)

パラメーター

dialogId

string | number

  • dialogId:{string} - 終了するダイアログの ID。 ダイアログ スタックに複数のダイアログが存在する場合、最後の発生は取り消されます。
  • dialogId:{number} - 取り消すスタック上のダイアログのインデックス。 これは、正しいインスタンスが確実に取り消されるため、アクション ハンドラーからダイアログを取り消す場合に推奨される方法です。
replaceWithId

string

(省略可能) キャンセルされたダイアログの場所で開始する ID を指定します。 これにより、ダイアログの親が再開されなくなります。

replaceWithArgs

any

(省略可能) 新しいダイアログに渡す引数。

戻り値

clearDialogStack()

現在のダイアログ スタックをクリアします。

function clearDialogStack()

戻り値

delay(number)

送信メッセージ間に遅延を挿入します。

function delay(delay: number)

パラメーター

delay

number

一時停止する時間 (ミリ秒)。

戻り値

dialogStack(IDialogState[])

現在のダイアログ スタックを取得/設定します。 現在のダイアログのコピーが返されるため、返されたスタックに変更が加えられた場合は、session.dialogStack()の 2 回目の呼び出しを介してセッションにコピーし直す必要があります。

function dialogStack(newStack?: IDialogState[])

パラメーター

newStack

IDialogState[]

(省略可能) セッションに割り当てるダイアログ スタック。 dialogData セッションは、新しいアクティブなダイアログの状態を反映するように更新されます。

戻り値

dispatch(ISessionState, IMessage, Function)

セッション オブジェクトの初期化を完了し、インストールされているすべてのミドルウェアを介してセッションをルーティングします。 渡された next() 関数は、ミドルウェア チェーンの最後のステップとして呼び出されます。

function dispatch(sessionState: ISessionState, message: IMessage, next: Function)

パラメーター

sessionState
ISessionState

現在のセッションの状態。 null 場合は、構成された dialogIdから新しい会話が開始されます。

message
IMessage

ミドルウェアを介してルーティングするメッセージ。

next

Function

ミドルウェア チェーンの最後のステップとして呼び出す関数。

戻り値

endConversation(TextOrMessageType, any[])

現在の会話を終了し、必要に応じてユーザーにメッセージを送信します。

function endConversation(message?: TextOrMessageType, args: any[])

パラメーター

message
TextOrMessageType

(省略可能) 会話を終了する前にユーザーを送信するテキスト/メッセージ。

args

any[]

(省略可能) メッセージ が {string|string[]} である場合 最終的な出力テキストの書式設定に使用される引数。

戻り値

endDialog(TextOrMessageType, any[])

現在のダイアログを終了し、必要に応じてユーザーにメッセージを送信します。 親は、IDialogResult.resumed 完了した 理由で再開されます。

function endDialog(message?: TextOrMessageType, args: any[])

パラメーター

message
TextOrMessageType

(省略可能) ダイアログを終了する前にユーザーを送信するテキスト/メッセージ。

args

any[]

(省略可能) メッセージ が {string|string[]} である場合 最終的な出力テキストの書式設定に使用される引数。

戻り値

endDialogWithResult(IDialogResult<any>)

現在のダイアログを終了し、必要に応じてダイアログの親に結果を返します。

function endDialogWithResult(result?: IDialogResult<any>)

パラメーター

result

IDialogResult<any>

(省略可能) ユーザーを送信する結果。 返す値は、応答 フィールドに含まれている必要があります。

戻り値

error(Error)

エラーが発生したことを通知します。 ボットは on('error', err) イベントを介してエラーを通知します。

function error(err: Error)

パラメーター

err

Error

発生したエラー。

戻り値

findDialogStackEntry(IDialogState[], string, boolean)

ダイアログ スタックを検索して、特定のダイアログを順方向または逆方向に検索し、そのインデックスを返します。

static function findDialogStackEntry(stack: IDialogState[], dialogId: string, reverse?: boolean)

パラメーター

stack

IDialogState[]

検索するダイアログ スタック。

dialogId

string

検索するダイアログの一意の ID (<namespace>:<dialog> 形式)。

reverse

boolean

(省略可能) true の場合、アクティブなダイアログから始まり、ルートまでスタックが検索されます。

戻り値

number

forEachDialogStackEntry(IDialogState[], boolean, (entry: IDialogState, index: number) => void)

すべてのスタック ダイアログ エントリを順方向または逆方向に列挙します。

static function forEachDialogStackEntry(stack: IDialogState[], reverse: boolean, fn: (entry: IDialogState, index: number) => void)

パラメーター

stack

IDialogState[]

列挙するダイアログ スタック。

reverse

boolean

true の場合、エントリはアクティブなダイアログから始まり、ルート ダイアログまで列挙されます。

fn

(entry: IDialogState, index: number) => void

スタック上の各エントリで呼び出す関数。

gettext(string, any[])

メッセージ言語のローカライズされた文字列を読み込みます。 引数が渡された場合、ローカライズされた文字列はテンプレートとして扱われ、sprintf-js を使用して書式設定されます (詳細については、ドキュメントを参照してください)。

function gettext(msgid: string, args: any[])

パラメーター

msgid

string

ローカライズされた文字列テーブルのキーとして使用する文字列。 通常、これは文字列の英語版になります。

args

any[]

(省略可能) 最終的な出力文字列の書式設定に使用される引数。

戻り値

string

isReset()

セッションがリセットされた場合は true を返します。

function isReset()

戻り値

boolean

messageSent()

このセッションに対してメッセージが送信された場合は true を返します。

function messageSent()

戻り値

boolean

ngettext(string, string, number)

メッセージ言語のローカライズされた文字列の複数形を読み込みます。 出力文字列は、文字列内の %d をカウントに置き換えることで、カウントを含むように書式設定されます。

function ngettext(msgid: string, msgid_plural: string, count: number)

パラメーター

msgid

string

ローカライズされた文字列テーブルのキーとして使用する文字列の単数形。 %d を使用して、カウントの移動先を指定します。

msgid_plural

string

ローカライズされた文字列テーブルのキーとして使用する文字列の複数形。 %d を使用して、カウントの移動先を指定します。

count

number

文字列の単数形または複数形のどちらを使用するかを決定するときに使用するカウント。

戻り値

string

on(string, (data: any) => void)

イベント リスナーを登録します。

function on(event: string, listener: (data: any) => void)

パラメーター

event

string

イベントの名前。 イベントの種類:

  • エラー: エラーが発生しました。 JavaScript Error オブジェクトを渡します。
listener

(data: any) => void

呼び出す関数。

popDialogStackEntry(IDialogState[])

アクティブなダイアログをスタックからポップし、スタックが空でない場合は新しいダイアログを返します。

static function popDialogStackEntry(stack: IDialogState[])

パラメーター

stack

IDialogState[]

更新するダイアログ スタック。

戻り値

preferredLocale(string, (err: Error) => void)

パラメーターが指定されていない場合は優先ロケールを返し、それ以外の場合は優先ロケールを設定します。

function preferredLocale(locale?: string, callback?: (err: Error) => void)

パラメーター

locale

string

(省略可能) メッセージのローカライズに使用するロケール。

callback

(err: Error) => void

(省略可能) 指定されたロケールに対してローカリゼーション テーブルが読み込まれたときに呼び出される関数。

戻り値

string

pruneDialogStack(IDialogState[], number)

指定したインデックスから始まるすべてのダイアログ スタック エントリを削除し、新しいアクティブなダイアログを返します。

static function pruneDialogStack(stack: IDialogState[], start: number)

パラメーター

stack

IDialogState[]

更新するダイアログ スタック。

start

number

削除する最初の要素のインデックス。

戻り値

pushDialogStackEntry(IDialogState[], IDialogState)

新しいダイアログをスタックにプッシュし、アクティブなダイアログとして返します。

static function pushDialogStackEntry(stack: IDialogState[], entry: IDialogState)

パラメーター

stack

IDialogState[]

更新するダイアログ スタック。

entry
IDialogState

スタックにプッシュするダイアログ エントリ。

戻り値

replaceDialog<T>(string, T)

現在のダイアログを終了し、新しいダイアログを開始します。 親ダイアログは、新しいダイアログが完了するまで再開されません。

function replaceDialog<T>(id: string, args?: T)

パラメーター

id

string

開始するダイアログの一意の ID。

args

T

(省略可能) begin() メソッド ダイアログに渡す引数。

戻り値

reset(string, any)

セッションの呼び出し履歴をクリアし、構成された dialogId を使用して会話を再開します。

function reset(dialogId?: string, dialogArgs?: any)

パラメーター

dialogId

string

(省略可能)開始するダイアログの ID。

dialogArgs

any

(省略可能) begin() メソッド ダイアログに渡す引数。

戻り値

routeToActiveDialog(IRecognizeResult)

アクティブなダイアログまたは既定のダイアログにセッションをディスパッチして処理します。

function routeToActiveDialog(recognizeResult?: IRecognizeResult)

パラメーター

recognizeResult
IRecognizeResult

(省略可能) Library.findRoutes()Library.findActiveDialogRoutes()、* または Dialog.recognize()の呼び出しから返される結果。

save()

dialogData、userData conversationdata、または [privateConversationData'(#privateconversationdata) に加えられた変更の保存をトリガーします。

function save()

戻り値

say(TextType, IMessageOptions)

function say(text: TextType, options?: IMessageOptions)

パラメーター

text
TextType
options
IMessageOptions

戻り値

say(TextType, TextType, IMessageOptions)

テキストとオプションの SSML メッセージをユーザーに送信します。

function say(text: TextType, speak?: TextType, options?: IMessageOptions)

パラメーター

text
TextType

ユーザーに送信するテキスト。 SSML または添付ファイルのみを送信する場合は null を指定できます。

speak
TextType

(省略可能) ユーザーに読み上げる必要があるメッセージ。 メッセージは、音声合成マークアップ言語 (SSML) 形式にする必要があります。 配列が渡された場合、応答はランダムに選択されます。

options
IMessageOptions

(省略可能) 送信メッセージに含める必要があるプロパティ。

戻り値

sayLocalized(string, TextType, TextType, IMessageOptions)

特定のローカライズ名前空間を使用して、テキストとオプションの SSML メッセージをユーザーに送信します。

function sayLocalized(libraryNamespace: string, text: TextType, speak?: TextType, options?: IMessageOptions)

パラメーター

libraryNamespace

string

メッセージのローカライズに使用するNamespace。

text
TextType

ユーザーに送信するテキスト。 SSML または添付ファイルのみを送信する場合は null を指定できます。

speak
TextType

(省略可能) ユーザーに読み上げる必要があるメッセージ。 メッセージは、音声合成マークアップ言語 (SSML) 形式にする必要があります。 配列が渡された場合、応答はランダムに選択されます。

options
IMessageOptions

(省略可能) 送信メッセージに含める必要があるプロパティ。

戻り値

send(TextOrMessageType, any[])

ユーザーにメッセージを送信します。

function send(message: TextOrMessageType, args: any[])

パラメーター

message
TextOrMessageType

ユーザーに送信するテキスト/メッセージ。 配列が渡された場合、応答はランダムに選択されます。

args

any[]

(省略可能) メッセージ が {string|string[]} である場合 最終的な出力テキストの書式設定に使用される引数。

戻り値

sendBatch((err: Error, addresses?: IAddress[]) => void)

現在のバッチを直ちに終了し、キューに登録されたメッセージを配信します。

function sendBatch(done?: (err: Error, addresses?: IAddress[]) => void)

パラメーター

done

(err: Error, addresses?: IAddress[]) => void

(省略可能) 何らかの理由でバッチが正常に処理または失敗したときに呼び出される関数。

sendLocalized(string, TextOrMessageType, any[])

特定のローカライズ名前空間を使用してユーザーにメッセージを送信します。

function sendLocalized(libraryNamespace: string, message: TextOrMessageType, args: any[])

パラメーター

libraryNamespace

string

メッセージのローカライズに使用するNamespace。

message
TextOrMessageType

ユーザーに送信するテキスト/メッセージ。

args

any[]

(省略可能) メッセージ が {string|string[]} である場合 最終的な出力テキストの書式設定に使用される引数。

戻り値

sendTyping()

ボットが入力していることを示すメッセージをユーザーに送信します。 実行時間の長い操作では、数秒ごとに呼び出す必要があります。

function sendTyping()

戻り値

toRecognizeContext()

セッション オブジェクトを読み取り専用コンテキスト オブジェクトとして返します。

function toRecognizeContext()

戻り値

validateDialogStack(IDialogState[], Library)

ダイアログ スタック上のすべてのエントリが、ライブラリ階層内の有効なダイアログを参照していることを確認します。

static function validateDialogStack(stack: IDialogState[], root: Library)

パラメーター

stack

IDialogState[]

検証するダイアログ スタック。

root
Library

ライブラリ階層のルート (通常はボット)。

戻り値

boolean

watch(string, boolean)

現在のセッションのウォッチを有効または無効にします。

function watch(variable: string, enable?: boolean)

パラメーター

variable

string

ウォッチ/ウォッチ解除する変数の名前。

enable

boolean

(省略可能)true の場合、変数は監視され、それ以外の場合はウォッチされません。 既定値は true です。

戻り値

watchable(string, IWatchableHandler)

監視できる変数を追加または取得します。

static function watchable(variable: string, handler?: IWatchableHandler)

パラメーター

variable

string

監視できる変数の名前。 大文字と小文字は表示にのみ使用されます。

handler
IWatchableHandler

(省略可能)変数の現在の値を取得するために使用される関数。 指定した場合、新しいハンドラーが登録され、それ以外の場合は既存のハンドラーが取得されます。

戻り値

watchableList()

監視可能な変数の一覧を返します。

static function watchableList()

戻り値

string[]

watchList()

セッションで監視されている変数の現在のリストを返します。

function watchList()

戻り値

string[]