Пример #1
0
        /// <summary>
        /// Callback called by LinphoneManager when a message is received.
        /// </summary>
        public void MessageReceived(LinphoneChatMessage message)
        {
            MessagesList.Dispatcher.BeginInvoke(() =>
            {
                IncomingChatBubble bubble = new IncomingChatBubble(message);
                bubble.MessageDeleted += bubble_MessageDeleted;
                bubble.DownloadImage += bubble_DownloadImage;
                MessagesList.Children.Insert(MessagesList.Children.Count - 1, bubble);

                if (chatRoom != null)
                {
                    chatRoom.MarkAsRead();
                }

                scrollToBottom();
            });
        }
Пример #2
0
 private void DisplayPastMessages(IList<Object> messages)
 {
     foreach (LinphoneChatMessage message in messages)
     {
         if (!message.IsOutgoing)
         {
             IncomingChatBubble bubble = new IncomingChatBubble(message);
             bubble.MessageDeleted += bubble_MessageDeleted;
             bubble.DownloadImage += bubble_DownloadImage;
             MessagesList.Children.Insert(MessagesList.Children.Count - 1, bubble);
         }
         else
         {
             OutgoingChatBubble bubble = new OutgoingChatBubble(message);
             bubble.MessageDeleted += bubble_MessageDeleted;
             bubble.UpdateStatus(message.State);
             MessagesList.Children.Insert(MessagesList.Children.Count - 1, bubble);
         }
     }
     scrollToBottom();
 }