Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/williamragstad/voicecommander
An expandable tool for voice activated commands with infinite possibilities!
https://github.com/williamragstad/voicecommander
Last synced: 10 days ago
JSON representation
An expandable tool for voice activated commands with infinite possibilities!
- Host: GitHub
- URL: https://github.com/williamragstad/voicecommander
- Owner: WilliamRagstad
- Created: 2020-05-30T16:23:42.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2022-12-08T10:34:34.000Z (almost 2 years ago)
- Last Synced: 2024-05-01T16:06:27.997Z (6 months ago)
- Language: C#
- Size: 38.1 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# VoiceCommander
An expandable tool for voice activated commands with infinite possibilities!# Usage
## Introduction
**VoiceCommander** is a tool that provides fullt customizable, programmable and extendable real-time voice recognition to command execution. It has support for a voice selector if you have multiple voices installed, and therefore configs in different languages. Everything is interpreted in **English** at the moment, but if it is requested this can be broadened.
When you start the program, you are first prompted to select a voice synthesizer and voice recognizer if your system has more than 1 installed. Then all [configs](#Configs) will be loaded. After that, you are good to go! Try to say something from the installed configs command palette.
## Configs
The configurations is located in the `C:\Users\[USERNAME]\AppData\Roaming\VoiceCommander\Configs` folder.
All config files are [JSON](https://en.wikipedia.org/wiki/JSON) formatted and follow the structure below:```json
{
"Name": "Example Title",
"Description": "Example configuration created 2020 by John.",
"Elements": [
{
"Phrase": "Phrase",
"Action": "Action",
"ActionData": [
"Arg1",
"Arg2",
"..."
]
}
],
"Groups": [
{
"Phrase": "Group phrase",
"Elements": [ ],
"Groups": [ ]
}
]
}
```### Elements
Provides a new configuration which holds all data about the voice command.
#### Phrase
Which phrase to be linked with the command. Multiple commands can share phrases which creates a chain of executions.
This must be pronounceable in any language and is combined with any parent group phrases (to create a "sentence").#### Action
This decides which action to be made at execution time, the currently available actions are:
> #### Say
> Say something to audio output.
>
> ActionData: `text`, `text`, `...`.> #### SayRandom
> Say one of a set of random strings.
>
> ActionData: `text`, `text`, `...`.> #### OpenFile
> Opens a file on the local system.
>
> ActionData: `Filepath`.> #### Shell
> Runs a shellcommand as if it was runned from the terminal.
>
> ActionData: `command`, `command`, `...`.> #### PowerShell
> Runs a powershell command as if it was runned from the terminal.
>
> ActionData: `command`, `command`, `...`.> #### SayCode
> Say evaluated C# code result to audio output.
>
> ActionData: `expression`.> #### Code
> Evaluates and runs C# code.
>
> ActionData: `code line`, `code line`, `...`.> #### CodeFileCS
> Evaluates and runs a .cs C# project file.
> File **can** be located in the config folder and referenced using just the file name or relative file paths from there.
>
> ActionData: `source file`.#### ActionData
This is essentially the arguments used by the action. Often the **First** argument is most important to provide.
### Groups
Holds child elements and/or groups, together with any phrases (can be left out).