A robotic configuration is no longer needed to deploy/install/run apks.
The first version of QiChat Player has been deprecated. The new QiChat language has been completely redesigned and fully integrated.
Robot focus life cycle has been detached from Android’s Activity lifecycle.
For further details, see: Mastering Focus & Robot lifecycle.
Use an improved mechanism to chain Future
s.
Example:
Say say = ...;
Future<Void> sayFuture = say.async().run();
Future<Void> returnedOperation = sayFuture.andThenCompose(new Function<Void, Future<Void>>() {
@Override
public Future<Void> execute(Void ignore) throws Throwable {
Animate animate = ...;
Future<Void> animateFuture = animate.async().run();
return animateFuture;
}
});
For more details, see Chaining operations.
If you have created project using the API Level 1 and you want to port them:
Step | Action |
---|---|
Make sure your project does no longer use former robotic configuration. To do so: Open your project and choose File > New > Robot Application. |
|
Check and rewrite the content of your topics according to the new QiChat language. For further details see: QiChat Language. |
|
Rename your animations: the extension is now .qianim instead of .anim. | |
Review all your code: so many things have changed… Follow the Getting Started chapter in order to discover the new syntax then amend your former code accordingly. |
Updating the value of a variable $myVar (from QiChat or other sources) now raises an event that can be caught using e:myVar.
For further details, see: Robot events: e:eventName and Variable: $.
The Discuss action now provides methods to know the possible utterances for different scopes (global, currently focused topic, and local scope).
The listening property gives the current listening status for the Discuss action.
Cancelling the asynchronous execution of Discuss.goToBookmarkedOutputUtterance()
and goToBookmarkedOutputUtteranceIfBookmarkIsReachable()
will now stop the
corresponding robot utterance.
The QiChat function ^concatenate and ^pick, as well as the rule type pronunciation were added.
Users can now define functions in QiChat.
For further details, see def: and ^user_defined_function.