public DialogAccessors CreateDialogAccessors(IServiceProvider serviceProvider) { var options = serviceProvider.GetRequiredService <IOptions <BotFrameworkOptions> >().Value; if (options == null) { throw new InvalidOperationException( "BBotFrameworkOptions must be configured prior to setting up the state accessors"); } var conversationState = options.State.OfType <ConversationState>().FirstOrDefault(); if (conversationState == null) { throw new InvalidOperationException( "ConversationState must be defined and added before adding conversation-scoped state accessors."); } var accessors = new DialogAccessors(conversationState) { DialogState = conversationState.CreateProperty <DialogState>(DialogAccessors.DialogStateName), BackPainDemographics = conversationState.CreateProperty <BackPainDemographics>(DialogAccessors.BackPainDemographicsName), }; return(accessors); }
public BackPainDialogFactory( DialogAccessors accessors, IHttpContextAccessor httpAccessor) { _accessors = accessors; var request = httpAccessor.HttpContext.Request; _hostAddress = $"{request.Scheme}://{request.Host}"; }
// Module 2 add accessors to signature public BackMeUp(DialogAccessors accessors, BackPainDialogFactory backPainDialogFactory, ILoggerFactory loggerFactory) { if (loggerFactory == null) { throw new System.ArgumentNullException(nameof(loggerFactory)); } // Module 2 _accessors = accessors; _dialogs = new DialogSet(_accessors.DialogState); _dialogs.Add(backPainDialogFactory.Configure(_dialogs)); _logger = loggerFactory.CreateLogger <BackMeUp>(); _logger.LogTrace("EchoBot turn start."); }
public BackMeUp( LuisRecognizer luis, DialogAccessors accessors, BackPainDialogFactory backPainDialogFactory, HealthOutcomeService healthOutcomeService, ILoggerFactory loggerFactory) { if (loggerFactory == null) { throw new ArgumentNullException(nameof(loggerFactory)); } _luis = luis; _accessors = accessors; _healthOutcomeService = healthOutcomeService; _dialogs = new DialogSet(_accessors.DialogState); _dialogs.Add(backPainDialogFactory.Configure(_dialogs)); ILogger logger = loggerFactory.CreateLogger <BackMeUp>(); logger.LogTrace("EchoBot turn start."); }
public BackPainDialogFactory(DialogAccessors accessors) { _accessors = accessors; }