This project explores the development of a multi-modal(voice,dtmf,keyboard,mouse) human computer interface (HCI) to allow for increased usability within traditional telephony applications.
Providing an interactive visual interface over top of traditional telephony applications allows for increased accessability. This system would allow users to nagivate interactive voice response(IVR) systems with ease because they are able to travel in a non-linear fashion. Instead of having to listen to available options one at a time, the user can interact with a visual represention of the IVR.
The addition of visual elements within a telephony system provides capabilities which would not have been previously available to a traditional telephony application.
The hardware and network level services for such a system have been around for quite some time. However, there isn't currently a platform independent way of interacting with people in 3d space while using the computer(keyboard, mouse, etc.) and telephone(speech+dtmf).
Today touchtone phones are ubiquitous and many models include high resolution touch sensitive screens. Phone interaction should not simply be a audiable experience. Future communication systems will provide an imersive platform which incorporate both the visual and audible senses. The syncronization of visual display elements to process workflow will allow for better understanding of the system as a whole.
Phone clients describe the contents of the each virtually simulated world and provide a mechanism to query and manipulate objects within the world.
Computer Initial world will expose a simple graphical model which can be rotated by each of the computer/phone players. Each player can be connected via the phone and/or computer.
Process Flow
1. User triggers action on cell.
2. Cell sends command to PC.
3. PC updates the VSM -> viewable
4. PC sends acknowledgement to cell.
What will become of virtual telephony world?
Ultimately this program is just something to help me demonstrate to myself that I can do something by connecting peices together. I see this system is more of a scientific nature. When I look at it, I immediately see math. I would dream of a system like this for physical modeling and mathematics in general. I look at it much like a stream processor. I can write visualizations of any kind of data in realtime or near-realtime. That means a lot.
visual stream processors.
Download
The prototype for this system is developed on the windows platform but additional platform support will be added later. To get going, download and follow the on screen instructions during the installation.
The current version is: v1.0.0.2
Release Date: April 06, 2007
Latest windows release
Network server management is based on the RakNet::DistributedNetworkObjectManager
Here are some web references for material I read from:
Building Multiplayer Capability into Your Game in One Hour
This project will make use of the following libraries and software packages:
RakNet - cross platform C++ network library designed to allow programmers to add response time-critical network capabilities to their applications
Irrlicht Engine - high performance realtime 3D engine written in cross-platform C++, using D3D, OpenGL and its own software renderer.
Webserver Apache - webserver
PHP - scripting language
VXML - VoiceXML, the Voice Extensible Markup Language
Building the server
Further network research
Trying to syncronize state across multiple clients is not a simple task. There are many choices to be made in terms of network protocals, implmentation language, class design, etc. In a sense what I'm looking for is grid computing network services. I'd like to be able to develop a data model and have it syncronize across all the nodes in the network. I would like to explore other libraries to allow for realtime distributed simulations. Specifically I would like to research publish/subscribe network object syncronization.
The ADAPTIVE Communication Environment
Multi-Simulation Interface
Multi User Server Client Linkage Environment v3.30
Siena (Scalable Internet Event Notification Architecture)
So the idea keeps coming to me that we shouldn't even require an OpenGL platform. We should be able to do this using open standards like HTML and CSS. CSS provides ways of positioning items in 2d with a z-index. Shouldn't people be able to access the world in 2d too?
Dynamic 3D with CSS and the DOM
A Study of Regular Polygons using CSS
Accessible JavaScript: Beyond the Mouse
24 ways to impress your friends :Showing Good Form
How and Why AJAX, Not Java, Became the Favored Technology for RIAs
VRML and X3D
VRML has been around for a long time now. I remember playing with it when I was in high school. It is a "simple" markup language to describe 3d worlds.
X3D is a newer open XML standard for 3D content delivery. It is the next revision of VRML. X3D files can be displayed with a X3D plugin, program, or toolkit. Most of the X3D plugins also display VRML files. VRML and X3D are both ISO standards.
The biggest problem with VRML and X3D has always been the lack of suitable cross platform runtime. I love the idea of a unified web were one can write markup for 3d worlds which would work on everyone's machine.... but this dream has not been realized....and I'm starting to doubt that it ever will.
I've done some research using a few of the X3D plugins available today (Jan-2007) and I'm pretty disappointed. I can't find a single X3D runtime that works well on windows, mac, and linux. I've found it hard to find even a good plugin for any of the platforms.
I'd really like to see the development of a nice cross platform plugin that works in all the web browsers and could be scripted using Ajax. Dream dream dream.
What is X3D?
OpenVRML - a free cross-platform runtime for VRML and X3D.
IBM 4: VRML+VoiceXML
VRML (Virtual Reality Modeling Language) and X3D
3-D Web environments: Virtual Reality Modeling Language (VRML) & X3D
CUIML: A Language for Generating Multimodal Human-Computer Interfaces
Visual XML Authoring, Publishing and Viewing Structured Information
google: vrml and vxml
VRML testing suite
http://www.ajax3d.org/ - Ajax and X3D-based open technologies
VoiceXML
for what that's worth. VoiceXML provides a means for speech recognition and speech synthesis to voice-enable your web site.
Making Great Mapping Mashups Using Adobe Flex
Using molecule viewers?!
The outlook to me for VRML and X3D platforms is sad.... due to no single cross platform X3D solution....with good object model and data streams of course.
However, there has been some development in the bio related visualization tools. I'm doing to investigate more later...
Jmol
Second Life
Second life is an interesting odity to pop up in the tech. world that I wouldn't have believed. Second Life actually promotes a virtual world in which virtual content and space are worth real money. This really blow my mind and I'm very interested to see how it turns out.
Second life could also provide a great platform for multi-modal communication....however, things are still a little young...and I'm really not sure of the future at this point.
Business and Education
Developers: Resource Matrix
Using the Linden Script Language
IBM Launches Developers' Resources In Second Life
Canvas (HTML element)
Canvascape - "3D Walker"
uBrowser
Building virtual worlds (CMU's Alice)
Panda3dInteresting research on pervasive games...
Frog Race is a master thesis projectUsing game engines for ground level seems to be a pretty good idea. I could be able to voice control quake. Quake is open source and the data files to run the application are available if you've bought the game. It would quickly get a base of users as there are many game players interested in computerized automation and modeling.
COLLADA
Looks like I'm not the only one to have this idea. The questions is when will it happen...and what does it mean when people communicate, navigate, and understand 3d.
VMGL
The First Step Into Game Development
Pyro - Python Remote Objects
I'm thinking about interfacing to a MUD for content and activities for people to do.
HawkNL (Hawk Network Library)
ZIG Game Engine
LCD shutter glasses - Wikipedia, the free encyclopedia
eDimensional 3D Glasses and Innovative PC Gaming Accessories
Created: 2007-06-01 16:52:46 Modified: 2007-10-06 08:14:22