Hvordan å ringe en LUIS Dialog utenfor MessagesController klassen

stemmer
1

Jeg vil kalle en LUIS dialog fra utenfor MessagesController klasse. Jeg oppretter en rot Dialog i min MessageController klasse:

 if (activity.Type == ActivityTypes.Message) {
 await Conversation.SendAsync(activity, () => new MessageDialogHandler());

I min MessageDialogHandler klasse jeg håndterer vedlegg og Tekstskriving.

if (activity.Attachments?.Count() > 0) {
            FaceAnalysis faceAnalysis = new FaceAnalysis();
            await faceAnalysis.AnalyseImageAsync(context, argument);
        }
else if(activity.Text.Length > 0) {
//here needs to be the code to call a LUIS dialog.
}

Jeg har en standard LUIS klasse:

[LuisModel(App-ID, SubscriptionKey)]
[Serializable]

public class LuisDialog : LuisDialog<object> {

Hvordan klarer jeg å kalle det LUIS Dialog fra min MessageDialogHandler klasse? Ja jeg leste dette innlegget Link , men det hjalp ikke meg.

Takk for alle ideer.

Publisert på 07/12/2016 klokken 07:45
kilden bruker
På andre språk...                            


1 svar

stemmer
1

Du trenger bare å gjøre en context.Forward av meldingen til LuisDialog.

await context.Forward(
      new LuisDialog(), 
      LuisDialogCompleted, 
      activity, 
      System.Threading.CancellationToken.None);

For å forstå mer rundt hvordan ringe dialoger, se denne .

Svarte 07/12/2016 kl. 09:40
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more