public static void Message(string text, MessageTypeDef type) { if (Messages.AcceptsMessage(text, TargetInfo.Invalid)) { LiveMessage msg = new LiveMessage(text); Messages.Message(msg, type); } }
public ActionResult DeleteConfirmed(int id) { LiveMessage liveMessage = db.LiveMessages.Find(id); db.LiveMessages.Remove(liveMessage); db.SaveChanges(); return(RedirectToAction("Index")); }
public static void Message(string text, GlobalTargetInfo lookTarget, MessageTypeDef type) { if (Messages.AcceptsMessage(text, lookTarget)) { LiveMessage msg = new LiveMessage(text, lookTarget); Messages.Message(msg, type); } }
public void Enqueue(LiveMessage newLiveMessage) { lock (this) { #if DEBUG #else #endif messageQueue.Enqueue(newLiveMessage); } }
private static void Message(LiveMessage msg, MessageTypeDef type) { Messages.liveMessages.Add(msg); while (Messages.liveMessages.Count > 12) { Messages.liveMessages.RemoveAt(0); } if (type.sound != null) { type.sound.PlayOneShotOnCamera(null); } }
public ActionResult Edit([Bind(Include = "id,SenderUserId,ReceiverUserId,DateTime,IP,Message,SeenTime")] LiveMessage liveMessage) { if (ModelState.IsValid) { db.Entry(liveMessage).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.ReceiverUserId = new SelectList(db.Users, "id", "Name", liveMessage.ReceiverUserId); ViewBag.SenderUserId = new SelectList(db.Users, "id", "Name", liveMessage.SenderUserId); return(View(liveMessage)); }
// Update is called once per frame void Update() { if (syncClient != null) { if (syncClient.Running) { while (syncClient.SyncQueue.GetCount() > 0) { byte[] messageBytes = syncClient.SyncQueue.Dequeue(); // 处理消息 LiveMessage msg = LiveMessageManager.ParseMessage(messageBytes); //Debug.Log("msg type=" + msg.type); switch (msg.type) { case LiveMessageConstant.BEV_MESSAGE_TYPE_START: synchronizing = true; break; case LiveMessageConstant.BEV_MESSAGE_TYPE_STOP: synchronizing = false; break; case LiveMessageConstant.BEV_MESSAGE_TYPE_SET_ANCHOR: LiveMessageSetAnchor msgSetAnchor = msg as LiveMessageSetAnchor; // 这里也不能再同步了 synchronizing = false; SetAnchors(msgSetAnchor); // 重置同步消息序号 syncIndex = 0; break; case LiveMessageConstant.BEV_MESSAGE_TYPE_SAVE_ANCHOR: LiveMessageSaveAnchor msgSaveAnchor = msg as LiveMessageSaveAnchor; // 这里也不能再同步了 synchronizing = false; SaveAnchors(msgSaveAnchor); break; case LiveMessageConstant.BEV_MESSAGE_TYPE_DOWNLOAD_ANCHOR: DownloadAnchor(); break; case LiveMessageConstant.BEV_MESSAGE_TYPE_REQUEST_SPATIAL_MAPPING: SendSpatialMapping(); break; } } } } }
private void MessageEvent(string strJson) { LiveMessage lm = JsonUtility.FromJson <LiveMessage>(strJson); UserObjectList.UserObject uo = GetUserObject(lm.userid); if (uo == null) { uo = Add(lm.userid); } SetUserName(uo, lm.username); switch (lm.action) { case "penlight": { Color col = Color.white; switch (lm.message) { case "red": col = Color.red; break; case "magenta": col = Color.magenta; break; case "yellow": col = Color.yellow; break; case "blue": col = Color.blue; break; case "cyan": col = Color.cyan; break; case "green": col = Color.green; break; } SetColor(uo, col); } StartVolumetricLine(uo); break; case "call": CreatePopup(uo, lm.message); break; } }
private void DanmakuMessageHandler(object sender, LiveMessage message) { try { // Dispatch live message with event bus. EventBus.Default.Post(message); } catch (Exception e) { Console.WriteLine(e); throw; } }
// GET: LiveMessage/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } LiveMessage liveMessage = db.LiveMessages.Find(id); if (liveMessage == null) { return(HttpNotFound()); } return(View(liveMessage)); }
// GET: LiveMessage/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } LiveMessage liveMessage = db.LiveMessages.Find(id); if (liveMessage == null) { return(HttpNotFound()); } ViewBag.ReceiverUserId = new SelectList(db.Users, "id", "Name", liveMessage.ReceiverUserId); ViewBag.SenderUserId = new SelectList(db.Users, "id", "Name", liveMessage.SenderUserId); return(View(liveMessage)); }
public ActionResult Create([Bind(Include = "id,SenderUserId,ReceiverUserId,DateTime,IP,Message,SeenTime")] LiveMessage liveMessage) { liveMessage.DateTime = DateTime.Now; liveMessage.IP = Request.UserHostAddress; liveMessage.SeenTime = null; liveMessage.SenderUserId = (int)Session["id"]; if (ModelState.IsValid) { db.LiveMessages.Add(liveMessage); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.ReceiverUserId = new SelectList(db.Users, "id", "Name", liveMessage.ReceiverUserId); return(View(liveMessage)); }
public static bool CollidesWithAnyMessage(Rect rect, out float messageAlpha) { bool result = false; float num = 0f; for (int i = 0; i < Messages.liveMessages.Count; i++) { LiveMessage liveMessage = Messages.liveMessages[i]; if (rect.Overlaps(liveMessage.lastDrawRect)) { result = true; num = Mathf.Max(num, liveMessage.Alpha); } } messageAlpha = num; return(result); }
public static LiveMessage Parse(DanmakuModel model) { var json = model.RawDataJToken; var cmd = json["cmd"].ToString(); var type = (LiveMessage.Type)EnumUtils.FromDescription(typeof(LiveMessage.Type), cmd); LiveMessage liveMessage = null; switch (type) { // case LiveMessage.Type.Danmaku: liveMessage = json.ToObject<DanmakuMessage>(); break; case LiveMessage.Type.Gift: liveMessage = json["data"].ToObject <GiftMessage>(); break; default: break; } return(liveMessage); }
void Update() { if (Input.GetKeyUp("s")) { LiveMessage lm = new LiveMessage() { userid = "unity", username = "******", action = "keypress", message = "s" }; string json = JsonUtility.ToJson(lm); m_ws.Send(json); } if (m_uol != null) { m_uol.Update(); } }
private void CheckMessage() { float realTime = Time.realtimeSinceStartup; if (server != null) { //Debug.Log("Server Listening? " + server.IsListening); if (hololensConnected && !hololensHasInit && !waiting) { // 如果连上了,就开始初始化 SetHololensSynchronize(false); SetAnchorToHololens(true); // 这时需要把传输序列号清空,避免新接入的Hololens的同步消息被忽略 lastSyncIndex = int.MinValue; } while (SyncServer.SyncQueue.GetCount() > 0) { byte[] messageBytes = SyncServer.SyncQueue.Dequeue(); //Debug.Log("receive [" + messageBytes.Length + "] type=" + messageBytes[0]); // 处理消息 LiveMessage msg = LiveMessageManager.ParseMessage(messageBytes); switch (msg.type) { case LiveMessageConstant.BEV_MESSAGE_TYPE_SYNCHRONIZE_ALL: LiveMessageSynchronizeAll syncMsg = msg as LiveMessageSynchronizeAll; DealSyncMessage(syncMsg); break; case LiveMessageConstant.BEV_MESSAGE_TYPE_DOWNLOAD_ANCHOR_FINISH: LiveMessageDownloadFinish downloadFinishMsg = msg as LiveMessageDownloadFinish; waiting = false; if (downloadFinishMsg.result.success) { waitingString = "Download Anchors Success! "; } else { waitingString = downloadFinishMsg.result.errorString; } break; case LiveMessageConstant.BEV_MESSAGE_TYPE_SET_ANCHOR_FINISH: LiveMessageSetAnchorFinish anchorFinishMsg = msg as LiveMessageSetAnchorFinish; spectatorViewVersion = anchorFinishMsg.version; if (spectatorViewVersion < LiveHololens.version) { // SpectatorView版本太低! liveUI.ShowInfoDialog("Spectator View's verion is too old!"); hololensConnected = false; StopHololesServer(); } waiting = false; waitingString = "init OK!"; hololensHasInit = true; // 初始化完成,就先开启位置传输 SetHololensSynchronize(true); break; case LiveMessageConstant.BEV_MESSAGE_TYPE_SAVE_ANCHOR_FINISH: LiveMessageSaveAnchorFinish savehMsg = msg as LiveMessageSaveAnchorFinish; waiting = false; if (savehMsg.result.success) { waitingString = "Save Anchor OK!"; // 初始化完成,就先开启位置传输 // 此功能先取消,因为产生了许多误解 //SetHololensSynchronize(true); } else { waitingString = savehMsg.result.errorString; } break; case LiveMessageConstant.BEV_MESSAGE_TYPE_RESPONSE_SPATIAL_MAPPING: LiveMessageResponseSpatialMapping spatialMsg = msg as LiveMessageResponseSpatialMapping; SetSpatialMapping(spatialMsg); break; } } // 判断是否已经不传输了 if (lastSyncTime >= 0) { if (Time.time - lastSyncTime > syncTimeoutInterval) { hololensStartSynchronize = false; } } } if (useUDP && udpListener != null) { while (udpListener.UdpReceiveQueue.GetCount() > 0) { byte[] messageBytes = udpListener.UdpReceiveQueue.Dequeue(); //Debug.Log(messageBytes.Length + "---" + messageBytes[0]); LiveMessage msg = LiveMessageManager.ParseMessage(messageBytes); if (msg == null) { continue; } switch (msg.type) { case LiveMessageConstant.BEV_MESSAGE_TYPE_SYNCHRONIZE_ALL: LiveMessageSynchronizeAll syncMsg = msg as LiveMessageSynchronizeAll; //Debug.Log("-->"+syncMsg.seq); DealSyncMessage(syncMsg); break; } } } }
public static LiveMessage ParseMessage(byte[] bytes) { LiveMessage msg = null; if (bytes.Length == 0) { Debug.LogError("Error: Message length=0!"); return(msg); } switch (bytes[0]) { case LiveMessageConstant.BEV_MESSAGE_TYPE_START: msg = new LiveMessageStart(); break; case LiveMessageConstant.BEV_MESSAGE_TYPE_STOP: msg = new LiveMessageStop(); break; case LiveMessageConstant.BEV_MESSAGE_TYPE_DOWNLOAD_ANCHOR: msg = new LiveMessageDownload(); break; case LiveMessageConstant.BEV_MESSAGE_TYPE_SET_ANCHOR: msg = new LiveMessageSetAnchor(); break; case LiveMessageConstant.BEV_MESSAGE_TYPE_SYNCHRONIZE_ALL: msg = new LiveMessageSynchronizeAll(); break; case LiveMessageConstant.BEV_MESSAGE_TYPE_DOWNLOAD_ANCHOR_FINISH: msg = new LiveMessageDownloadFinish(); break; case LiveMessageConstant.BEV_MESSAGE_TYPE_SET_ANCHOR_FINISH: msg = new LiveMessageSetAnchorFinish(); break; case LiveMessageConstant.BEV_MESSAGE_TYPE_SAVE_ANCHOR: msg = new LiveMessageSaveAnchor(); break; case LiveMessageConstant.BEV_MESSAGE_TYPE_SAVE_ANCHOR_FINISH: msg = new LiveMessageSaveAnchorFinish(); break; case LiveMessageConstant.BEV_MESSAGE_TYPE_REQUEST_SPATIAL_MAPPING: msg = new LiveMessageRequestSpatialMapping(); break; case LiveMessageConstant.BEV_MESSAGE_TYPE_RESPONSE_SPATIAL_MAPPING: msg = new LiveMessageResponseSpatialMapping(); break; default: Debug.LogError("No such type message!"); return(msg); } try { msg.Deserialize(bytes); } catch (Exception e) { msg = null; Debug.LogError("Parse Message Error! " + e); } return(msg); }
public IFacebookApi Initialize(IFacebookSession session) { AuthToken = string.Empty; #if !SILVERLIGHT InstalledCulture = CultureInfo.InstalledUICulture; #else InstalledCulture = CultureInfo.CurrentUICulture; #endif Session = session; Auth = new Auth(Session); Video = new Video(Session); Marketplace = new Marketplace(Session); Admin = new Admin(Session); Photos = new Photos(Session); Users = new Users(Session); Friends = new Friends(Users, Session); Events = new Events(Session); Groups = new Groups(Session); Notifications = new Notifications(Session); Profile = new Profile(Session); Fbml = new Fbml(Session); Feed = new Feed(Session); Fql = new Fql(Session); LiveMessage = new LiveMessage(Session); Message = new Message(Session); Batch = new Batch(Session); Pages = new Pages(Session); Application = new Application(Session); Data = new Data(Session); Permissions = new Permissions(Session); Connect = new Connect(Session); Comments = new Comments(Session); Stream = new Stream(Session); Status = new Status(Session); Links = new Links(Session); Notes = new Notes(Session); Intl = new Intl(Session); Batch.Batch = Batch; Permissions.Permissions = Permissions; Batch.Permissions = Permissions; Permissions.Batch = Batch; foreach (IRestBase restBase in new IRestBase[] {Auth, Video, Marketplace, Admin, Photos, Users, Friends, Events, Groups, Notifications, Profile, Fbml, Feed, Fql, LiveMessage, Message, Pages, Application, Data, Connect, Comments, Stream, Status, Links, Notes}) { restBase.Batch = Batch; restBase.Permissions = Permissions; } return this; }