World Interfaces¶
A world interace is any external service, device, etc. that enables the Dialog System to interact with the world outside of the dialog system. Interaction with a World Interface is provided to a conversation via InputDevices and OutputDevices. Some need to be initialized or controlled which would be done by the ConversationManager. This page is a list of currently supported World Interfaces and provides information on how to use them and how they work.
ROS¶
Note
Robot interface
The Robot Operating System (ROS) provides an interface so the dialog manager may be deployed as the brain of roboy. It provides a way to communicate with the actual hardware and using its many ways of acting on and sensing the world as in- and outputs.
The memory, vision, emotion, speech, generative model and middleware communication is carried out through RosMainNode object which implements AbstractNodeMain (inheriting NodeListener of rosjava) and offering the control through the following important methods:
- onStart
- onShutdown
- onShutdownComplete
- onError
Currently, it also provides with the next custom methods:
- SynthesizeSpeech
- RecognizeSpeech
- GenerateAnswer
- ShowEmotion
- DetectIntent
- addListener
- waitForLatchUnlock
Cerevoice¶
Note
I/O Device
Choose cerevoice
in- and output in config.properties
.
Cerevoice is a software for speech-to-text and text-to-speech processing. An external cerevoice software instance must be provided in order for the Dialog System to use this.
UDP¶
Note
I/O Device
Choose udp
in- and output in config.properties
.
The dialog system may recieve and send in- and output that needs no further processing through a udp port configured in config.properties
.
Bing¶
Note
Input Device
Choose bing
input in config.properties
.
Bing speech-to-text processing. Requires internet connection and the roboy_speech_recognition
ROS package.
Command line¶
Note
I/O Device
Choose cmd
in- and output in config.properties
.
In- and output via the command line in which the Dialog System is launched. Pure text-based in- and output.
Telegram¶
Note
I/O Device
Choose telegram
in- and output in config.properties
.
Use a telegram bot to interface with the world. See Configuring a telegram bot for more information.
- If the dialog system has been configured to use telegram as input world interface, the command line switches into control mode where an operator may use the
shutdown
command for a safe shutdown that makes the dialog system properly say goodbye to active interlocutors. - [Deprecated] CypherMemoryQuery
- [Deprecated] DeleteMemoryQuery
- [Deprecated] GetMemoryQuery
- [Deprecated] UpdateMemoryQuery
- [Deprecated] CreateMemoryQuery