public Task ReadAllAsync() { if (!IsConversationStarted()) { return(Task.CompletedTask); } //only if there are texts requested if (_subscriptions.Keys .Select(k => k.StartsWith("zenBot")) .Any()) { //do chit-chat if (_isTellBotLast) { var messageToSend = _tellBot.GetLastAnwer(); if (new Random().Next(100) > 80) { messageToSend = new ZenBotMessage() { Message = new ZenonFacts().GetRandomMessage() } } ; _askBot.GetNewAnswer(messageToSend); } else { var messageToSend = _askBot.GetLastAnwer(); if (new Random().Next(100) > 80) { messageToSend = new ZenBotMessage() { Message = new ZenonQuestions().GetRandomMessage() } } ; _tellBot.GetNewAnswer(_askBot.GetLastAnwer()); } } //map results to subscriptions var keys = _subscriptions.Keys.ToList(); foreach (var key in keys) { if (key == "zenBot_ask_4" && _subscriptions.ContainsKey(key)) { _subscriptions[key] = _tellBot.ZenBotMessageQueue.SentMessages[^ 1]?.Message ?? "";
public ZenBotMessage GetNewAnswer(ZenBotMessage message) { ZenBotMessageQueue.SendMessage(message); return(ZenBotMessageQueue.GetLastMessage()); }