dim
dim

Reputation: 1032

What is the right way to package and to deploy QiMessaging Service application to Pepper/Nao robot?

I'm confused about the right process of packaging and deploying a custom Service application to a robot. I'm using Python.

I would like to know what is the right QiMessaging service project structure and how to package and deploy to a robot with CLI tools. Now I'm loading the services with autoload.ini.

Edit: I found this guide.

Upvotes: 1

Views: 361

Answers (1)

Emile
Emile

Reputation: 2971

I made robot-jumpstarter, and yes, it has a fair amount of boilerplate code to make debugging more easy etc.

If you want a bare-bones service, How to write a qimessaging service in the documentation covers that; there's also the tutorial you already found that covers that and in addition also how to use qipkg, which is indeed the standard command-line way of packaging a service. The examples given in those two docs are indeed pretty much as simple as can get.

The minimum structure should be a manifest.xml, a .pml file, and your python script (and maybe an icon for the package; heavily recommended at least, apps without icons are ugly).

You should also be aware that:

  • the word "service" can refer either to a NAOqi service (that registers, that you can call with qicli etc. and that is managed by the ServiceDirectory service), or to a systemd service, which is basically a standalone process (that may or may not contain a NAOqi service), that is managed by ALServiceManager
  • often when one makes a NAOqi application in Python, the core code of the application is in one or several NAOqi services contained in the application's package ("application" and "service" are not mutually exclusive categories)

Upvotes: 1

Related Questions