def SetTextureHandler(config, logger, uriHandler=None): """ Fetches a TextureManager for specific mode and channel. @param config: The Retrospect Config object @param logger: An Logger @param uriHandler: The UriHandler @return: A TextureHandler object for the requested mode """ mode = config.TextureMode.lower() if logger is not None: logger.Trace("Creating '%s' Texture Mananger", mode) if mode == Local: import local TextureHandler.__TextureHandler = local.Local(logger) elif mode == Remote: import remote TextureHandler.__TextureHandler = remote.Remote( config.TextureUrl, logger) elif mode == Cached: import cached TextureHandler.__TextureHandler = cached.Cached( config.TextureUrl, config.profileDir, logger, uriHandler) else: raise Exception("Invalide mode: %s" % (mode, )) return TextureHandler.__TextureHandler
def main(): if os.path.exists(config.SOCKET): sys.exit('sqlmp socket already open') stdscr, palette = init.ncurses() try: db = musicdb.Musicdb(config.DBPATH, config.LIBPATH) except Exception as e: debug.print_error('db error:', e) try: signal.signal(signal.SIGINT, lambda a, b: cleanup(stdscr, True)) #init the ui ui = player_ui.Player_ui(stdscr, palette, db) #init remote remote.Remote(ui, config.SOCKET) #start mainloop ui.mainloop() #cleanup curses cleanup(stdscr) except Exception as e: cleanup(stdscr) debug.print_error('error:', e)
def power_samsung_tv(self, tv): try: myremote = remote.Remote(tv['ip'], tv['mac'], tv['model']) myremote.connect(3) myremote.sendkey('KEY_POWEROFF') myremote.close() except: pass
def updateSuccessors(self, ret = True): suc = self.successor() if suc.id() != self.id(): successors = [suc] suc_list = suc.getSuccessors() if suc_list: for i in suc_list: successors.append(remote.Remote(address.Address(i[0], i[1]), self)) self._succ = successors return ret
def join(self, hostAddress = None): self._finger = [None] * LOGSIZE self._pred = None if hostAddress: address.validateAddress(hostAddress) self._finger[0] = remote.Remote(hostAddress, self).findSuccessor(self.id()) if self._finger[0] == None: return False else: self._finger[0] = self return True
def __init__(self, debug_queue, error_queue, address, learning, iteration, trajectory): (self.controller_address, self.receiver_address) = address self.debug_queue = debug_queue self.error_queue = error_queue self.learning = learning self.iterations = iteration self.trajectories = trajectory # The default command that is sent to the drone. self.default_cmd = { 'X': 0.0, 'Y': 0.0, 'Z': 0.0, 'R': 0.0, 'C': 0, 'T': False, 'L': False, 'S': False } # The drone's address and ports. self.drone_address = '192.168.1.1' self.ports = {'NAVDATA': 5554, 'VIDEO': 5555, 'CMD': 5556} # The drone's cameras. self.cameras = {'FRONT': 0, 'BOTTOM': 3, 'CUSTOM': 4} self.active_camera = self.cameras['FRONT'] # The method of tracking we are going to use. self.tracking = None # Initialize all modules. self.remote = remote.Remote(self.debug_queue, self.error_queue) self.controller = controller.Controller(self.debug_queue, self.error_queue) self.receiver = receiver.Receiver(self.debug_queue, self.error_queue) camera_address = 'tcp://' + self.drone_address + ':' + str( self.ports['VIDEO']) self.image_queue = Queue.Queue(maxsize=1) self.camera = camera.Camera(self.debug_queue, self.error_queue, camera_address, self.image_queue) self.camera.daemon = True self.camera.start()
def saveRemote(self): """Sync current remote with forms values and save it.""" name = self.nameLineEdit.text().strip() if not name: if not self.urlLineEdit.text(): return name = "New Remote" namechange = False if self.remote and name != self.remote.name: print "CHANGING REMOTE NAME." namechange = True self.remote = None # Make sure the name is not used. if namechange and name in self.remotes: i = 1 while True: newname = "%s_%d" % (name, i) if newname not in self.remotes: break i += 1 self.nameLineEdit.setText(newname) name = newname print "saving name = %s" % name if not self.remote: self.remote = remote.Remote() self.remotes[name] = self.remote self.targetList.addItem(name) self.remote.name = name self.remote.url = self.urlLineEdit.text() self.remote.basicauth = self.useBasicAuthCheckBox.isChecked() self.remote.user = self.userLineEdit.text() self.remote.password = self.passwordLineEdit.text() flavour = self.tweakForComboBox.currentText() self.remote.flavour = None if flavour == "none" else flavour self.remotes.save() for x in self.remotes: print x, self.remotes[x].name
def __init__(self, config): # read config file self.cfg = config # launch remote control "driver" if self.cfg.remote: self.rc = remote.Remote() else: self.rc = None # initialize theme self.thm = theme.Theme(self.cfg) # initialize menu classes self.tv_menu = tv.TV_Menu(self.cfg, self.thm) self.video_menu = video.Video_Menu(self.cfg, self.thm) self.dvd_menu = dvd.DVD_Menu(self.cfg, self.thm) self.music_menu = music.Music_Menu(self.cfg, self.thm) self.photo_menu = photo.Photo_Menu(self.cfg, self.thm) self.web_menu = web.Web_Menu(self.cfg, self.thm)
def get_remote(study_path, remote_name_in): # _printer.print_msg("Testing connection to remote '%s'..." % r.name, end='') # r.available() # print "OK" remotes = RemotesFile(study_path) remotes.load() r = remote.Remote() # Set to "default" if args.remote is None if remote_name_in == None: remote_name = remotes.default_remote _printer.print_msg("Using default remote '{}'...".format(remote_name)) else: remote_name = remote_name_in try: remote_yaml = remotes[remote_name] except KeyError: raise Exception( "Remote '{}' not found in 'remotes.yaml'.".format(remote_name)) r.configure(remote_name, remote_yaml) return r
def __init__(self, targets): window = gtk.Window(gtk.WINDOW_TOPLEVEL) #create window window.connect("destroy", self.quit) window.set_title(self.versionString) window.set_icon(self.getIcon()) self.window = window self.prefs = prefs.Prefs(self) self.mplayer = mplayer.Mplayer(self) self.remote = remote.Remote(self) self.playlist = playlist.Playlist(self) self.systray = systray.Systray(self) self.control = control.Control(self) self.menu = menu.Menu(self) vbox = gtk.VBox(False, 0) vbox.pack_start(self.playlist.scrollview, True, True, 0) vbox.pack_start(self.control.hbox, False, False, 0) window.add(vbox) #prepare to start ui window.show_all() window.move(self.prefs.getInt("x"), self.prefs.getInt("y")) window.resize(self.prefs.getInt("width"), self.prefs.getInt("height")) if targets: #process targets self.playlist.load(targets) if self.playlist.continuous: #and begin playback self.playlist.jump(0) else: #or load last list self.playlist.loadm3u() gtk.main()
def sync_desc(desc): import yaml ChanCls = type('C', (remote.SshSudoChannel, remote.BinaryEncoding), {}) with remote.Remote(ChanCls(desc['hostname'])) as rmt: filist = [] if '-t' in optdict: with open('%s.meta' % desc['hostname'], 'rb') as fi: attrs = api.filist_load(fi.read()) cache_default_attr(attrs) for syncinfo in desc['synclist']: rmtpath, local, partten = get_syncinfo(rmt, desc, syncinfo) if '-b' in optdict: filist.extend(sync.sync_back(rmt, rmtpath, local, partten)) else: fl = sync.sync_to(rmt, rmtpath, local, partten) fl = list(merge_filist(fl, attrs, rmtpath, local)) filist.extend(fl) if '-b' in optdict: doc = api.filist_dump(filist, desc.get('user'), desc.get('group'), desc.get('filemode'), desc.get('dirmode')) with open('%s.meta' % desc['hostname'], 'wb') as fo: fo.write(doc) else: rmt.apply(sync.apply_meta, filist)
def setUp(self): self.remote = remote.Remote(serial_class=MockSerial)
import badgekitapiclient import glob import os.path import remote import unittest try: import json except ImportError: import simplejson as json client = badgekitapiclient.Client(remote.Remote()) def run(*tests, **kwargs): tests = unittest.TestSuite(tests) return unittest.TextTestRunner(**kwargs).run(tests) class TestCase(unittest.TestCase): def __init__(self, *args, **kwargs): super(TestCase, self).__init__(*args, **kwargs) self.client = client @classmethod def get_suite(cls): return unittest.TestLoader().loadTestsFromTestCase(cls) @classmethod def run_tests(cls, **kwargs): suite = cls.get_suite()
#!/usr/bin/env python3 import remote import vehicle print("Starting CWBuggy...") # Instantiate vehicle vehicle = vehicle.Vehicle() # Instantiate remote controller rc = remote.Remote(vehicle) rc.start() # Instantiate autopilot #auto = autopilot.Autopilot(vehicle) #auto.start() print("Finishing CWBuggy...") # Free resources del vehicle del rc print("Finished CWBuggy")
for file in l: if (file.endswith('.py') and (file[0] != '.' and file != '_')): #Remove duplicates newfile = file.replace('_', ' ') valid.append(newfile[:-3]) #add file to valid list, remove extension loop = asyncio.get_event_loop() selectedIcon = "[*]" unselectedIcon = "[ ]" exit = False nMenuItems = len(valid) + 3 r = remote.Remote() try: f = open('apps/radio.conf', 'rb') (ch, uuid) = unpack('>II', f.read()) print("ch=" + hex(ch) + " uuid=" + hex(uuid)) f.close() r.set_channel(ch) r.set_uuid(uuid) except OSError: print("no radio settings saved") idx = 0 while (not exit): pairstat = 'N '
def reply(self, args): try: conn, addr = args b = crypto_number.getRandomInteger(DIFFIE_HELLMEN_KEY_SIZE) % N A = network.read_from_socket_as_string(conn) if A: A = json.loads(A) if type(A) != dict: raise Exception sig = A.pop('sig') if not rsa.verify(sig, json.dumps(A, sort_keys = True), A['public key']): raise Exception ga_modn = A['key'] pk, sk = self.getKeys() A = { 'key': pow(G, b, N), 'public key': pk } A['sig'] = rsa.sign(json.dumps(A, sort_keys = True), sk) network.send_to_socket_as_string(conn, json.dumps(A)) gab_modn = pow(ga_modn, b, N) request = network.read_from_socket_as_bytes(conn) if request: request = aesHmac.symmDecryption(request, gab_modn) command = request.split(' ')[0] request = request[len(command) + 1:] result = json.dumps("") if command == 'get_successor': successor = self.successor() result = json.dumps((successor.addr, successor.port)) elif command == 'get_predecessor': if self._pred != None: predecessor = self.predecessor() result = json.dumps((predecessor.addr, predecessor.port)) elif command == 'find_successor': successor = self.findSuccessor(int(request)) result = json.dumps((successor.addr, successor.port)) elif command == 'closest_preceding_finger': closest = self.closestPrecedingFinger(int(request)) result = json.dumps((closest.addr, closest.port)) elif command == 'notify': npredecessor = address.Address(request.split(' ')[0], int(request.split(' ')[1])) self.notify(remote.Remote(npredecessor, self)) elif command == 'get_successors': result = json.dumps(self.getSuccessors()) else: try: t = self._commands[command] def f(A): network.send_to_socket_as_bytes(conn, aesHmac.symmEncryption(A, gab_modn)) t(request, f) conn.close() return except KeyError: pass network.send_to_socket_as_bytes(conn, aesHmac.symmEncryption(result, gab_modn)) except: pass conn.close()
def annotate(self, args): self.iteration = args.iteration self.trajectory = args.trajectory self.time_step = 1 self.video_rate = 5 self.debug_queue.put({ 'MSG': 'Parrot AR 2 Flying Tool :: Annotation Mode', 'PRIORITY': 1 }) if self.gui: self.debug_queue.put({'MSG': ':: GUI flag set.', 'PRIORITY': 1}) self.debug_queue.put({ 'MSG': ':: Verbosity set to %d.' % self.verbosity, 'PRIORITY': 1 }) # Initialize the remote module. self.debug_queue.put({ 'MSG': ':: Initializing remote control.', 'PRIORITY': 1 }) self.remote_control = remote.Remote(self.debug_queue, self.error_queue) # Initialize the gui. self.debug_queue.put({'MSG': ':: Initializing GUI.', 'PRIORITY': 1}) self.root = tk.Tk() if self.root: self.root.resizable(0, 0) # change this later self.root.wm_title("AMOT :: Annotation Tool") self.image_frame = tk.Frame(self.root) self.create_annotate_gui() self.debug_queue.put({ 'MSG': ':: Starting annotation for iteration %s, trajectory %s.' % (self.iteration, self.trajectory), 'PRIORITY': 1 }) self.debug_queue.put({ 'MSG': ':: To annotate, get the optimal command using the left annolog stick and press button 5 to save.', 'PRIORITY': 1 }) self.directory = './data/%s/%s/' % (args.iteration, args.trajectory) self.debug_queue.put({ 'MSG': ':: Looking in directory %s for images and commands.' % self.directory, 'PRIORITY': 1 }) # Load the commands associated with this iteration and trajectory. self.debug_queue.put({ 'MSG': ':: Loading drone commands.\n', 'PRIORITY': 1 }) cmd_filename = self.directory + 'drone_cmds.data' f = open(cmd_filename) lines = f.readlines() self.cmd_drone_json = lines[self.time_step - 1] self.debug_flag = False self.debugger.debug() self.update_annotate_gui() self.root.mainloop()