/// <summary> /// Initializes a new instance of the <see cref="FaqPlusPlusBot"/> class. /// </summary> /// <param name="configurationProvider">Configuration Provider.</param> /// <param name="microsoftAppCredentials">Microsoft app credentials to use.</param> /// <param name="ticketsProvider">Tickets Provider.</param> /// <param name="qnaServiceProvider">Question and answer maker service provider.</param> /// <param name="optionsAccessor">A set of key/value application configuration properties for FaqPlusPlus bot.</param> /// <param name="logger">Instance to send logs to the Application Insights service.</param> /// <param name="smeBot">Instance of SME bot to handle actions on old cards sent with old bot version.</param> public UserActivityHandler( IConfigurationDataProvider configurationProvider, MicrosoftAppCredentials microsoftAppCredentials, ITicketsProvider ticketsProvider, IQnaServiceProvider qnaServiceProvider, IOptionsMonitor <BotSettings> optionsAccessor, ILogger <UserActivityHandler> logger, SmeActivityHandler smeBot) : base(configurationProvider, microsoftAppCredentials, ticketsProvider, qnaServiceProvider, optionsAccessor.CurrentValue, logger) { this.smeBot = smeBot; this.expertTeamNameCache = new MemoryCacheWithPolicy <string>(); }
/// <summary> /// Initializes a new instance of the <see cref="BotController"/> class. /// </summary> /// <param name="adapter">Bot adapter.</param> /// <param name="userBot"> User Bot Interface.</param> /// <param name="smeBot"> SME Bot Interface.</param> public BotController(IBotFrameworkHttpAdapter adapter, UserActivityHandler userBot, SmeActivityHandler smeBot) { this.adapter = adapter; this.userBot = userBot; this.smeBot = smeBot; }