예제 #1
0
        IActor IStewardManager.GetActor(IStewardDialogContext context, IConversationData conversationData)
        {
            if (conversationData.IsHandled())
            {
                return(new WatsonActor(context, conversationData));
            }

            if (conversationData.IsAskingForOwner())
            {
                return(new OwnerServiceActor(context
                                             , conversationData
                                             , ServiceResolver.Get <ISettings>()
                                             , ServiceResolver.Get <ILogManager>().GetLogger(typeof(OwnerServiceActor))));
            }

            if (conversationData.IsAskingForServiceCloudCase())
            {
                return(new ServiceCloudCaseActor(context
                                                 , conversationData
                                                 , ServiceResolver.Get <ISettings>()
                                                 , ServiceResolver.Get <ILogManager>().GetLogger(typeof(ServiceCloudCaseActor))));
            }

            return(new QnAMakerActor(context));
        }
예제 #2
0
 internal BotDialogActor(IStewardDialogContext context)
 {
     this.context = context;
 }
예제 #3
0
 internal QnAMakerActor(IStewardDialogContext context) : base(context)
 {
 }
예제 #4
0
 internal WatsonActor(IStewardDialogContext context, IConversationData conversationData) : base(context)
 {
     this.conversationData = conversationData;
 }
 public ServiceCloudCaseActor(IStewardDialogContext context, IConversationData conversationData, ISettings settings, ILog log) : base(context)
 {
     this.conversationData = conversationData;
     this.settings         = settings;
     this.log = log;
 }
예제 #6
0
 internal OwnerServiceActor(IStewardDialogContext context, IConversationData conversationData, ISettings settings, ILog log) : base(context)
 {
     this.conversationData = conversationData;
     this.settings         = settings;
     this.log = log;
 }