def __init__(self, db_name, encrypter=None, store_text=True, repeat_char=True, tag_name=None): self.session_maker = models.initialize(db_name) models.ENCRYPTER = encrypter self.store_text = store_text self.repeat_char = repeat_char self.tag_name = unicode(tag_name) self.curtext = u"" self.key_presses = [] self.mouse_path = [] self.current_window = Display() self.last_scroll = {button: 0 for button in SCROLL_BUTTONS} self.last_key_time = time.time() self.last_commit = time.time() self.started = NOW() self.last_screen_change = None
def __init__(self, db_name, encrypter=None, store_text=True): self.session_maker = models.initialize(db_name) models.ENCRYPTER = encrypter self.store_text = store_text self.curtext = u"" self.key_presses = [] self.mouse_path = [] self.current_window = Display() self.last_scroll = {button: 0 for button in SCROLL_BUTTONS} self.last_key_time = time.time() self.last_commit = time.time() self.started = NOW()
def __init__(self, db_name, encrypter=None, store_text=True, repeat_char=True): self.session_maker = models.initialize(db_name) models.ENCRYPTER = encrypter self.store_text = store_text self.repeat_char = repeat_char self.curtext = u"" self.key_presses = [] self.mouse_path = [] self.current_window = Display() self.last_scroll = {button: 0 for button in SCROLL_BUTTONS} self.last_key_time = time.time() self.last_commit = time.time() self.started = NOW() self.last_screen_change = None self.last_clipboard_change = None self.lastKeyWasCtrl = False self.was_ctrl_c = False self.was_ctrl_v = False self.was_ctrl_x = False # Start QT App in new thread, for receiving clipboard changes t = threading.Thread(target=self.qtApp) t.daemon = True t.start()
def __init__(self, db_name, args): self.args = args self.session_maker = models.initialize(db_name) self.inmouse = False self.check_needs()
def __init__(self, db_name): # check if a selfspy thumbdrive is plugged in and available # if so, store screenshots and DB there, otherwise store locally self.lookupThumbdrive() self.defineCurrentDrive() screenshot_directory = os.path.join(cfg.CURRENT_DIR, 'screenshots') try: os.makedirs(screenshot_directory) except OSError: pass audio_directory = os.path.join(cfg.CURRENT_DIR, 'audio') try: os.makedirs(audio_directory) except OSError: pass db_name = os.path.join(cfg.CURRENT_DIR, db_name) try: self.session_maker = models.initialize(db_name) except sqlalchemy.exc.OperationalError: print "Database operational error. Your storage device may be full. Exiting Selfspy..." alert = NSAlert.alloc().init() alert.addButtonWithTitle_("OK") alert.setMessageText_( "Database operational error. Your storage device may be full. Exiting Selfspy." ) alert.setAlertStyle_(NSWarningAlertStyle) alert.runModal() sys.exit() self.key_presses = [] self.mouse_path = [] self.current_window = Display() self.current_apps = [] self.active_app = {'id': '', 'name': ''} self.current_windows = [] self.regularWindowsIds = [] self.active_window = {'id': '', 'title': '', 'process': '', 'url': ''} self.last_scroll = {button: 0 for button in SCROLL_BUTTONS} self.last_key_time = time.time() self.last_move_time = time.time() self.last_commit = time.time() self.last_screenshot = time.time() self.last_experience = time.time() self.last_active = NOW() self.screenshots_active = True # times below are in seconds self.screenshot_time_min = 0.2 self.screenshot_time_max = 60 self.exp_time = 120 # time before first experience sample shows self.thumbdrive_time = 10 self.snapshot_time = 60 self.inactivity_time = 120 # after two minutes of inactivity we write this is the database self.addObservers() self.started = NOW()
def __init__(self, db_name): # We check if a selfspy thumbdrive is plugged in and available # if so this is where we're storing the screenshots and DB # otherwise we store locally self.lookupThumbdrive() self.defineCurrentDrive() screenshot_directory = os.path.join(cfg.CURRENT_DIR, 'screenshots') try: os.makedirs(screenshot_directory) except OSError: pass audio_directory = os.path.join(cfg.CURRENT_DIR, 'audio') try: os.makedirs(audio_directory) except OSError: pass db_name = os.path.join(cfg.CURRENT_DIR, db_name) try: self.session_maker = models.initialize(db_name) except sqlalchemy.exc.OperationalError: print "Database operational error. Your storage device may be full. Exiting Selfspy..." alert = NSAlert.alloc().init() alert.addButtonWithTitle_("OK") alert.setMessageText_("Database operational error. Your storage device may be full. Exiting Selfspy.") alert.setAlertStyle_(NSWarningAlertStyle) alert.runModal() sys.exit() self.key_presses = [] self.mouse_path = [] self.current_window = Display() self.current_apps = [] self.active_app = '' self.current_windows = [] self.regularWindowsIds = [] self.active_window = {'title': '', 'process': '', 'url': ''} self.last_scroll = {button: 0 for button in SCROLL_BUTTONS} self.last_key_time = time.time() self.last_move_time = time.time() self.last_commit = time.time() self.last_screenshot = time.time() self.last_experience = time.time() self.screenshots_active = True self.screenshot_time_min = 0.2 self.screenshot_time_max = 60 self.exp_time = 120 # time before first experience sample shows self.thumbdrive_time = 10 self.addObservers() self.started = NOW()