Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Figure 2. The Virtual Human Toolkit architecture.

Virtual Human Messaging

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 (VHMsg) to quickly implement receiving and sending ActiveMQ messages in a variety of languages, including C++, C# and Java. 

Every module has its own messaging API. In addition, each module should at least implement the basic messaging protocol that allows modules to request and share whether they are online:

  •  vrAllCall [reason], pings all modules.
  •  vrComponent component-idsub, response by module to 'vrAllCall'; should also be sent on start-up by module.
  •  vrKillComponent {component-id|all}, requests a single module or all modules to shut down.
  •  vrProcEnd component-idsub, sent by module on exit.

Individual messages are listed under the Messages page.