The search isn’t very long actually, maybe a bit longer as the system grows though.
For the test case
voice command = “turn on the light in the bedroom upstairs”
# of items = approx 30
top level groups = 5
Search time from receiving command t outputting the most likely item is approx 2 seconds
Here is the rule, I have made a couple changes since I posted it but this is basically it.
As for your function and hurdles…
That is more the type of function I hoped to work towards, it is a little disconcerning hearing of such a delay.
Also, and sorry or my lack of terminology knowledge but I am not 100% sure I get what you mean.
If I understand correctly it sounds like the same issue I was having when my variables where being declared null when the second and third loop would be fired before the first one ever finished (for example). Am I correct in that assumption of your issue?