public ActionResult Create(string subject, string predicate, string obj) { _rdfHandler.Create(subject, predicate, obj); var tripletDto = new TripletDto(subject, predicate, obj); _context.Clients.All.ReceiveNewMessage(tripletDto); return(Ok()); }
public async Task ReceiveNewMessage(TripletDto message) { NewMessageHandler handler = NewMessageReceive; if (handler != null) { await handler(message); } }
public Task OnMessage(TripletDto message) { Thread.Sleep(1000); if (message.Subject == Name || message.Predicate != "say") { return(Task.CompletedTask); } Console.WriteLine($"[{Name}] heard: {message.Object}"); var speech = _reader.TryContinue(message.Object); if (speech is not null) { Say(speech.Content); } else if (_reader.IsEnd(message.Object)) { IsEnd.Set(); } return(Task.CompletedTask); }