I agree with Vincent. Your cron expression doesn’t do what you think it does. “0/10 0 0 ? * * *” means every ten seconds starting at second 0 on minute 00 on hour 00 any day, month, or year.
So the cron expression as written will only execute six times between 00:00 and 00:01.
I highly recommend using a cron expression builder if you are not familiar with the syntax.
I think you are missing the correct interpretation of the starting at. Starting at only applies when you have a / (e.g. 0/10 is every ten seconds starting at second 00). Since you don’t have a / for the minutes and hours you don’t have a starting at, you have a “Specific minute/hour”.
That is usually caused when you edit your files over a samba share or using certain text editors. So long as you see a Loading model gazebo.rules following that without other errors everything is fine.
As soon as you see that Loading model log statement the rule is active and will run.
No.
You need to install the demo setup. I think you can do this by changing addons.cfg to use package=demo.
No. There is the Rules docs and Xtend Expressions docs.
Also, when you use VSCode with the openHAB extension you also get automatic completion. So you can type in the name of an object or variable and it will tell you all the methods on that object.
This dot word thing is standard OO syntax and applies across pretty much every OO language I can think of except maybe Objective Lisp. It even applies to C++ when referencing the functions or data members of a Class or Struct.
Imports are almost never needed. You only need imports if you want to use a class that is not in java.lang.* or core openHAB classes.
No, it has to do with the fact that when editing a file over samba two file events get generated when you save a file, one when you are about to save the file and one when saving the file is done. OH uses the file events to know when to reload the file so it gets the first event and tries to read in the file while it is being written resulting in a bad file read. Then it tries again on the second event and reads successfully.