Voice commands allow to use Google Now "Ok, Google" commands to control your devices. Please note that this feature is premium only! As Google Now lacks an actual interface, the current implementation uses a workaround to make those voice commands possible. Actually, andFHEM uses the same procedure as Commandr for Google Now.
Please Note: Voice commands is a premium only feature!
Voice commands won't work out of the box. Actually, those commands have to be enabled by you, the user. To make this as easy as possible, you will find a link within the application preferences, linking to Android accessibility page. The link is titled "Voice Commands". To enable voice commands for andFHEM, you have to enable the andFHEM accessibility service. Google Now will afterwards notify andFHEM of every voice command it recognises. AndFHEM can act accordingly.
Please note that a nice UI integration is not possible using the current approach. However, I did my best to make this feature as usable as possible!
Simple "Set" Commands
The most simple command you can use is a command like "set lamp on". AndFHEM will look for a device called lamp containing an available target state called "on". If it finds such a state, an appropriate switch command will be sent. German users may also want to use "schalte" as keyword. As device names are usually too complicated to speak, you can also define an alias and use that one for your voice commands. You may also use eventMaps to make your states more speakable. Please note that device names and states may only consist of one word!
If andFHEM finds more than one matching device (or no matching device at all), the app will tell you. Actually, it will speak out loudly, as long as your speakers are enabled.
Google Now is much better in recognizing sentences instead of just plain words. This is why you can add articles for better voice recognition. As an example, you can say "switch the television on", which will result in "set television on". This also works for German articles.
For starting and stopping devices, andFHEM defines some shortcuts.
For starting you might want to say "start television" (or "start the television"). This will result in "set television on". For starting, you can also say "starte", "beginne", "start", "begin".
For stopping a device you can also say "stop television". The whole list of stop commands includes "stoppe", "stop", "beende", "end".
LightScene devices are some kind of special, as not providing access to scenes with normal setList commands. There's always a scene in between. To make andFHEM's voice commands use LightScene devices, you'll have to specify scenes with names on/off.
See the hooks page for the pronunciation hook. AndFHEM will use that hook to find out the correct spelling. That way, you don't have to change your aliases to the correct pronunciation.