|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 InteractionsDescription: Defining interactions pointing to documentation on the web.
Keywords: rocon interactions
Tutorial Level: BEGINNER
Next Tutorial: Qt Interactions
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.
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.
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>
# 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.