Example #1
0
 public MessageReceivedEventArgs(Message message)
 {
     Message = message;
 }
Example #2
0
        public override void OnMessage(String message)
        {
            lock (messageLock)
            {
                if (string.IsNullOrEmpty(message))
                    return;
             
                Debug.Print("Cybergame message: {0}", message);
                if (message == "o")
                {
                    SendAuth();
                    return;
                }
                if (message.Contains(@"a[""{\""command\"":\"""))
                {
                    try
                    {
                        JArray commands = JArray.Parse( message.Substring(1) );
                        if( commands.Count <= 0 )
                            return;

                        foreach (String strCmd in commands)
                        {

                            JToken cmd = JToken.Parse(strCmd);
                            switch ((String)cmd["command"])
                            {
                                   
                                case "setUI":
                                    {
                                        if (cmd["message"]["write"].ToString().Equals("true",StringComparison.CurrentCultureIgnoreCase))
                                        {
                                            isLoggedIn = true;
                                            if (OnLogin != null)
                                                OnLogin(this, EventArgs.Empty);
                                        }

                                    }
                                    break;
                                case "chatMessage":
                                    {

                                        if( OnChatMessage != null )
                                        {
                                            JToken objMsg = JToken.Parse(cmd["message"].ToString());

                                            if (objMsg == null)
                                                return;

                                            String user = objMsg["from"].ToString();
                                            String text = objMsg["text"].ToString();

                                            var chatMessage = new Message() { message = text, alias = user };
                                            OnChatMessage(this, new MessageReceivedEventArgs(chatMessage));
                                        }
                                    }
                                    break;
                                    default:
                                        Debug.Print("Cybergame unparsed message: " + message);
                                        break;

                            }
                        }
                    }
                    catch( Exception e )
                    {
                        Debug.Print("Cybergame OnMessage error: {0}", e.Message);
                    }
                }
            }
        }