Exemple #1
0
        public object Convert(object value, Type targetType, object parameter, string language)
        {
            WMMessage message = value as WMMessage;

            if (message == null || !message.isFileMessage())
            {
                return(null);
            }
            WMBaseSession session = WebimController.Instance.RealtimeSession;

            if (session == null)
            {
                session = WebimController.Instance.OfflineSession;
            }
            if (session == null || !IsSupportedImage(message))
            {
                return(null);
            }

            Uri path = session.AttachmentUriForMessage(message);

            switch (message.Status)
            {
            case WMMessage.WMMessageStatus.Sent:
                return(new BitmapImage(path));

            case WMMessage.WMMessageStatus.NotSent:
                return(new BitmapImage(path));
            }
            return(null);
        }
Exemple #2
0
        private void ApplyWMMessage(WMMessage message)
        {
            _webimMessage = message;

            Text      = message.Text;
            TimeStamp = message.Timestamp.ToString(System.Globalization.CultureInfo.InvariantCulture);
        }
 private bool IsSupportedImage(WMMessage message)
 {
     foreach (var item in new List<String>() {".jpeg", ".jpg", ".png", ".bmp"})
     {
         bool isSupportedImage = ContainsAndEndsWithSubstring(message.AttachmentPath, item);
         if (isSupportedImage)
         {
             return true;
         }
     }
     return false;
 }
Exemple #4
0
 private bool IsSupportedImage(WMMessage message)
 {
     foreach (var item in new List <String>()
     {
         ".jpeg", ".jpg", ".png", ".bmp"
     })
     {
         bool isSupportedImage = ContainsAndEndsWithSubstring(message.AttachmentPath, item);
         if (isSupportedImage)
         {
             return(true);
         }
     }
     return(false);
 }
        protected override DataTemplate SelectTemplateCore(object item)
        {
            WMMessage message = item as WMMessage;

            if (message == null)
            {
                return(null);
            }
            switch (message.Kind)
            {
            case WMMessage.WMMessageKind.WMMessageKindVisitor: return(VisitorMessageDataTemplate);

            case WMMessage.WMMessageKind.WMMessageKindFileFromVisitor: return(VisitorImageMessageDataTemplate);

            case WMMessage.WMMessageKind.WMMessageKindOperator: return(OperatorMessageDataTemplate);

            case WMMessage.WMMessageKind.WMMessageKindFileFromOperator: return(OperatorImageMessageDataTemplate);

            default: return(SystemMessageDataTemplate);
            }
        }
        public RealtimeMessagesModel()
        {
            Messages = new ObservableCollection<WMMessage>();
            if (DesignMode.DesignModeEnabled)
            {
                WMMessage fakeMessage = null;
                fakeMessage = new WMMessage();
                fakeMessage.Kind = WMMessage.WMMessageKind.WMMessageKindInfo;
                fakeMessage.Text = "Your pretty realtime chat";
                fakeMessage.Timestamp = DateTime.Now;
                fakeMessage.Ts = 0;
                Messages.Add(fakeMessage);

                fakeMessage = new WMMessage();
                fakeMessage.Kind = WMMessage.WMMessageKind.WMMessageKindOperator;
                fakeMessage.Text = "We are happy to see you here. What can I help you with?";
                fakeMessage.Timestamp = DateTime.Now;
                fakeMessage.Ts = 0;
                fakeMessage.SetSenderDetails("1", "Operator", null);
                Messages.Add(fakeMessage);

                fakeMessage = new WMMessage();
                fakeMessage.Kind = WMMessage.WMMessageKind.WMMessageKindVisitor;
                fakeMessage.Text = "Hello! How about lorem ipsum?";
                fakeMessage.Timestamp = DateTime.Now;
                fakeMessage.Ts = 1;
                Messages.Add(fakeMessage);

                fakeMessage = new WMMessage();
                fakeMessage.Kind = WMMessage.WMMessageKind.WMMessageKindVisitor;
                fakeMessage.Text = "Lorem ipsum dolor sit amet, no sanctus repudiandae his," +
                "ad altera eligendi euripidis has, ex sint adversarium sed. Est animal salutandi sadipscing cu." +
                "Vel minim dolores dissentiunt id. Vim vidit natum eligendi no, quas veritus ut eam.";
                fakeMessage.Timestamp = DateTime.Now;
                fakeMessage.Ts = 1;
                Messages.Add(fakeMessage);
            }
        }
Exemple #7
0
        public RealtimeMessagesModel()
        {
            Messages = new ObservableCollection <WMMessage>();
            if (DesignMode.DesignModeEnabled)
            {
                WMMessage fakeMessage = null;
                fakeMessage           = new WMMessage();
                fakeMessage.Kind      = WMMessage.WMMessageKind.WMMessageKindInfo;
                fakeMessage.Text      = "Your pretty realtime chat";
                fakeMessage.Timestamp = DateTime.Now;
                fakeMessage.Ts        = 0;
                Messages.Add(fakeMessage);

                fakeMessage           = new WMMessage();
                fakeMessage.Kind      = WMMessage.WMMessageKind.WMMessageKindOperator;
                fakeMessage.Text      = "We are happy to see you here. What can I help you with?";
                fakeMessage.Timestamp = DateTime.Now;
                fakeMessage.Ts        = 0;
                fakeMessage.SetSenderDetails("1", "Operator", null);
                Messages.Add(fakeMessage);

                fakeMessage           = new WMMessage();
                fakeMessage.Kind      = WMMessage.WMMessageKind.WMMessageKindVisitor;
                fakeMessage.Text      = "Hello! How about lorem ipsum?";
                fakeMessage.Timestamp = DateTime.Now;
                fakeMessage.Ts        = 1;
                Messages.Add(fakeMessage);

                fakeMessage      = new WMMessage();
                fakeMessage.Kind = WMMessage.WMMessageKind.WMMessageKindVisitor;
                fakeMessage.Text = "Lorem ipsum dolor sit amet, no sanctus repudiandae his," +
                                   "ad altera eligendi euripidis has, ex sint adversarium sed. Est animal salutandi sadipscing cu." +
                                   "Vel minim dolores dissentiunt id. Vim vidit natum eligendi no, quas veritus ut eam.";
                fakeMessage.Timestamp = DateTime.Now;
                fakeMessage.Ts        = 1;
                Messages.Add(fakeMessage);
            }
        }
Exemple #8
0
        private void ApplyWMMessage(WMMessage message)
        {
            _webimMessage = message;

            Text = message.Text;
            TimeStamp = message.Timestamp.ToString(System.Globalization.CultureInfo.InvariantCulture);
        }
Exemple #9
0
 public Message(WMMessage message)
 {
     WebimMessage = message;
 }
Exemple #10
0
 public Message(WMMessage message)
 {
     WebimMessage = message;
 }
 void session_SessionDidReceiveMessage(WMSession session, WMMessage message)
 {
     MaybeReloadMessagesForSession(session);
     RealtimeScrollToLastestMessage(session);
 }