private void kiosItem_Tapped(object sender, TappedRoutedEventArgs e) { if (gridviewKiosList.SelectedItem != null) { splitviewKios.IsPaneOpen = !splitviewKios.IsPaneOpen; if (KiosVm != null) { KiosVm.SelectedStore = (Kios)gridviewKiosList.SelectedItem; MessageInbox msg = new MessageInbox(KiosVm.SelectedStore.OwnerId, KiosVm.SelectedStore.Username, KiosVm.SelectedStore.Avatar); MessageInboxViewModel.UserChated = msg; ProductVm.GetProductsOfStore(TYPEGET.START); CommentVm.GetCommentOfStore(TYPEGET.START); } gridviewKiosList.SelectedItem = null; } }
public async Task<bool> sendMessage(string message) { try { if (MediateClass.UserVM != null) { //receiverID = (receiverID == -1 || receiverID == 0 || receiverID == MediateClass.UserVM.UserInfo.UserId) ? UserChated : receiverID; receiverID = UserChated.UserID; int userId = MediateClass.UserVM.UserInfo.UserId; string name = MediateClass.UserVM.UserInfo.Username; string avatar = MediateClass.UserVM.UserInfo.Avatar; DateTime inboxDate = DateTime.Now; MessageInbox inbox = new MessageInbox { UserID = receiverID, OwnerID = userId, UserName = name, Avatar = avatar, InboxDate = inboxDate, Content = message }; if (Utilities.Helpers.NetworkHelper.Instance.HasInternetConnection) { if (!isSended) { isSended = true; JToken body = JToken.FromObject(inbox); var result = await App.MobileService.InvokeApiAsync("MessageInboxes", body, HttpMethod.Post, null); if (result.ToString() != "{}") { inbox = result.ToObject<MessageInbox>(); JObject jsonRequest = JObject.FromObject(inbox); Debug.WriteLine("JSON: " + jsonRequest); _socket.Send(jsonRequest); MessageList.Add(inbox); } } } } } catch (Exception ex) { await new MessageDialog(ex.Message.ToString(), "Message!").ShowAsync(); return false; } finally { isSended = false; } return true; }
public void InitSocket() { DispatcherTimer timer = new DispatcherTimer(); timer.Tick += updateMessageListUponReceivingMessage; timer.Interval = new TimeSpan(0, 0, 1); timer.Start(); _socket.On(Socket.EVENT_CONNECT, () => { _socket.Emit("testwp", "hi"); }); _socket.On(Socket.EVENT_MESSAGE, (data) => { JObject received = (JObject)data; receivedMessage = received.ToObject<MessageInbox>(); }); }
private void updateMessageListUponReceivingMessage(object sender, object e) { if (this != null) { if (receivedMessage != null) { //receiverID = receivedMessage.OwnerID; Debug.WriteLine("RECEIVED: " + receivedMessage.Content); MessageList.Add(receivedMessage); if(MediateClass.InboxPage != null) MediateClass.InboxPage.ScrollToBottom(); receivedMessage = null; } } }