def connect(self): """connects to ZBrushServer """ try: # close old socket, might not exist so skip self.sock.close() except AttributeError: print 'no socket to close...' self.status = False utils.validate_host(self.host) utils.validate_port(self.port) self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # time out incase of a bad host/port that actually exists self.sock.settimeout(45) try: self.sock.connect((self.host, int(self.port))) except socket.error as err: self.status = False if errno.ECONNREFUSED in err: raise errs.ZBrushServerError('Connection Refused: %s:%s' % (self.host, self.port)) self.status = True
def connect(self): """connects to ZBrushServer """ try: # close old socket, might not exist so skip self.sock.close() except AttributeError: print 'no socket to close...' self.status = False utils.validate_host(self.host) utils.validate_port(self.port) self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # time out incase of a bad host/port that actually exists self.sock.settimeout(45) try: self.sock.connect((self.host, int(self.port))) except socket.error as err: self.status = False if errno.ECONNREFUSED in err: raise errs.ZBrushServerError( 'Connection Refused: %s:%s' % (self.host, self.port)) self.status = True
def start(self): """ starts a command port""" # check network info utils.validate_host(self.host) utils.validate_port(self.port) self.cmdport_name = "%s:%s" % (self.host, self.port) self.status = cmds.commandPort(self.cmdport_name, query=True) # if down, start a new command port if self.status is False: cmds.commandPort(name=self.cmdport_name, sourceType='python') self.status = cmds.commandPort(self.cmdport_name, query=True) print 'listening %s' % self.cmdport_name
def start(self): """ looks for previous server, trys to start a new one""" self.status = False utils.validate_host(self.host) utils.validate_port(self.port) if self.server is not None: print 'killing previous server...' self.server.shutdown() self.server.server_close() print 'starting a new server!' self.server = ZBrushSocketServ((self.host, int(self.port)), ZBrushHandler) self.server.allow_reuse_address = True self.server_thread = Thread(target=self.server.serve_forever) self.server_thread.daemon = True self.server_thread.start() print 'Serving on %s:%s' % (self.host, self.port) self.status = True
def test_client(self): """ tests connection with maya, creates a sphere and deletes it """ utils.validate_host(self.host) utils.validate_port(self.port) maya_cmd = 'import maya.cmds as cmds;' maya_cmd += 'cmds.sphere(name="goz_server_test;")' maya_cmd += 'cmds.delete("goz_server_test")' maya = socket.socket(socket.AF_INET, socket.SOCK_STREAM) maya.settimeout(5) try: maya.connect((self.host, int(self.port))) except socket.error as err: print err print 'connection refused' return False except ValueError: print 'specify a valid port' return False else: maya.send(maya_cmd) maya.close() return True