public OperationResult Whisper(PersonalTextMessage msg) { var e = new ChatEventArgs { CallbackType = CallbackType.ReceiveWhisper, Person = msg.From, Message = msg.Text }; var opResult = new OperationResult(); EventHandler <ChatEventArgs> personTo; lock (SyncObj) { personTo = GetPersonHandler(msg.To.Name); if (personTo == null) { opResult.Success = false; var em = $"Пользователь с именем {msg.To.Name} не найден"; opResult.Errors.Add(new OperationError { ErrorMessage = em }); Logger.Error(em); return(opResult); } } ResetTimer(); personTo.BeginInvoke(this, e, EndAsync, null); // предотвращаем повторное появление персонального сообщения у отправителя if (personTo != _eventHandler) { _eventHandler.BeginInvoke(this, e, EndAsync, null); } Logger.Info("{0} шепнул: {1}", msg.From.Name, msg.Text); opResult.Success = true; return(opResult); }
public void Whisper(PersonalTextMessage msg) { _serviceProxy.Whisper(msg); }
public OperationResult Whisper(PersonalTextMessage msg) { return(ExecuteCommand(proxy => proxy.Whisper(msg))); }