2016-12-07 1 views
1

MessagesController 클래스 외부에서 LUIS 대화 상자를 호출하려고합니다. 내 MessageController 클래스의 루트 대화 상자를 만들 : 내 MessageDialogHandler 클래스에서MessagesController 클래스 외부에서 LUIS Dialog를 호출하는 방법

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

내가 첨부 파일과 텍스트 입력을 처리하고 있습니다. 내가 전화를 관리하는 방법

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

public class LuisDialog : LuisDialog<object> { 

루이스 대화 나의 MessageDialogHandler 클래스 :

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. 
} 

나는 표준 루이스 클래스가? 예이 게시물 Link을 읽었지만 도움이되지 않았습니다.

어떤 아이디어 주셔서 감사합니다.

답변

1

그냥 컨텍스트를 수행하면됩니다. 메시지를 LuisDialog로 전달하십시오.

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

대화 상자 호출 방법에 대한 자세한 내용은 this을 참조하십시오.

+0

고맙습니다.이 작품은 훌륭합니다! – Soeren

+0

신난다. 질문에 답을 표시해주세요. –