...
Figure 2. The Virtual Human Toolkit architecture.
Virtual Human Messaging
Overview
Communication between most modules happens by message passing, which is implemented in ActiveMQ. Messages are broadcasted through the system and a component can subscribe to certain messages. Developers can use the VH Messaging library to quickly implement receiving and sending ActiveMQ messages. Note that ActiveMQ was preceded by Elvin and that due to legacy reasons one might still encounter mentionings of Elvin, even though no Elvin code is used anymore.
...
Below follows a detailed description of each message. Note that this section is currently incomplete.
RemoteSpeechCmd
RemoteSpeechCmd
Description
Sent by SmartBody to Text-To-Speech relay. Requests for a certain text and voice to create speech.
RemoteSpeechReply
RemoteSpeechReply
Description
Reply from Text-To-Speech relay (to SmartBody) with viseme and word timing information.
vrAllCall
vrAllCall string
Description
...
Related messages
vrComponent
vrComponent component-id sub
...
Related messages
vrExpress
- vrExpress char-id addressee-id utterance-id xml-messsage
...
Sent from the NPCEditor (or any other module requesting behavior) to the Nonverbal Behavior Generator. See the logs when running Brad for examples. This message will be better documented in future iterations.
vrKillComponent
vrKillComponent component-id
vrKillComponent all
...
Related messages
vrProcEnd
vrProcEnd component-id sub
Description
...
vrSpeak
- vrSpeak char-id addressee-id utterance-id xml-messsage
...
Sent from the Nonverbal Behavior Generator to SmartBody. Requests for SmartBody to realize verbal and nonverbal behavior. See the logs when running Brad for examples. This message will be better documented in future iterations.
vrSpeech
- vrSpeech type turn-id other
Description
...