Ejemplo n.º 1
0
        private void onMessage(NativeMessagingMessage message)
        {
            if (message.uiy > 0 && message.uix > 0 && message.uiwidth > 0 && message.uiheight > 0)
            {
                // Console.WriteLine("{0} {1},{2} {3},{4} - {5} ", message.functionName, message.uix, message.uiy, message.uiwidth, message.uiheight,  message.xPath);
                if (!string.IsNullOrEmpty(message.data))
                {
                    lastElement = new NMElement(message);
                }
                else
                {
                    lastElement = new NMElement(message);
                }
            }

            if (message.functionName == "click")
            {
                if (recording)
                {
                    if (lastElement == null)
                    {
                        return;
                    }
                    var re = new RecordEvent(); re.Button = Input.MouseButton.Left;
                    var a  = new GetElement {
                        DisplayName = lastElement.ToString()
                    };

                    var selector = new NMSelector(lastElement, null, true);
                    a.Selector   = selector.ToString();
                    a.Image      = lastElement.ImageString();
                    a.MaxResults = 1;

                    re.Selector     = selector;
                    re.a            = new GetElementResult(a);
                    re.SupportInput = lastElement.SupportInput;
                    re.ClickHandled = true;
                    OnUserAction?.Invoke(this, re);
                    return;
                }
                //var getelement = new NativeMessagingMessage("getelement");
                ////getelement.tabid = message.tabid;
                //getelement.cssPath = message.cssPath;
                //getelement.xPath = message.xPath;
                //NativeMessagingMessage subresult = null;
                ////if (message.browser == "chrome") subresult = rpaactivities.nm.nmhook.sendMessageChromeResult(getelement, true);
                ////if (message.browser == "ff") subresult = rpaactivities.nm.nmhook.sendMessageFFResult(getelement, true);
                //if (subresult == null)
                //{
                //    // Console.WriteLine("getelement returned null???");
                //    return;
                //}
                //// Console.WriteLine(getelement.messageid + " " + getelement.functionName + " " + subresult.messageid + " " + subresult.functionName);
                //// Console.WriteLine(subresult.cssPath + " " + subresult.xPath);
                ////rpaactivities.nm.nmhook.sendMessageChromeResult(getelement);
                ////Console.WriteLine(getelement.messageid + " " + getelement.functionName);
            }
        }
Ejemplo n.º 2
0
        private void OnMessage(NativeMessagingMessage message)
        {
            try
            {
                if (message.uiy > 0 && message.uix > 0 && message.uiwidth > 0 && message.uiheight > 0)
                {
                    if (!string.IsNullOrEmpty(message.data))
                    {
                        LastElement = new NMElement(message);
                    }
                    else
                    {
                        LastElement = new NMElement(message);
                    }
                }

                if (message.functionName == "click")
                {
                    if (IsRecording)
                    {
                        if (LastElement == null)
                        {
                            return;
                        }
                        var re = new RecordEvent
                        {
                            Button = Input.MouseButton.Left
                        }; var a = new GetElement {
                            DisplayName = LastElement.ToString()
                        };

                        var selector = new NMSelector(LastElement, null, true, null);
                        a.Selector   = selector.ToString();
                        a.Image      = LastElement.ImageString();
                        a.MaxResults = 1;

                        re.Selector      = selector;
                        re.a             = new GetElementResult(a);
                        re.SupportInput  = LastElement.SupportInput;
                        re.SupportSelect = false;
                        re.ClickHandled  = true;
                        OnUserAction?.Invoke(this, re);
                        return;
                    }
                }
            }
            catch (Exception ex)
            {
                Log.Error(ex.ToString());
            }
        }
Ejemplo n.º 3
0
        private void onMessage(NativeMessagingMessage message)
        {
            if (message.uiy > 0 && message.uix > 0 && message.uiwidth > 0 && message.uiheight > 0)
            {
                // Console.WriteLine("{0} {1},{2} {3},{4} - {5} ", message.functionName, message.uix, message.uiy, message.uiwidth, message.uiheight,  message.xPath);
                if (!string.IsNullOrEmpty(message.data))
                {
                    lastElement = new NMElement(message);
                }
                else
                {
                    lastElement = new NMElement(message);
                }
            }

            if (message.functionName == "click")
            {
                if (recording)
                {
                    if (lastElement == null)
                    {
                        return;
                    }
                    var re = new RecordEvent(); re.Button = Input.MouseButton.Left;
                    var a  = new GetElement {
                        DisplayName = lastElement.ToString()
                    };

                    var selector = new NMSelector(lastElement, null, true);
                    a.Selector   = selector.ToString();
                    a.Image      = lastElement.ImageString();
                    a.MaxResults = 1;

                    re.Selector     = selector;
                    re.a            = new GetElementResult(a);
                    re.SupportInput = lastElement.SupportInput;
                    re.ClickHandled = true;
                    OnUserAction?.Invoke(this, re);
                    return;
                }
            }
        }