0
使用PromptDialog我有以下LUIS意圖的實現 -如何提示用戶沒有在微軟機器人框架
[LuisIntent("MyIntent")]
public async Task MyIntent(IDialogContext context, IAwaitable<IMessageActivity> res, LuisResult result)
{
var message = await res;
try
{
await context.PostAsync("I see that you have below options <br/> 1. Do first task <br/> 2. Do second task <br/> 3. Do third task ");
PromptDialog.Text(context, taskdoer, "You can ask me like - <br/>Do task 2<br/>or simply enter 2");
}
catch (Exception e)
{
await context.PostAsync("Error is <br/> " + e.ToString());
context.Wait(MessageReceived);
}
}
而對於taskdoer的定義 -
private async Task taskdoer(IDialogContext context, IAwaitable<string> result)
{
string strTaskNumber = await result;
if (strTaskNumber == "2")
{
await context.PostAsync("So, you have entered " + strTaskNumber);
await context.PostAsync("This is Task 2");
context.Wait(MessageReceived);
}
if (strTaskNumber == "3")
{
await context.PostAsync("So, you have entered " + strTaskNumber);
await context.PostAsync("This is Task 3");
context.Wait(MessageReceived);
}
}
我想什麼來實現的是,沒有使用新的方法 - taskdoer,我怎麼能在MyIntent方法本身中實現taskdoer邏輯,但是用戶提示輸入如taskdoer? 是否有任何方式可以提示用戶不使用Microsoft bot中的PromptDialog?