On start event.
$speechRecognition.onstart(function(e){
// onstart
});On error event.
$speechRecognition.error(function(e){
// onerror
});On recognised utterance callback.
$speechRecognition.onUtterance(function(utterance){
console.log(utterance); // buy a milk
});Set recognition language.
$speechRecognition.setLang('en-US');To change language when recognition is already running you need to also restart recognizer:
$speechRecognition.stopListening();
$speechRecognition.listen();Get recognition language.
$speechRecognition.getLang(); // 'en-US'Continue speech recognition after pause caused by ignore(). You don't need user permision again.
$speechRecognition.payAttention();Pause speech recognition.
$speechRecognition.ignore();Start speech recognition. User permission is required.
$speechRecognition.listen();Stop speech recognition.
$speechRecognition.stopListening();Call uterance manually.
$speechRecognition.command('do something');Add listener for task
var task = {
'regex': /^do .+/gi,
'lang': 'en-US',
'call': function(utterance){
// do something with utterance 'do something'
}
};
$speechRecognition.listenUtterance(task);Speak utterance.
$speechSynthetis.speak('Hello there!', 'en-US');Return true after speak() has been called.
$speechSynthetis.justSpoke(); // true or falseManualy mark speechSynthetis voice as recognised. justSpoke will be true.
$speechSynthetis.recognised();Correct speech recognition. After incorrect recognition utterance will be corrected.
Create a key - value pair with incorret recognition, correction and language.
$speechCorrection.addUtterance('to something', 'do something', 'en-US');Remove utterance correction.
$speechCorrection.removeUtterance('to something', 'en-US');Add complete correction map for a language.
var map = {
'to something': 'do something',
'pseudo make me a sandwich': 'sudo make me a sandwich'
};
$speechCorrection.addUtterance('en-US', map);Remove language map.
$speechCorrection.clearLangMap('en-US');Get correction map for all languages.
$speechCorrection.getCorrectionMap();
// {
// 'en-US: {
// 'to something': 'do something',
// 'pseudo make me a sandwich': 'sudo make me a sandwich'
// }
// }Get correction map for a language.
$speechCorrection.getCorrectionMap('en-US');
// {
// 'to something': 'do something',
// 'pseudo make me a sandwich': 'sudo make me a sandwich'
// }Get a single utterance correction.
$speechCorrection.getCorrection('pseudo make me a sandwich', 'en-US'); // 'sudo make me a sandwich'Add listener to html element.
- tasks: configuration object (remove something)
- reference: element reference name (something)
<li ng-repeat="todo in todos | filter:statusFilter track by $index" speechrecognition="{'tasks': recognition['en-US']['listTasks'], 'reference': todo}">
{{todo}}
</li>