Here is 1.3
The spelling feature uses the phonetic alphabet. (Alpha, Bravo, Charlie) This is really the only way to accurately recognize letters. The spelling command also recognizes "up", "down", "backspace" and other commands. For a complete list look at the spelling phonetic.xml file. You can change any of the values in there to meet your needs. You could change "alpha" to "apples".
The valstr="" is what the program will type, disp="" is what the program will display or speak back to you, and the word between the > < is what the program will listen for.
You can also add more than one word for the same letter. For example "period" and "dot" both display "."
When the spell command is executed, the program will ONLY listen for letters untill you say "finished". The program will then say / display a confirmation.
You can add commands before and after [spell] with no problem. The commands after [spell] will not be executed untill you say "finished".
Other features are:
minimize on start
If you have quetions, I will be on later tonight.
Does this mean we can turn the ini files into the XML format?
Also can you give us a run down of the XML semantics:
1. Can we have many RULE(s)?
2. What is the child l and o elements for?
3. propname is the parent trigger name, do we have to say "letter alpha" letter beta" each time until a "finished" or just "letter alpha beta .... finished"?
4. What's toplevel,export & ID used for?
Sorry you've done all this new functionality and I want to play wiht it! Thanks for the hard work!
<RULE NAME="BSRspelling" toplevel="active" export="TRUE" ID="10">
<p valstr="a" disp="a">alpha</p>
<RULEREF NAME="BSRspelling" />
BTW, can you add a check to make sure BSR has only one instance running currently I can have many running at the same time. Is this functionality you want?
Getting an error when runnng: XVoice.dll not registered or one of its dependencies not installed.
The previous version ran fine.
Ok, its fixed. I used sapi4 to run the talkback feature, but I just switched over to sapi5 (which you already have).
I'm tweaking a few things, and I'll have it posted shortly.
Installed version 1.3 this morning. Survived hibernation! This thing is looking real promising for overall control of multiple apps by voice for me.
I'm having a couple of issues with it (no gripes, by the way, just questions and suggestions for improvements).
1. To get it installed on my car pc, I had to use the api .zip you posted. I may have accidentally installed the earlier version, then the .zip api rather than the later version but I didn't think so. In any case, the talkback feature isn't working. It does work on my laptop, though. However, on the car pc it's silent.
2. The edit/configure feature you've built is terrific. It makes it very easy to build a parent/child combination and does the work for you to open/close spell, etc. However, as I was editing it on my 8" screen, the menu bar was extremely small and very difficult to grab and move around with my finger. I accidentally maximized it and the program crashed. I did it again later and the same thing happened. Also, the layout of the editing features on an 800X600 screen took up too much room and parts of the controls on the far right were just barely visible. Not a big deal as there's plenty of room to squish everything horizontally if you lay it out that way, but I suggest you try editing it on a 7" screen using your finger instead of a mouse. You'll see what I mean.
3. I had a problem launching Centrafuse with the program. I set it up to open the program using the editor and when I tested it, got a launch error. I think this is related to Centrafuse, rather than your program but thought I would report it.
4. On closing FrodoSatelliteX, I had the program set to close "FrodoSat" as a wildcard. It did close it but the XM Direct failed to shut down and continued to play over the PC. Again, probably not a result of your program, but maybe related to the use of wildcard? I presume FrodoSat sends a signal to the XM to shut off when the user quits and your program doesn't trigger that sequence, somehow.
5. Is there a way to "maximize" and minimize the program via voice? I guess it's not that critical if I get the voice feedback to work. I disabled the information balloons in my setup because I got tired of having to clear the "connection lost" bubbles. With the voice not working, I look at the "hypothesis" and "recognition" lines to see if it is working on my request.
It wasn't completely clear to me how to use the spell feature, but I'm still getting my feet wet with program. You've done a great job and I'm looking forward to including it in my regular suite of applications.
Do you have a Paypal donate link? If not, you should get one if you plan to continue to develop the program.
Suggestion: If you're thinking about enhancements, maybe a way to help users know what voice commands are possible by allowing them to ask what prompts are available and it would either read them out or display them on the screen. I can imagine it would be difficult to remember all of the commands for MM, plus all of them for Road Runner, plus all of them for Frodo, etc.
When thinking about how I interact with the computer, I first need to say it's name "iBug" to get it's attention, then the command "Launch Frodoplayer". After that, I don't really think I need to address it by "iBug" again unless some time goes by. So, I'd like to be able to 1) set up sets of commands specific to an app such as Frodoplayer, and also secondary commands that I can call out for each of the functions in the program. Here's an example:
[FrodoPlayer] <---name of app that commands are for
[Music] <--Function I want to be able to use
[Next] <--Command I can say
[Previous] <--2nd command
[Shuffle] <-- 3rd command
....and so on
[XM] <--Frodo function I want to use
[Down] <---Command I can say
[Settings] <--2nd command
[Preset 1] <--3rd command
[Preset 2] <--4th command
...and so on
I'd be able to say, for example: "iBug" to get it's attention for 10 seconds, then "Frodoplayer" to designate the application I want to target, then "Music" . The display would show in a list the following commmands: "Next, Previous, Shuffle, and so forth" in case I forgot what I can say here.
I'm asking a lot, I think but I'm just trying to think about how I can use this program to control lots of apps and I'm already forgetting some of the things I can say.
1. Uninstall everything voice related, including my program. Re-install SAPI5.1. Install my program from the link above. Hopefully this will work. Do you know what version of the SAPI you installed? You do not need that zip file at all.
The talkback worked on my other computers with no problems. None of them had SAPI4 installed, just 5.1. Make sure that the volume setting is at 100% in the BSR settings.
2.Fixed the crash bug and I'll look at making 2 versions.. the desktop version and the carpc version. Both would be able to run the same commands, just different layouts on the config window.
3. Hm.. not sure about that one.
4. My program just posts WM_QUIT to the window you selected. Frodo's exit button probably disables the XM box, but his form_unload sub probably does not disable the XM box. Also, the wildcard posts WM_QUIT to EVERY window that contains FrodoSat. So if he has hidden windows, those are closed as well. Just a guess...
5. Lets get talkback working for you... I don't want to add large numbers of program control commands. I'm actually looking at changing the current commands.
I like the idea of having a parent command "stick" for about 10 seconds after command is given. Other parent commands would also need to be active during this time period.
you could say "music..open..next...notepad..open..close"
This would involve a lot of re-coding though.
I get the same error when installing the last version.
The program closes when I want to maximize the Edit/New window.