In poche parole:
Ecco alcuni passi (ma si dovrebbe assolutamente seguire la guida che ho linkato):
Fondamentalmente si tratta di una classe che eredita LuisDialog<object>
e si deve mettere un attributo su di esso con il vostro Luis id e segreta
[LuisModel("c413b2ef-382c-45bd-8ff0-f76d60e2a821", "6d0966209c6e4f6b835ce34492f3e6d9")]
[Serializable]
public class SimpleAlarmDialog : LuisDialog<object>
{ [...]
Quindi si aggiunge il metodo alla classe e li si decorano con l'attributo LuisIntent(...)
.
[LuisIntent("builtin.intent.alarm.turn_off_alarm")]
public async Task TurnOffAlarm(IDialogContext context, LuisResult result)
{ [...]
All'interno del metodo, è possibile cercare se un'entità è stato trovato utilizzando un codice come questo:
EntityRecommendation title;
if (result.TryFindEntity(Entity_Alarm_Title, out title))
{
what = title.Entity;
}
else
{
what = DefaultAlarmWhat;
}
Infine, per avviare la finestra di dialogo, è necessario chiamare questa Dentro il controller:
public async Task<Message> Post([FromBody]Message message)
{
if (message.Type == "Message")
{
// return our reply to the user
return await Conversation.SendAsync(message,() => new EchoDialog());
}
else
{
return HandleSystemMessage(message);
}
}
fonte
2016-05-02 10:31:36
Ho trovato questo è un buon articolo: http://www.c-sharpcorner.com/article/an-interactive-bot-application-with-luis-using-microsoft-bot/ – PhuocLe