ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
Client-Server communication via services is a 1 to 1 communication. When you create a client
auto client = node->create_client<ServiceT>(service_name, qos);
This client can only send requests to the service specified by service name
. In order to change its service you need to create again the object.
From your question it looks like you want to send the same ServiceT::Request
object to multiple servers.
The ServiceT::Request
object is not linked to any specific server or client and it can be reused as many times you want.
Assuming that you created multiple clients, what you can do is
ServiceT::Request request;
client1->send_request(request);
client2->send_request(request);
2 | No.2 Revision |
Client-Server communication via services is a 1 to 1 communication. When you create a client
auto client = node->create_client<ServiceT>(service_name, qos);
This client can only send requests to the service specified by service name
. In order to change its service you need to create again the object.
From your question it looks like you want to send the same ServiceT::Request
object to multiple servers.
The ServiceT::Request
object is not linked to any specific server or client and it can be reused as many times you want.
Assuming that you created multiple clients, what you can do is
ServiceT::Request request;
client1->send_request(request);
client2->send_request(request);