private static void AddValue(object sender, MsgHandlerEventArgs e) { _log.LogInfo(DateTime.Now.TimeOfDay.ToString()); var message = MessageSerializer.Deserializer <AddValueCommand>(e.Message.Data); var value = message.Value; var optionsBuilder = new DbContextOptionsBuilder <TemplateContext>(); optionsBuilder.UseSqlServer(Config.CONNECTION_STRING); try { using (var context = new TemplateContext(optionsBuilder.Options)) { _valueRepository = new ValueRepository(context, _log); var valueToInsert = new Value() { Description = value }; var insertTask = _valueRepository.InsertAsync(valueToInsert); insertTask.Wait(); if (insertTask.IsCompletedSuccessfully) { _log.LogInfo($"Processed message: {message.CorrelationId} at {DateTime.Now.TimeOfDay}"); } else { _log.LogInfo($"Failed to process message: {message.CorrelationId} with value: {value}"); } } } catch (Exception ex) { _log.LogInfo(ex.Message); _log.LogInfo(ex.StackTrace); } }
// Estabelece comunicacao entre o usuario e o SimpleBotUser async Task HandleActivityAsync(Activity activity) { string text = activity.Text; string userFromId = activity.From.Id; string userFromName = activity.From.Name; var message = new SimpleMessage(userFromId, userFromName, text); string response = _bot.Reply(message); await _values.InsertAsync(message); await ReplyUserAsync(activity, response); }