ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

This one proved to be as simple as it is embarrassing. The code in the tutorial was a bit flawed in that the class had the same name as the service class. So as far as ROS was concerned, I was attempting to call the same python class.

Instead of the code above, I now have the following:

#! /usr/bin/env python
...
from my_summit_xl_tools.srv import SummitXLPose, SummitXLPoseResponse, SummitXLPoseRequest
...

class SummitXLPoseX(object):
    def __init__(self):
        rospy.loginfo("---> Starting Service ...")
        print(dir(SummitXLPose))
        self.pose_service = rospy.Service('/get_pose_summitxl_service', SummitXLPose , self.pose_service_callback)
        ...

def startPoseService():
    ...
    summitpose = SummitXLPoseX()
    ...

That simple distintion between the python class name and the class name of the service solved my problem.