Library class
用於路由之相關對話的連結庫。 連結庫可以鏈結在一起,以啟用複雜 Bot 的開發。 UniversalCallBot 類別本身是構成此鏈結根目錄的連結庫。 您可以藉由建立新的連結庫實例和新增對話框,來開發可重複使用元件的連結庫,就像您將一樣。 您的連結庫應該具有對應至連結庫網站或 NPM 模組名稱的唯一名稱。 接著,Bot 只要使用通用CallBot.library() UniversalCallBot.library()將元件庫實例新增至其 Bot,即可重複使用您的連結庫實例。 如果您的連結庫本身相依於其他連結庫,您應該使用 Library.library() 將連結庫新增至連結庫作為相依性,。 您可以將版本號碼新增至連結庫名稱,輕鬆地管理連結庫的多個版本。
若要在連結庫 Bot 中叫用對話,則必須呼叫 session.beginDialog(),其格式為 ':' 的完整對話標識符。 您通常會藉由從其模塊公開函式來啟動對話,以隱藏開發人員。
因此,呼叫類似 myLib.someDialog(session, { arg: '' }); 的東西最終會在幕後呼叫 session.beginDialog('myLib:someDialog', args);。
值得注意的是,對話一律會在目前的對話框中叫用,因此一旦您從文檔庫的對話框內,您就不需要在每個 beginDialog() 前面加上您的連結庫名稱來呼叫 。 只有在從某個連結庫內容到另一個連結庫內容時,才需要包含連結庫名稱前置詞。
建構函式
| Library(string) | 建立連結庫的新實例。 |
屬性
| name | 連結庫的唯一名稱。 |
方法
| dialog(string, Dialog | IDialog |
從連結庫註冊或傳回對話框。 |
| find |
搜尋連結庫及其所有相依性中是否有特定對話框。 如果找到,則傳回對話框,否則傳回 null。 |
| library(Library | string) | 註冊或傳回連結庫相依性。 |
建構函式詳細資料
Library(string)
建立連結庫的新實例。
new Library(name: string)
參數
- name
-
string
屬性詳細資料
name
連結庫的唯一名稱。
name: string
屬性值
string
方法詳細資料
dialog(string, Dialog | IDialogWaterfallStep[] | IDialogWaterfallStep)
從連結庫註冊或傳回對話框。
function dialog(id: string, dialog?: Dialog | IDialogWaterfallStep[] | IDialogWaterfallStep)
參數
- id
-
string
要註冊或擷取之對話框的唯一標識碼。
- dialog
(選擇性) 對話框或瀑布式登錄。
- 對話框:{Dialog} - 要新增的對話框。
- 對話框:{IDialogWaterfallStep[]} - 要執行的步驟瀑布。 如需詳細資訊,請參閱 IDialogWaterfallStep。
- 對話框:{IDialogWaterfallStep} - 單一步驟瀑布圖。 呼叫內建提示或啟動新的對話框會導致目前對話框在子提示/對話框完成時結束。
傳回
findDialog(string, string)
搜尋連結庫及其所有相依性中是否有特定對話框。 如果找到,則傳回對話框,否則傳回 null。
function findDialog(libName: string, dialogId: string)
參數
- libName
-
string
包含對話框的連結庫名稱。
- dialogId
-
string
連結庫內對話框的唯一標識符。