private static async Task AddQnAKeywordPairs(ApplicationDbContext context, ChatbotKeywordOptions keywordOptions) { List <QnAKeywordPair> pairs = new List <QnAKeywordPair>(); QnAKeywordPair routeToChatWorker = new QnAKeywordPair { Query = "Jeg ønsker å settes over til et menneske", Answer = keywordOptions.RouteToChatWorker }; pairs.Add(routeToChatWorker); QnAKeywordPair routeToChatWorker2 = new QnAKeywordPair { Query = "Jeg ønsker kontakt med kundesenter", Answer = keywordOptions.RouteToChatWorker }; pairs.Add(routeToChatWorker2); QnAKeywordPair routeToChatWorker3 = new QnAKeywordPair { Query = "Jeg vil snakke med en person", Answer = keywordOptions.RouteToChatWorker }; pairs.Add(routeToChatWorker3); QnAKeywordPair exit = new QnAKeywordPair { Query = "Forlat chat", Answer = keywordOptions.Exit }; pairs.Add(exit); QnAKeywordPair exit2 = new QnAKeywordPair { Query = "Avslutt samtale", Answer = keywordOptions.Exit }; pairs.Add(exit2); QnAKeywordPair exit3 = new QnAKeywordPair { Query = "Avslutt chatbot", Answer = keywordOptions.Exit }; pairs.Add(exit3); await context.AddRangeAsync(pairs); await context.SaveChangesAsync(); }
/* * // Keep track of all users in queue to chat with a chat-worker * private static ConcurrentQueue<int> _queue = new ConcurrentQueue<int>(); * private static ConcurrentDictionary<string, int> _inQueue = new ConcurrentDictionary<string, int>(); */ //private static ChatQueue _fullChatQueue = new ChatQueue(); //IEnumerable<ChatGroup> _allChatGroups; //IEnumerable<ChatQueue> _allChatQueues; public ChatHub(IChatRepository chatRepository, IChatbotRepository chatbotRepository, IChatBot chatBot, UserManager <ApplicationUser> userManager, IOptions <RoleOptions> roleOptions, IOptions <ChatbotKeywordOptions> keywordOptions) { _chatRepository = chatRepository; _chatBotRepository = chatbotRepository; _chatBot = chatBot; _userManager = userManager; _roleOptions = roleOptions.Value; _keywordOptions = keywordOptions.Value; }