Note: This tutorial assumes that you have completed the previous tutorials: Getting Started.
(!) Please ask about problems and questions regarding this tutorial on answers.ros.org. Don't forget to include in your question the link to this page, the versions of your OS & ROS, and also add appropriate tags.

Documentation Interactions

Description: Defining interactions pointing to documentation on the web.

Keywords: rocon interactions

Tutorial Level: BEGINNER

Next Tutorial: Qt Interactions

Overview

This tutorial will guide you through the process of linking to and viewing documentation on the web. This is extremely convenient as it directly connects the user of a robot/system with the documentation - no inbetween manuals or word of mouth.

Pointing to documentation is simply a matter of providing a url to the interaction specification. The remocons will then handle the job of starting a browser to view the documentation.

We will assume you are storing launchers/yamls in an arbitrary package foo.

Interactions Yaml

Let's define a couple of simple url's to point to. Save this in foo as foo.interactions.

   1 - name: web_url(http://chimek.yujinrobot.com/)
   2   role: 'Web URLs'
   3   compatibility: rocon:/
   4   display_name: Chimek
   5   description: Everything you need to know about chimek to get through life.
   6   icon:
   7     resource_name: rocon_bubble_icons/chimek.png
   8 
   9 - name: web_url(http://wiki.ros.org/rocon_interactions)
  10   role: 'Web URLs'
  11   compatibility: rocon:/
  12   display_name: Ros Wiki - Interactions
  13   description: Documentation for rocon_interactions on the ros wiki
  14   icon:
  15     resource_name: rocon_bubble_icons/ros.png

Note that the rocon_uri specified for the compatibility is open (rocon:/). We are assuming that we can view these web links from any platform.

Interactions Launcher

We don't need anything but the basic interaction node here since the interactions don't require anything but a browser and an internet connection. Save this as foo.launch in foo.

   1 <launch>
   2   <param name="name" value="Rocon Interactions"/>
   3   <param name="description" value="A tutorial environment for interactions/remocons."/>
   4   <param name="icon" value="rocon_icons/cybernetic_pirate.png"/>
   5   <node pkg="rocon_master_info" type="master.py" name="master"/>
   6 
   7   <node pkg="rocon_interactions" type="interactions_manager.py" name="interactions">
   8     <rosparam param="interactions">[foo/foo]</rosparam>
   9   </node>
  10 </launch>

Interacting

# In the first shell
> roslaunch foo foo.launch --screen
# In a second shell
> rocon_remocon

You should be able to add your ros master and load up the pair of web url's you have specified.

Caveat: currently only google chrome (stable/unstable) and chromium is supported. This should be fairly easy to extend if needed.

Wiki: rocon_interactions/Tutorials/indigo/Documentation Interactions (last edited 2014-05-02 02:39:31 by DanielStonier)