← Back to team overview

sikuli-driver team mailing list archive

Re: [Question #193849]: [EXAMPLE] XBMCFlix-o-mate Automating Netflix Silverlight Controls

 

Question #193849 on Sikuli changed:
https://answers.launchpad.net/sikuli/+question/193849

RaiMan posted a new comment:
--- hope you would not take me for a hopeless fool
If anything in my comments (I cannot see that from my view) made you feel that I am thinking this way, than I apologize for that.
In contrary I think, that you managed the situation perfectly with stuff, that is not at the level of a "hopeless fool".

--- needed knowledge for Sikuli
It is always a problem for someone with little experience in scripting (I do not talk about programming here), to manage more complex workflows, that consist of more than a stream of find/wait/click/type actions. Many new bees already have problems with implementing decision trees and/or loops. At least a basic understanding for a scripting language like Python is necessary. But if you are willing to, you might learn that with Sikuli.

--- understanding the basic concept of Sikuli
... is vital, if you want to use it effectively. It is a great convenience, that you can create a click(some_image) with the help of the command bar and that this automatically directed towards the primary screen, but this hides the complexity behind that. It really is: some_region.click(some_image). 
So to help to understand that, you need examples, that differ fundamentally from the scripts, a newbee would create in the IDE, when starting with the IDE.

--- examples
Since Sikuli is a visual tool, setting up examples is very complex stuff. And in most cases, these examples cannot taken as is, since the images might not match in the users environment (getting FindFailed situations is very frustrating, if see it on the screen, but Sikuli does not).
So for a tool like Sikuli you need some interactive tutorial, that would help you to find a way.
The extension Guide was a start in that direction, but the development was stopped last year.

So in the concrete situation multi monitor, the only mentionable thing
is, that you have to say:

Screen(1).find(some_image)

if you know, that something should be on the secondary screen.

--- making scripts that run on different systems/environments
If you try to do that, then you are already on an advanced scripting level (and for more complex things it should be called programming then (using modules, classes, image libraries, system specific stuff, ...)).

--- One last thing
I really dislike statements like
The above is not a criticism.

What else is it? This sounds like excusing yourself upfront for having
your own sight on things, naming faults and suggesting alternatives.
Criticism should always be positive and helpful, but it is needed to
bring things forward. And I think your criticism is positive and
helpful, so lets name it as such.

-- 
You received this question notification because you are a member of
Sikuli Drivers, which is an answer contact for Sikuli.