I've overcome the coding issues I had during my last post. Instead of trying to write a client to communicate with my telnet daemon, I wrote a whole new TCP/IP service. It's not extremely robust, but features keep getting added to it.
Since this, I've written a client portion of the X10 server software. This weekend I'm setting up a faster wireless network and deploying computers in every room of the house. This software will accept voice commands on any PC in the house, and forward them via TCP to the X10 server, which in turn will control the lights. In short, by the end of the night I hope to have voice controlled lighting throughout the house and not just in front of the X10 server.
I attached a screenshot of the new client software previously unannounced. It's not exactly modular like the server application, but it has a light foot print and pretty slick code optimizations. Just set it to the device you want to control with voice commands. To the right of this setting are Off/Dim/Bright/On icons. The control panel icon sets configurations as to which X10 server and ports to use. The question baloon displays all available voice commands. The axe cutting the line allows raw X10 commands to be sent to the PLC. The network neighborhood icon lauches telnet to connect to the telnet service of the X10 server. The globe browses out to the X10 server's HTTP daemon.
Speaking of which, I got a decent overhaul of the HTTP daemon. I used some pretty nice imagemapping and javascript to now also serve up floorplans of the house on the web site in addition to the server application. Since they're image maps, they are static. You have to rely on the status listing to note if the lights are on or off, but you at least have a layout with clickable icons to control your devices. I will have to post a screenshot of it sometime.
I'm very proud of my application. I've bounced around the idea of selling it in conjunction with X10 installation sales and service, so for that reason I'd rather not distribute the source code. I would however extend a personal invitation to any individuals interested in the code that could contribute a useful feature back to my project. I could really use someone who is especially skilled in coding services with Winsock 6. I'm willing to share with anyone seriously interested on the condition that the code is treated with privacy.
And by the way, adding Voice Commands to any VB6 (and .NET) application is not difficult. There are plenty of examples out there on pscode.com and other sites. It's really a fun coding experience, so I'd recommend it to any serious enthusiasts.