Application

On this page

What is an Application

An Application is a set of content that can be installed on a robot from the Store .

It contains all kind of useful resources such as activities and Dialog topics .

Installing and managing Applications

the Store is the main way to install and manage applications.

From Choregraphe , the Robot applications panel offers short-cuts letting you install and test on your robot the application designed in the current Project .

Creating an Application

To create an Application :

Step Action
Create a new Project .
Create at least one Activity .
Optionally, add one or several Dialog topic(s) .
Complete the Project Properties .

Save your Project .

Result :

Your Application is ready to be tested and packaged.

Running an Application

To run the application designed in the current Project :

Step Action
Make sure you are connected to a robot.

In the Robot applications panel , click the install-app Install Application button.

Result :

The application is now installed on the connected robot.

You can now run it using Robot applications panel .

Building an Application Package

To build an Application Package :

Step Action

Choose File > Build Application Package...

Before proceeding, the Project Properties are checked for consistency.

If needed, the Project Properties will pop with the problematic fields highlighted, along with tooltips explaining the errors and/or warnings.

Choose the Application Package destination path.

https://developers.softbankrobotics.com/sites/default/files/repository/51_html_nao/_images/package_destination.png
  • The default proposal for the Package file name follows the form: <Application ID>-<Application Version>.pkg .

    e.g. my_uid-1.0.1.pkg

  • During the build process, the Minor number of the Application version is automatically incremented.

Click the Save button.

Application - Best practices

Behavior design

  • Check that your Application finishes : in all cases, there should be a path to the output of your Behavior.

Animation design: How to mix Timelines and Planar Moves

  • An animation should consist of one timeline Motion layer together with one Planar Move . Good method:

    https://developers.softbankrobotics.com/sites/default/files/repository/51_html_nao/_images/correct_timeline.png
  • It is NOT recommended to use several timelines and planar moves for a single animation. The following behavior uses several timeline and planar move boxes, synchronized with timer boxes. It is a wrong design. Bad method:

    https://developers.softbankrobotics.com/sites/default/files/repository/51_html_nao/_images/multiple_timelines.png
  • The rationale behind this practice is that precise synchronization of timelines and planar moves is not guaranteed over multiple calls. The precise duration of each planar move depends on the robot environment, and is not perfectly predictable. The duration variations of several planar moves played in a row will add up, potentially resulting in a de-synchronization with the articular timeline.

Project Properties

Supported Languages

  • Select the languages that are actually supported by the application and make sure that all the names and descriptions are translated in all the supported languages.

  • For Dances and applications that do not use TTS nor ASR select Language Independent .

    Be aware that Loading Responses use TTS, and Trigger sentences use ASR.

NAOqi requirements

  • Specify the software versions for which you developed.

    For example, to support all minor versions of 2.0 after the 2.0.1, specify:

    “From 2.0.1 To 2.0”.

Robot requirements

  • Make sure you specify all the robots for which you developed your application.

Behavior properties

Nature

  • Check the Nature: usually this should be Interactive.

Trigger Sentences

  • Check that the Trigger Sentences are relevant and not too general if you want to use this features