-
Notifications
You must be signed in to change notification settings - Fork 552
Added ActionType service and related functionality #1046
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
chaitanya-mandala
commented
Jun 15, 2025
- Introduced ActionType service to retrieve the type of a specified ROS action.
- Updated proxy to include logic for determining action types based on existing action servers.
- Modified rosapi_node to create the new ActionType service endpoint.
- Added ActionType message definition in rosapi_msgs.
- Introduced ActionType service to retrieve the type of a specified ROS action. - Updated proxy to include logic for determining action types based on existing action servers. - Modified rosapi_node to create the new ActionType service endpoint. - Added ActionType message definition in rosapi_msgs.
@chaitanya-mandala Why not use |
…ed action type retrieval. Removed outdated logic for action server filtering and topic name extraction.
@bjsowa Thank you for the insightful suggestion! I've updated the get_action_type() function to utilize the official graph call from the ros2action library and the functionality remains consistent. Here is test Result chaitu@chaitu:~$ ros2 service call /rosapi/action_type rosapi_msgs/srv/ActionType '{action: "/fibonacci"}'
requester: making request: rosapi_msgs.srv.ActionType_Request(action='/fibonacci')
response:
rosapi_msgs.srv.ActionType_Response(type='action_tutorials_interfaces/action/Fibonacci') |
…lt to False for consistency with other functions.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks much simpler this way. Personally, I would rather use the method from rclpy
directly instead of wrappers from ros2cli
packages but since other proxy methods are also implemented this way, we can leave this and change in future code refactor.
The only change request I have is to add ros2action
to package dependencies
Thank you for your feedback! I've added ros2action dependency in the package.xml. |