Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007 import sys
00008
00009
00010 import roslib
00011 roslib.load_manifest('rocon_hub')
00012 import rospy
00013
00014
00015 from . import utils
00016 from . import redis_server
00017 from . import ros_parameters
00018 from . import zeroconf
00019
00020
00021
00022
00023
00024
00025 def main():
00026
00027 while not utils.check_master():
00028 rospy.logerr("Unable to communicate with master!")
00029 rospy.sleep(1.0)
00030 if rospy.is_shutdown():
00031 sys.exit(utils.red_string("Unable to communicate with master!"))
00032 rospy.init_node('hub')
00033 param = ros_parameters.load()
00034
00035
00036 utils.check_if_executable_available('redis-server')
00037 if param['zeroconf']:
00038 utils.check_if_executable_available('avahi-daemon')
00039
00040 redi = redis_server.RedisServer(param)
00041 redi.start()
00042
00043 if param['zeroconf']:
00044 zeroconf.advertise_port_to_avahi(param['port'], param['name'])
00045
00046 rospy.spin()
00047 redi.shutdown()