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); }
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; }
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); } }
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); } }
public Message(WMMessage message) { WebimMessage = message; }
void session_SessionDidReceiveMessage(WMSession session, WMMessage message) { MaybeReloadMessagesForSession(session); RealtimeScrollToLastestMessage(session); }