private void Client_OnMessageReceived(SignalrUser user) { Device.BeginInvokeOnMainThread(() => { model.Add(user); }); }
public void Connect(string _username, string roomname) { Connection = new HubConnection(url, new Dictionary <string, string> { { "username", _username } } ); Connection.StateChanged += Connection_StateChanged; ChatHubProxy = Connection.CreateHubProxy("ChatHub"); ConnectedUser.Ids.Add(Connection.ConnectionId); ChatHubProxy.On <string, string>("MessageReceived", (username, message) => { var user = new SignalrUser { username = username, message = message, }; OnMessageReceived?.Invoke(user); }); Start().ContinueWith(task => { if (task.IsFaulted) { ConnectionError.Invoke(); } }); }
public void MesajGonder() { SignalrUser item = new SignalrUser(); client.SendMessagePrivate(_username, txtMessage.Text); txtMessage.Focus(); this.BindingContext = model; }
private void Client_OnMessageReceived(SignalrUser user) { List <MessagesPageViewModel> vModels = new List <MessagesPageViewModel>(); Device.BeginInvokeOnMainThread(() => { if (!user.message.Contains("Connected!") && !user.message.Contains("Reconnected!") && !user.message.Contains("undefined") && !user.message.Contains("Disconnected!")) { FillChannels(); } }); }
public ChatqViewModel() { ListMessages = new ObservableRangeCollection <SignalrUser>(); SendCommand = new Command(() => { if (!String.IsNullOrWhiteSpace(OutText)) { var messageq = new SignalrUser { message = OutText, IsTextIn = false, MessageDateTime = DateTime.Now }; ListMessages.Add(messageq); OutText = ""; } }); }
public ItemsPageViewModel(Item item = null) { ListMessages = new ObservableRangeCollection <SignalrUser>(); SendCommand = new Command(() => { if (!String.IsNullOrWhiteSpace(OutText)) { var _messageq = new SignalrUser() { message = OutText, IsTextIn = true, MessageDateTime = DateTime.Now }; ListMessages.Add(_messageq); OutText = ""; _page.MesajGonder(); } }); }
private void Client_OnMessageReceived(SignalrUser user) { model.Add(user); vm.ListMessages.Add(user); }
private void Client_OnMessageReceived(SignalrUser user) { Device.BeginInvokeOnMainThread(() => { if (!user.message.Contains("Connected!") && !user.message.Contains("Reconnected!") && !user.message.Contains("undefined") && !user.message.Contains("Disconnected!")) { if (user.username == currentUser.Email) // EĞER GELEN MESAJ BENİM İSE { if (LastMessageOwnerId == currentUser.Id) { ChatPageViewModel chatPageViewModel = new ChatPageViewModel() { isMyMessage = true, Message = user.message, SendingTime = DateTime.Now, isUserChangingPoint = false, SenderUser = currentUser }; //ChatPageViewModels.Add(new ChatPageViewModel() //{ // isMyMessage = true, // Message = user.message, // SendingTime = DateTime.Now, // isUserChangingPoint = false, // SenderUser = currentUser //}); ChatPageViewModels.Add(chatPageViewModel); } else { ChatPageViewModel chatPageViewModel = new ChatPageViewModel() { isMyMessage = true, Message = user.message, SendingTime = DateTime.Now, isUserChangingPoint = true, SenderUser = currentUser }; //ChatPageViewModels.Add(new ChatPageViewModel() //{ // isMyMessage = true, // Message = user.message, // SendingTime = DateTime.Now, // isUserChangingPoint = true, // SenderUser = currentUser //}); ChatPageViewModels.Add(chatPageViewModel); } LastMessageOwnerId = currentUser.Id; } else // EĞER GELEN MESAJ BENİM DEĞİL İSE { if (user.username == messagesPageViewModel.otherUserEmail) { if (LastMessageOwnerId == messagesPageViewModel.OtherUser.Id) { ChatPageViewModel chatPageViewModel = new ChatPageViewModel() { isMyMessage = false, Message = user.message, SendingTime = DateTime.Now, isUserChangingPoint = false, SenderUser = messagesPageViewModel.OtherUser }; ChatPageViewModels.Add(chatPageViewModel); } else { ChatPageViewModel chatPageViewModel = new ChatPageViewModel() { isMyMessage = false, Message = user.message, SendingTime = DateTime.Now, isUserChangingPoint = true, SenderUser = messagesPageViewModel.OtherUser }; ChatPageViewModels.Add(chatPageViewModel); } LastMessageOwnerId = messagesPageViewModel.OtherUser.Id; } } colMessages.ItemsSource = null; colMessages.ItemsSource = ChatPageViewModels; colMessages.ScrollTo(ChatPageViewModels.Last(), -1, ScrollToPosition.End, true); } }); }