Getting started with the Furhat SDK

The Furhat SDK is an application that simulates the robot. The SDK can be used to try out our platform, and it is also powerful enough to do skill development. We support 64-bit Windows, Linux and Mac operating systems. Java JRE 8 is required to run the SDK, JDK 8 is required to develop skills.

The SDK comes with a web-interface that is comparable to the robot, and a Virtual Furhat which shows gestures and head movements just like the robot would.

Installation

Currently we have two options to get the SDK, both can be downloaded from the Furhat Developer Zone (furhat.io). You will also have to install a Java development kit if you want to develop your own skills, as explained here.

SDK Launcher

We recommend downloading the SDK Launcher. The launcher app is an application that installs and updates the SDK for you and it provides an easy to use user-interface.

Standalone SDK

To install the SDK download and extract Furhat SDK to any folder of your choice from the Furhat Developer Zone (furhat.io).

The standalone SDK is for people who feel comfortable using CLIs and terminals. The standalone SDK has to be run from the command line.

Updating Standalone SDK

The updating functionality of the SDK is currently undergoing a rebuild, so next time we update you have to reinstall the SDK. Quite usually however, updating the furhat-commons library (in your skill's build.gradle file) is enough to have your skill get the latest changes. With the new updating functionality that we're working on, this will be a lot easier.

For upgrading skills to a new SDK version, please see skills docs.

Running the Standalone SDK

Note: If you are on Mac and have the latest OSX Mojave, you have to give explicit permission, for the terminal application you use, to the microphone.

  • Open your SDK folder in your terminal
  • Launch the SDK with the commands
    • launchSDK.bat on Windows
    • sh launchSDK.sh on Mac and Linux
  • Open your browser (Chrome is recommended) and navigate to http://localhost:8080
  • Log into the web interface with password "admin"
  • To set up microphones: Configure microphone under microphone settings in web interface.
  • To set up speaker: Configure speaker under the home settings in web interface.
  • Finally, test the speech, gaze and gestures on the home screen and make sure the Virtual Furhat behaves as it should.
  • To test the microphone and speech recognition, create a new skill and test-run it.

Kotlin language

Skills (or applications) on the Furhat platform are built in our domain-specific-language (DSL) in the Kotlin programming language. To learn the fundamentals of Kotlin, we recommend the excellent documentation on kotlinlang.org. You don't need to be a Kotlin expert, or even an experienced developer, to build Furhat skills and will be able to pick up much along the way. General software engineering experience, both object-oriented and functional, is recommended for more advanced use-cases. For more information, see recommended competences

One of the great things about Kotlin is that you can use it interchangeably with Java, allowing you to import Java libraries and use preexisting Java code as you see fit.