service_server.py
Go to the documentation of this file.
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3 # Copyright (c) 2020, Anthony Remazeilles
4 # All rights reserved.
5 # Author: Anthony Remazeilles <anthony.remazeilles@tecnalia.com>
6 # inspired from https://github.com/ros/ros_comm/blob/noetic-devel/tools/rostest/test_nodes/service_server.py
7 
8 import rospy
9 from std_srvs.srv import Empty, EmptyResponse
10 from std_srvs.srv import SetBool, SetBoolResponse
11 from std_srvs.srv import Trigger, TriggerResponse
12 
13 
14 def empty_cb(req):
15  return EmptyResponse()
16 
17 def set_bool_cb(req):
18  response = SetBoolResponse()
19  response.success = True
20  response.message = str(req.data)
21  return response
22 
23 def trigger_cb(req):
24  return TriggerResponse()
25 
26 def trigger2_cb(req):
27  response = TriggerResponse()
28  response.success = True
29  response.message = 'well done!'
30  return response
31 
32 def main():
33  rospy.init_node('service_server')
34 
35  empty_service = rospy.Service('empty', Empty, empty_cb)
36  set_bool_service = rospy.Service('set_bool', SetBool, set_bool_cb)
37  trigger_service = rospy.Service('trigger', Trigger, trigger_cb)
38  trigger2_service = rospy.Service('trigger_spec', Trigger, trigger2_cb)
39 
40  rospy.spin()
41 
42 
43 if __name__ == '__main__':
44  main()
def empty_cb(req)
def trigger2_cb(req)
def trigger_cb(req)
def set_bool_cb(req)


rostest_node_interface_validation
Author(s): Anthony Remazeilles
autogenerated on Mon Feb 28 2022 23:33:37