Bagikan melalui


PromptTime class

Permintaan waktu yang dapat disesuaikan.

Memperluas

Konstruktor

PromptTime(IPromptFeatures)

Membuat instans perintah baru yang dapat disesuaikan. Perintah baru Anda harus ditambahkan sebagai dialog ke bot atau pustaka.

Properti

features

Perintah kumpulan fitur yang dikonfigurasi saat ini.

Metode

addDialogTrigger(ActionSet, string)

Dipanggil sekali untuk setiap dialog dalam pustaka untuk memberi dialog kesempatan untuk menambahkan triggerAction() ke kumpulan tindakan global pustaka. Pemicu ini dipetakan ke beginDialogAction() yang memulai dialog saat kondisi pemicu terpenuhi.

begin<T>(Session, T)

Dipanggil ketika sesi dialog baru sedang dimulai.

beginDialogAction(string, string, IBeginDialogActionOptions)

Mengikat tindakan ke dialog yang akan memulai dialog lain kapan saja dipicu. Dialog baru akan didorong ke tumpukan sehingga tidak secara otomatis mengakhiri tugas saat ini. Tugas saat ini akan dilanjutkan setelah dialog baru berakhir. Perintah bawaan akan secara otomatis meminta kembali pengguna setelah ini terjadi tetapi perilaku tersebut dapat dinonaktifkan dengan mengatur bendera promptAfterAction saat memanggil perintah bawaan.

cancelAction(string, TextOrMessageType, ICancelActionOptions)

Mengikat tindakan ke dialog yang akan membatalkan dialog kapan saja dipicu. Ketika dibatalkan, induk dialog akan dilanjutkan dengan dilanjutkan kode yang menunjukkan bahwa dibatalkan.

clone(ActionSet)

Mengembalikan klon dari ActionSet yang ada.

customAction(IDialogActionOptions)

Mengikat tindakan kustom ke dialog yang akan memanggil handler onSelectAction saat dipicu.

dialogInterrupted(Session, string, any)

Dipanggil ketika dialog akar sedang terganggu oleh dialog lain. Ini memberikan dialog yang sedang terganggu kesempatan untuk menjalankan logika kustom sebelum dihapus dari tumpukan. Dialog itu sendiri bertanggung jawab untuk menghapus tumpukan dialog dan memulai dialog baru.

dialogResumed<T>(Session, IDialogResult<T>)

Dialog anak telah berakhir dan dialog saat ini sedang dilanjutkan.

endConversationAction(string, TextOrMessageType, ICancelActionOptions)

Mengikat tindakan yang akan mengakhiri percakapan dengan pengguna saat dipicu.

findActionRoutes(IRecognizeDialogContext, (err: Error, results: IRouteResult[]) => void)

Dipanggil selama Library.findRoutes() memanggil setiap dialog pada tumpukan untuk menentukan apakah salah satu tindakan dialog dipicu oleh ucapan pengguna.

formatMessage(Session, TextType, TextType, (err: Error, msg: IMessage) => void)

Membuat pesan yang akan dikirim untuk perintah. Ini dipanggil secara otomatis oleh sendPrompt() sehingga dalam banyak kasus Anda ingin mendaftarkan onFormatMessage() handler untuk menyesuaikan pesan yang dikirim untuk perintah. Anda seharusnya hanya perlu memanggil metode ini jika Anda menerapkan logika sendPrompt() Anda sendiri.

gettext(Session, TextType, string)

Mengembalikan teks untuk perintah yang telah dilokalkan menggunakan namespace pemanggil perintah.

matches(RegExp | string, string | IDialogWaterfallStep[] | IDialogWaterfallStep, any)

Memanggil handler ketika niat tertentu terdeteksi dalam ucapan pengguna. Untuk niat berbasis , niat dapat berupa niat yang dikembalikan oleh recognizer() yang terdaftar untuk perintah atau dapat menjadi niat yang mengalir dari recognizer() global.

CATATAN: Detail lengkap kecocokan, termasuk daftar niat & entitas yang terdeteksi, akan diteruskan ke args langkah atau dialog air terjun pertama yang dimulai.

matchesAny(RegExp[] | string[], string | IDialogWaterfallStep[] | IDialogWaterfallStep, any)

Memanggil handler ketika salah satu niat yang diberikan terdeteksi dalam ucapan pengguna. Untuk niat berbasis , niat dapat berupa niat yang dikembalikan oleh recognizer() yang terdaftar untuk perintah atau dapat menjadi niat yang mengalir dari recognizer() global.

CATATAN: Detail lengkap kecocokan, termasuk daftar niat & entitas yang terdeteksi, akan diteruskan ke args langkah atau dialog air terjun pertama yang dimulai.

onFormatMessage((session: Session, text: TextType, speak: TextType, callback: (err: Error, message?: IMessage) => void) => void)

Mendaftarkan handler yang akan dipanggil untuk membuat IMessage keluar yang akan dikirim untuk perintah. Handler ini hanya dipanggil ketika prompt/retryPrompt saat ini berjenis string|string[]. Setiap kali prompt/retryPrompt adalah IMessage|IIsMessage pesan yang dikonfigurasi digunakan sehingga handler Anda tidak akan dipanggil. Beberapa handler dapat didaftarkan dan handler pertama yang memanggil callback() dengan pesan akan digunakan. Memanggil callback(null, null) akan menyebabkan pemrosesan berpindah ke handler berikutnya dalam rantai.

onPrompt((session: Session, next: Function) => void)

Mendaftarkan handler yang akan dipanggil setiap kali perintah akan mengirim pesan kepada pengguna. Anda dapat menggunakan hook ini untuk mengimplementasikan logika pengiriman prompt kustom Anda sendiri. Beberapa handler dapat didaftarkan dan memanggil next() akan memanggil handler berikutnya dalam rantai. Handler akhir melakukan logika default perintah yaitu membuat pesan baru menggunakan formatMessage() lalu mengirimkannya.

onRecognize((context: IRecognizeDialogContext, callback: (err: Error, score: number, response?: any) => void) => void)

Mendaftarkan handler yang akan dipanggil setiap kali prompt menerima balasan dari pengguna. Handler callback() dapat digunakan untuk mengembalikan skor keyakinan bahwa ia memahami input pengguna serta nilai yang harus dikembalikan ke pemanggil prompt. Memanggil callback(null, 1.0, true); akan menunjukkan keyakinan tinggi bahwa pengguna menjawab perintah dan akan mengembalikan boolean benar sebagai respons dari prompt. Jenis respons apa pun dimungkinkan, termasuk objek. Memanggil callback(null, 0.0); menunjukkan bahwa input pengguna tidak dipahami sama sekali dan bahwa mereka harus diminta kembali.

Beberapa handler dapat didaftarkan dan tidak seperti jenis handler lainnya, semua yang terdaftar akan dipanggil dan handler yang memberikan skor keyakinan tertinggi akan dipilih sebagai pemenang. Saat menyesuaikan salah satu jenis perintah bawaan, Anda sering ingin menonaktifkan logika pengenal default perintah. Ini dapat dicapai dengan mengatur fitur perintah saat Anda membuatnya. Perlu diingat bahwa jika Anda sepenuhnya menonaktifkan logika pengenal default perintah, Anda harus melakukan semua pengenalan sendiri.

recognize(IRecognizeDialogContext, (err: Error, result: IRecognizeResult) => void)

Mengurai ucapan pengguna dan menetapkan skor dari 0,0 - 1,0 yang menunjukkan seberapa yakin dialognya adalah bahwa ia memahami ucapan pengguna. Metode ini selalu dipanggil untuk dialog aktif pada tumpukan. Skor 1.0 akan menunjukkan kecocokan yang sempurna dan mengakhiri pengenalan lebih lanjut. Ketika skor kurang dari 1,0, setiap dialog pada tumpukan akan memiliki metode recognizeAction() yang dipanggil juga untuk melihat apakah ada tindakan bernama yang terikat ke dialog yang lebih cocok dengan ucapan pengguna. Tindakan global yang terdaftar di tingkat bot juga akan dievaluasi. Jika dialog memiliki skor yang lebih tinggi maka tindakan terikat apa pun, dialog metode replyReceived() akan dipanggil dengan objek hasil yang dikembalikan dari panggilan recognize(). Ini memungkinkan dialog meneruskan data tambahan yang dikumpulkan selama fase kenali ke metode replyReceived() untuk penanganan.

Jika ada tindakan dengan skor yang lebih tinggi, maka dialog tindakan akan dipanggil alih-alih metode dialog replyReceived(). Dialog akan tetap berada di tumpukan dan dapat dilanjutkan pada titik tertentu jika tindakan memanggil dialog baru sehingga dialog harus bersiap untuk panggilan tak terduga ke dialogresumed() .

recognizer(IIntentRecognizer)

Menambahkan plugin recognizer baru ke Prompt yang akan dijalankan setiap kali pengguna membalas permintaan.

reloadAction(string, TextOrMessageType, IBeginDialogActionOptions)

Mengikat tindakan ke dialog yang akan menyebabkan dialog dimuat ulang kapan saja dipicu. Ini berguna untuk mengimplementasikan logika yang menangani ucapan pengguna seperti "startover".

replyReceived(Session, IRecognizeResult)

Memproses pesan yang diterima dari pengguna. Dipanggil oleh sistem dialog.

selectActionRoute(Session, IRouteResult)

Memilih rute yang memiliki skor keyakinan tertinggi untuk ucapan tersebut.

sendPrompt(Session)

Mengirim permintaan kepada pengguna untuk giliran saat ini. Ini dapat dipanggil dari handler [matches()][#matches] untuk mengirim prompt/reprompt secara manual kepada pengguna. Untuk memaksa pengiriman perintah awal, Anda harus mengatur session.dialogData.turns = 0; sebelum memanggil sendPrompt().

triggerAction(ITriggerActionOptions)

Mengikat tindakan ke dialog yang akan membuatnya menjadi dialog aktif kapan saja dipicu. Perilaku default adalah mengganggu dialog yang ada dengan menghapus tumpukan dan memulai dialog di akar tumpukan. Dialog yang terganggu dapat mencegat gangguan ini dengan menambahkan kustom onInterrupted handler ke opsi tindakan pemicunya. Selain itu, Anda dapat menyesuaikan cara dialog yang dipicu dimulai dengan menyediakan kustom onSelectAction handler ke opsi tindakan pemicu Anda.

Detail Konstruktor

PromptTime(IPromptFeatures)

Membuat instans perintah baru yang dapat disesuaikan. Perintah baru Anda harus ditambahkan sebagai dialog ke bot atau pustaka.

new PromptTime(features?: IPromptFeatures)

Parameter

features
IPromptFeatures

(Opsional) fitur yang digunakan untuk menyesuaikan perilaku perintah.

Detail Properti

features

Perintah kumpulan fitur yang dikonfigurasi saat ini.

public features: IPromptFeatures

Nilai Properti

Detail Metode

addDialogTrigger(ActionSet, string)

Dipanggil sekali untuk setiap dialog dalam pustaka untuk memberi dialog kesempatan untuk menambahkan triggerAction() ke kumpulan tindakan global pustaka. Pemicu ini dipetakan ke beginDialogAction() yang memulai dialog saat kondisi pemicu terpenuhi.

function addDialogTrigger(actions: ActionSet, dialogId: string)

Parameter

actions
ActionSet

Pustaka set tindakan global.

dialogId

string

ID dialog yang sepenuhnya memenuhi syarat untuk dipicu.

begin<T>(Session, T)

Dipanggil ketika sesi dialog baru sedang dimulai.

function begin<T>(session: Session, args?: T)

Parameter

session
Session

Objek sesi untuk percakapan saat ini.

args

T

Argumen (Opsional) yang diteruskan ke dialog oleh induknya.

beginDialogAction(string, string, IBeginDialogActionOptions)

Mengikat tindakan ke dialog yang akan memulai dialog lain kapan saja dipicu. Dialog baru akan didorong ke tumpukan sehingga tidak secara otomatis mengakhiri tugas saat ini. Tugas saat ini akan dilanjutkan setelah dialog baru berakhir. Perintah bawaan akan secara otomatis meminta kembali pengguna setelah ini terjadi tetapi perilaku tersebut dapat dinonaktifkan dengan mengatur bendera promptAfterAction saat memanggil perintah bawaan.

function beginDialogAction(name: string, id: string, options?: IBeginDialogActionOptions)

Parameter

name

string

Nama unik untuk menetapkan tindakan.

id

string

ID dialog untuk memulai.

options
IBeginDialogActionOptions

(Opsional) opsi yang digunakan untuk mengonfigurasi tindakan. Jika cocok ditentukan, tindakan akan mendengarkan pengguna untuk mengucapkan kata atau frasa yang memicu tindakan, jika tidak, tindakan perlu terikat ke tombol menggunakan CardAction.dialogAction() untuk memicu tindakan. Anda juga dapat menggunakan dialogArg untuk meneruskan param tambahan ke dialog yang sedang dimulai.

Mengembalikan

cancelAction(string, TextOrMessageType, ICancelActionOptions)

Mengikat tindakan ke dialog yang akan membatalkan dialog kapan saja dipicu. Ketika dibatalkan, induk dialog akan dilanjutkan dengan dilanjutkan kode yang menunjukkan bahwa dibatalkan.

function cancelAction(name: string, msg?: TextOrMessageType, options?: ICancelActionOptions)

Parameter

name

string

Nama unik untuk menetapkan tindakan.

msg
TextOrMessageType

(Opsional) pesan untuk mengirim pengguna sebelum membatalkan dialog.

options
ICancelActionOptions

(Opsional) opsi yang digunakan untuk mengonfigurasi tindakan. Jika cocok ditentukan, tindakan akan mendengarkan pengguna untuk mengucapkan kata atau frasa yang memicu tindakan, jika tidak, tindakan perlu terikat ke tombol menggunakan CardAction.dialogAction() untuk memicu tindakan.

Mengembalikan

clone(ActionSet)

Mengembalikan klon dari ActionSet yang ada.

function clone(copyTo?: ActionSet)

Parameter

copyTo
ActionSet

Instans (Opsional) untuk menyalin objek saat ini. Jika kehilangan instans baru akan dibuat.

Mengembalikan

customAction(IDialogActionOptions)

Mengikat tindakan kustom ke dialog yang akan memanggil handler onSelectAction saat dipicu.

function customAction(options: IDialogActionOptions)

Parameter

options
IDialogActionOptions

Opsi yang digunakan untuk mengonfigurasi tindakan. Jika cocok ditentukan, tindakan akan mendengarkan pengguna untuk mengucapkan kata atau frasa yang memicu tindakan. Logika pencocokan kustom dapat disediakan menggunakan onFindAction.

Mengembalikan

dialogInterrupted(Session, string, any)

Dipanggil ketika dialog akar sedang terganggu oleh dialog lain. Ini memberikan dialog yang sedang terganggu kesempatan untuk menjalankan logika kustom sebelum dihapus dari tumpukan. Dialog itu sendiri bertanggung jawab untuk menghapus tumpukan dialog dan memulai dialog baru.

function dialogInterrupted(session: Session, dialogId: string, dialogArgs: any)

Parameter

session
Session

Objek sesi untuk percakapan saat ini.

dialogId

string

ID dialog yang harus dimulai.

dialogArgs

any

Argumen yang harus diteruskan ke dialog baru.

dialogResumed<T>(Session, IDialogResult<T>)

Dialog anak telah berakhir dan dialog saat ini sedang dilanjutkan.

function dialogResumed<T>(session: Session, result: IDialogResult<T>)

Parameter

session
Session

Objek sesi untuk percakapan saat ini.

result

IDialogResult<T>

Hasil yang dikembalikan oleh dialog turunan.

endConversationAction(string, TextOrMessageType, ICancelActionOptions)

Mengikat tindakan yang akan mengakhiri percakapan dengan pengguna saat dipicu.

function endConversationAction(name: string, msg?: TextOrMessageType, options?: ICancelActionOptions)

Parameter

name

string

Nama unik untuk menetapkan tindakan.

msg
TextOrMessageType

(Opsional) pesan untuk mengirim pengguna sebelum mengakhiri percakapan.

options
ICancelActionOptions

(Opsional) opsi yang digunakan untuk mengonfigurasi tindakan. Jika cocok ditentukan, tindakan akan mendengarkan pengguna untuk mengucapkan kata atau frasa yang memicu tindakan, jika tidak, tindakan perlu terikat ke tombol menggunakan CardAction.dialogAction() untuk memicu tindakan.

Mengembalikan

findActionRoutes(IRecognizeDialogContext, (err: Error, results: IRouteResult[]) => void)

Dipanggil selama Library.findRoutes() memanggil setiap dialog pada tumpukan untuk menentukan apakah salah satu tindakan dialog dipicu oleh ucapan pengguna.

function findActionRoutes(context: IRecognizeDialogContext, callback: (err: Error, results: IRouteResult[]) => void)

Parameter

context
IRecognizeDialogContext

Konteks pesan masuk serta dialogdata untuk dialog yang dievaluasi.

callback

(err: Error, results: IRouteResult[]) => void

Berfungsi untuk memanggil dengan rute kandidat teratas.

formatMessage(Session, TextType, TextType, (err: Error, msg: IMessage) => void)

Membuat pesan yang akan dikirim untuk perintah. Ini dipanggil secara otomatis oleh sendPrompt() sehingga dalam banyak kasus Anda ingin mendaftarkan onFormatMessage() handler untuk menyesuaikan pesan yang dikirim untuk perintah. Anda seharusnya hanya perlu memanggil metode ini jika Anda menerapkan logika sendPrompt() Anda sendiri.

function formatMessage(session: Session, text: TextType, speak: TextType, callback: (err: Error, msg: IMessage) => void)

Parameter

session
Session

Objek sesi untuk percakapan saat ini.

text
TextType

Teks prompt/retryPrompt saat ini.

speak
TextType

SSML speak/retrySpeak saat ini. Nilai ini mungkin null.

callback

(err: Error, msg: IMessage) => void

Fungsi untuk menerima pesan yang dibuat.

gettext(Session, TextType, string)

Mengembalikan teks untuk perintah yang telah dilokalkan menggunakan namespace pemanggil perintah.

static function gettext(session: Session, text: TextType, namespace?: string)

Parameter

session
Session

Sesi saat ini untuk percakapan.

text
TextType

Minta untuk melokalisasi.

namespace

string

(Opsional) namespace pustaka yang digunakan untuk melokalisasi perintah. Secara default namespace pemanggil perintah akan digunakan.

Mengembalikan

string

matches(RegExp | string, string | IDialogWaterfallStep[] | IDialogWaterfallStep, any)

Memanggil handler ketika niat tertentu terdeteksi dalam ucapan pengguna. Untuk niat berbasis , niat dapat berupa niat yang dikembalikan oleh recognizer() yang terdaftar untuk perintah atau dapat menjadi niat yang mengalir dari recognizer() global.

CATATAN: Detail lengkap kecocokan, termasuk daftar niat & entitas yang terdeteksi, akan diteruskan ke args langkah atau dialog air terjun pertama yang dimulai.

function matches(intent: RegExp | string, dialogId: string | IDialogWaterfallStep[] | IDialogWaterfallStep, dialogArgs?: any)

Parameter

intent

RegExp | string

  • niat :{RegExp} - Ekspresi reguler yang akan dievaluasi untuk mendeteksi niat pengguna.
  • niat :{string} - Niat bernama yang dikembalikan oleh plugin IIntentRecognizer yang akan digunakan untuk mencocokkan niat pengguna.
dialogId

string | IDialogWaterfallStep[] | IDialogWaterfallStep

  • dialogId: _{string} - ID dialog yang akan dimulai saat niat dicocokkan.
  • dialogId:{IDialogWaterfallStep[]} - Air terjun langkah-langkah untuk dijalankan saat niat dicocokkan.
  • dialogId:{IDialogWaterfallStep} - Air terjun langkah tunggal untuk dijalankan saat niat dicocokkan. Memanggil perintah bawaan atau memulai dialog baru akan mengakibatkan dialog saat ini berakhir setelah menyelesaikan permintaan/dialog anak.
dialogArgs

any

Argumen (Opsional) untuk meneruskan dialog yang dimulai saat dialogId adalah {string}.

Mengembalikan

matchesAny(RegExp[] | string[], string | IDialogWaterfallStep[] | IDialogWaterfallStep, any)

Memanggil handler ketika salah satu niat yang diberikan terdeteksi dalam ucapan pengguna. Untuk niat berbasis , niat dapat berupa niat yang dikembalikan oleh recognizer() yang terdaftar untuk perintah atau dapat menjadi niat yang mengalir dari recognizer() global.

CATATAN: Detail lengkap kecocokan, termasuk daftar niat & entitas yang terdeteksi, akan diteruskan ke args langkah atau dialog air terjun pertama yang dimulai.

function matchesAny(intent: RegExp[] | string[], dialogId: string | IDialogWaterfallStep[] | IDialogWaterfallStep, dialogArgs?: any)

Parameter

intent

RegExp[] | string[]

  • niat :{RegExp[]} - Array ekspresi reguler yang akan dievaluasi untuk mendeteksi niat pengguna.
  • niat :{string[]} - Array niat bernama yang dikembalikan oleh plugin IIntentRecognizer yang akan digunakan untuk mencocokkan niat pengguna.
dialogId

string | IDialogWaterfallStep[] | IDialogWaterfallStep

  • dialogId: _{string} - ID dialog yang akan dimulai saat niat dicocokkan.
  • dialogId:{IDialogWaterfallStep[]} - Air terjun langkah-langkah untuk dijalankan saat niat dicocokkan.
  • dialogId:{IDialogWaterfallStep} - Air terjun langkah tunggal untuk dijalankan saat niat dicocokkan. Memanggil perintah bawaan atau memulai dialog baru akan mengakibatkan dialog saat ini berakhir setelah menyelesaikan permintaan/dialog anak.
dialogArgs

any

Argumen (Opsional) untuk meneruskan dialog yang dimulai saat dialogId adalah {string}.

Mengembalikan

onFormatMessage((session: Session, text: TextType, speak: TextType, callback: (err: Error, message?: IMessage) => void) => void)

Mendaftarkan handler yang akan dipanggil untuk membuat IMessage keluar yang akan dikirim untuk perintah. Handler ini hanya dipanggil ketika prompt/retryPrompt saat ini berjenis string|string[]. Setiap kali prompt/retryPrompt adalah IMessage|IIsMessage pesan yang dikonfigurasi digunakan sehingga handler Anda tidak akan dipanggil. Beberapa handler dapat didaftarkan dan handler pertama yang memanggil callback() dengan pesan akan digunakan. Memanggil callback(null, null) akan menyebabkan pemrosesan berpindah ke handler berikutnya dalam rantai.

function onFormatMessage(handler: (session: Session, text: TextType, speak: TextType, callback: (err: Error, message?: IMessage) => void) => void)

Parameter

handler

(session: Session, text: TextType, speak: TextType, callback: (err: Error, message?: IMessage) => void) => void

Fungsi yang akan dipanggil untuk membuat IMessage untuk perintah saat ini. Panggil callback() dengan pesan atau null untuk melanjutkan pemrosesan.

Mengembalikan

Prompt<any>

onPrompt((session: Session, next: Function) => void)

Mendaftarkan handler yang akan dipanggil setiap kali perintah akan mengirim pesan kepada pengguna. Anda dapat menggunakan hook ini untuk mengimplementasikan logika pengiriman prompt kustom Anda sendiri. Beberapa handler dapat didaftarkan dan memanggil next() akan memanggil handler berikutnya dalam rantai. Handler akhir melakukan logika default perintah yaitu membuat pesan baru menggunakan formatMessage() lalu mengirimkannya.

function onPrompt(handler: (session: Session, next: Function) => void)

Parameter

handler

(session: Session, next: Function) => void

Fungsi yang akan dipanggil kapan saja sendPrompt() dipanggil.

Mengembalikan

Prompt<any>

onRecognize((context: IRecognizeDialogContext, callback: (err: Error, score: number, response?: any) => void) => void)

Mendaftarkan handler yang akan dipanggil setiap kali prompt menerima balasan dari pengguna. Handler callback() dapat digunakan untuk mengembalikan skor keyakinan bahwa ia memahami input pengguna serta nilai yang harus dikembalikan ke pemanggil prompt. Memanggil callback(null, 1.0, true); akan menunjukkan keyakinan tinggi bahwa pengguna menjawab perintah dan akan mengembalikan boolean benar sebagai respons dari prompt. Jenis respons apa pun dimungkinkan, termasuk objek. Memanggil callback(null, 0.0); menunjukkan bahwa input pengguna tidak dipahami sama sekali dan bahwa mereka harus diminta kembali.

Beberapa handler dapat didaftarkan dan tidak seperti jenis handler lainnya, semua yang terdaftar akan dipanggil dan handler yang memberikan skor keyakinan tertinggi akan dipilih sebagai pemenang. Saat menyesuaikan salah satu jenis perintah bawaan, Anda sering ingin menonaktifkan logika pengenal default perintah. Ini dapat dicapai dengan mengatur fitur perintah saat Anda membuatnya. Perlu diingat bahwa jika Anda sepenuhnya menonaktifkan logika pengenal default perintah, Anda harus melakukan semua pengenalan sendiri.

function onRecognize(handler: (context: IRecognizeDialogContext, callback: (err: Error, score: number, response?: any) => void) => void)

Parameter

handler

(context: IRecognizeDialogContext, callback: (err: Error, score: number, response?: any) => void) => void

Fungsi yang akan dipanggil untuk mengenali pengguna membalas permintaan.

Mengembalikan

Prompt<any>

recognize(IRecognizeDialogContext, (err: Error, result: IRecognizeResult) => void)

Mengurai ucapan pengguna dan menetapkan skor dari 0,0 - 1,0 yang menunjukkan seberapa yakin dialognya adalah bahwa ia memahami ucapan pengguna. Metode ini selalu dipanggil untuk dialog aktif pada tumpukan. Skor 1.0 akan menunjukkan kecocokan yang sempurna dan mengakhiri pengenalan lebih lanjut. Ketika skor kurang dari 1,0, setiap dialog pada tumpukan akan memiliki metode recognizeAction() yang dipanggil juga untuk melihat apakah ada tindakan bernama yang terikat ke dialog yang lebih cocok dengan ucapan pengguna. Tindakan global yang terdaftar di tingkat bot juga akan dievaluasi. Jika dialog memiliki skor yang lebih tinggi maka tindakan terikat apa pun, dialog metode replyReceived() akan dipanggil dengan objek hasil yang dikembalikan dari panggilan recognize(). Ini memungkinkan dialog meneruskan data tambahan yang dikumpulkan selama fase kenali ke metode replyReceived() untuk penanganan.

Jika ada tindakan dengan skor yang lebih tinggi, maka dialog tindakan akan dipanggil alih-alih metode dialog replyReceived(). Dialog akan tetap berada di tumpukan dan dapat dilanjutkan pada titik tertentu jika tindakan memanggil dialog baru sehingga dialog harus bersiap untuk panggilan tak terduga ke dialogresumed() .

function recognize(context: IRecognizeDialogContext, callback: (err: Error, result: IRecognizeResult) => void)

Parameter

context
IRecognizeDialogContext

Konteks permintaan.

callback

(err: Error, result: IRecognizeResult) => void

Berfungsi untuk memanggil dengan hasil pengenalan.

recognizer(IIntentRecognizer)

Menambahkan plugin recognizer baru ke Prompt yang akan dijalankan setiap kali pengguna membalas permintaan.

function recognizer(plugin: IIntentRecognizer)

Parameter

plugin
IIntentRecognizer

Pengenal yang akan ditambahkan.

Mengembalikan

reloadAction(string, TextOrMessageType, IBeginDialogActionOptions)

Mengikat tindakan ke dialog yang akan menyebabkan dialog dimuat ulang kapan saja dipicu. Ini berguna untuk mengimplementasikan logika yang menangani ucapan pengguna seperti "startover".

function reloadAction(name: string, msg?: TextOrMessageType, options?: IBeginDialogActionOptions)

Parameter

name

string

Nama unik untuk menetapkan tindakan.

msg
TextOrMessageType

(Opsional) pesan untuk mengirim pengguna sebelum memuat ulang dialog.

options
IBeginDialogActionOptions

(Opsional) opsi yang digunakan untuk mengonfigurasi tindakan. Jika cocok ditentukan, tindakan akan mendengarkan pengguna untuk mengucapkan kata atau frasa yang memicu tindakan, jika tidak, tindakan perlu terikat ke tombol menggunakan CardAction.dialogAction() untuk memicu tindakan. Anda juga dapat menggunakan dialogArg untuk meneruskan param tambahan ke dialog saat dimuat ulang.

Mengembalikan

replyReceived(Session, IRecognizeResult)

Memproses pesan yang diterima dari pengguna. Dipanggil oleh sistem dialog.

function replyReceived(session: Session, recognizeResult?: IRecognizeResult)

Parameter

session
Session

Objek sesi untuk percakapan saat ini.

recognizeResult
IRecognizeResult

selectActionRoute(Session, IRouteResult)

Memilih rute yang memiliki skor keyakinan tertinggi untuk ucapan tersebut.

function selectActionRoute(session: Session, route: IRouteResult)

Parameter

session
Session

Objek sesi untuk percakapan saat ini.

route
IRouteResult

Hasil yang dikembalikan dari panggilan ke findActionRoutes().

sendPrompt(Session)

Mengirim permintaan kepada pengguna untuk giliran saat ini. Ini dapat dipanggil dari handler [matches()][#matches] untuk mengirim prompt/reprompt secara manual kepada pengguna. Untuk memaksa pengiriman perintah awal, Anda harus mengatur session.dialogData.turns = 0; sebelum memanggil sendPrompt().

function sendPrompt(session: Session)

Parameter

session
Session

Objek sesi untuk percakapan saat ini.

triggerAction(ITriggerActionOptions)

Mengikat tindakan ke dialog yang akan membuatnya menjadi dialog aktif kapan saja dipicu. Perilaku default adalah mengganggu dialog yang ada dengan menghapus tumpukan dan memulai dialog di akar tumpukan. Dialog yang terganggu dapat mencegat gangguan ini dengan menambahkan kustom onInterrupted handler ke opsi tindakan pemicunya. Selain itu, Anda dapat menyesuaikan cara dialog yang dipicu dimulai dengan menyediakan kustom onSelectAction handler ke opsi tindakan pemicu Anda.

function triggerAction(options: ITriggerActionOptions)

Parameter

options
ITriggerActionOptions

Opsi yang digunakan untuk mengonfigurasi tindakan.

Mengembalikan