/// <summary> /// Adds the message. /// </summary> /// <param name="guid">The GUID.</param> /// <param name="message">The message.</param> public static void AddMessage(Guid guid, VideoBroadcastMessage message) { List<VideoBroadcastMessage> messages; lock (VideoBroadcastMessages) { if (!VideoBroadcastMessages.ContainsKey(guid)) { VideoBroadcastMessages.Add(guid, new List<VideoBroadcastMessage>()); } messages = VideoBroadcastMessages[guid]; messages.Add(message); } }
/// <summary> /// Fetches the messages. /// </summary> /// <param name="guid">The GUID.</param> /// <param name="count">The count.</param> /// <returns></returns> public static VideoBroadcastMessage[] FetchMessages(Guid guid, int count) { VideoBroadcastMessage[] result; List<VideoBroadcastMessage> messages; lock (VideoBroadcastMessages) { if (!VideoBroadcastMessages.ContainsKey(guid)) return null; messages = VideoBroadcastMessages[guid]; result = new VideoBroadcastMessage[messages.Count < count ? messages.Count : count]; messages.CopyTo(messages.Count - result.Length, result, 0, result.Length); } return result; }
public void SendMessageForVideoBroadcast(string videoGuid, string text, string currentUser) { VideoBroadcastMessage message = new VideoBroadcastMessage(); //message.Username = ((PageBase)Page).CurrentUserSession.Username; message.Username = currentUser; message.Message = text;// txtMessage.Text; message.Timestamp = DateTime.Now.Add(Config.Misc.TimeOffset); VideoBroadcast.AddMessage(new Guid(videoGuid), message); //txtMessage.Text = String.Empty; }