예제 #1
0
파일: Skype.cs 프로젝트: Goz3rr/SkypeSharp
        private void OnNotified(object sender, NotifiedEventArgs e)
        {
            //string[] parts = e.Message.Split(' ');
            //Console.WriteLine(">> Got notified with command " + parts[0]);

            if (e.Message.StartsWith("CHATMESSAGE ")) {
                string data = e.Message.Substring("CHATMESSAGE ".Length);
                string[] split = data.Split(' ');

                if (split[1] == "STATUS") {
                    ChatMessage msg = new ChatMessage(this, split[0]);

                    ChatMessageStatus status;
                    Enum.TryParse(split[2], true, out status);

                    if(OnMessageStatusChanged != null) OnMessageStatusChanged.Invoke(this, msg, status);
                }
            } else if (e.Message.StartsWith("CALL ")) {
                string data = e.Message.Substring("CALL ".Length);
                string[] split = data.Split(' ');

                if (split[1] == "STATUS") {
                    Call call = new Call(this, split[0]);

                    CallStatus status;
                    Enum.TryParse(split[2], true, out status);

                    if(OnCallStatusChanged != null) OnCallStatusChanged.Invoke(this, call, status);
                }
            } else if(e.Message.StartsWith("USER ")) {
                string data = e.Message.Substring("USER ".Length);
                string[] split = data.Split(' ');

                UserStatus status;
                if(Enum.TryParse(split[1], true, out status)) {
                    User user = new User(this, split[0]);

                    if(OnUserStatusChanged != null) OnUserStatusChanged.Invoke(this, user, status, split.Length > 2 ? String.Join(" ", split.Skip(2)) : null);
                } else {
                    Console.WriteLine("can't parse " + data);
                }
            }
        }
예제 #2
0
 private static void skype_MessageStatus(ChatMessage msg,
     TChatMessageStatus status)
 {
     //Console.WriteLine("recv'd msg...    ");
     if (msg.Sender.DisplayName != "" && msg.Sender.DisplayName != " ")
     {
         //if (msg.Sender. != msg.Sender.Handle)
         //{
         //if (msg.Body.IndexOf("/c") == 0)
         //{
         // Remove trigger string and make lower case
         //string command = msg.Body.Remove(0, "/c".Length).ToLower();
         string command = msg.Body;
         text = msg.Body;
         sender = msg.Sender.DisplayName;
         skypename = msg.Sender.Handle;
         // Send processed message back to skype chat window
         //Game.PrintChat(msg.Sender.DisplayName + " says: " + command);
         //Game.PrintChat("Sender: "+msg.Sender.Handle);
         //k.SendMessage(msg.Sender.Handle, msg.Sender.DisplayName +
         //" Says: " + command); //ProcessCommand(command));
         //}
         //}
     }
 }