X-Git-Url: http://git.maemo.org/git/?p=theonering;a=blobdiff_plain;f=src%2Ftelepathy-theonering;h=baf7dae0a80f601167d66a10a28d63bee8ac30bb;hp=a98f62eb15eef19c03b7f6e888b860e761dfbe9a;hb=5bfb4228f1fff939aa06dfbe446cf17b5ce3ed76;hpb=4d0d9c74b85639d2130325d8452cc7c5e5d607da diff --git a/src/telepathy-theonering b/src/telepathy-theonering index a98f62e..baf7dae 100755 --- a/src/telepathy-theonering +++ b/src/telepathy-theonering @@ -1,89 +1,11 @@ -#!/usr/bin/env python +#!/usr/bin/python -""" -Telepathy-TheOneRing - Telepathy plugin for GoogleVoice -Copyright (C) 2009 Ed Page eopage AT byu DOT net - -This library is free software; you can redistribute it and/or -modify it under the terms of the GNU Lesser General Public -License as published by the Free Software Foundation; either -version 2.1 of the License, or (at your option) any later version. - -This library is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -Lesser General Public License for more details. - -You should have received a copy of the GNU Lesser General Public -License along with this library; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -""" - -import os import sys -import signal -import logging -import gobject - -import dbus.glib -import telepathy.utils as telepathy_utils - -import util.linux as linux_utils -import util.go_utils as gobject_utils -import constants -import connection_manager - - -IDLE_TIMEOUT = 5000 - - -def run_theonering(persist): - linux_utils.set_process_name(constants.__app_name__) - - try: - os.makedirs(constants._data_path_) - except OSError, e: - if e.errno != 17: - raise - - @gobject_utils.async - def quit(): - manager.quit() - mainloop.quit() - - def timeout_cb(): - if len(manager._connections) == 0: - logging.info('No connection received - quitting') - quit() - return False - - if persist: - shutdown_callback = None - else: - gobject.timeout_add(IDLE_TIMEOUT, timeout_cb) - shutdown_callback = quit - - signal.signal(signal.SIGTERM, quit) - - try: - manager = connection_manager.TheOneRingConnectionManager(shutdown_func=shutdown_callback) - except dbus.exceptions.NameExistsException: - logging.warning('Failed to acquire bus name, connection manager already running?') - sys.exit(1) - - mainloop = gobject.MainLoop(is_running=True) +sys.path.insert(0, "/usr/lib/theonering") - while mainloop.is_running(): - try: - mainloop.run() - except KeyboardInterrupt: - quit() +import theonering -if __name__ == '__main__': - telepathy_utils.debug_divert_messages(os.getenv('THEONERING_LOGFILE')) - logging.basicConfig(level=logging.DEBUG) - persist = 'THEONERING_PERSIST' in os.environ - persist = True - run_theonering(persist) +if __name__ == "__main__": + theonering.main(logToFile=True)