Fixing notifiers, improving sound notifiers, and bumping to -4
authorepage <eopage@byu.net>
Tue, 5 Jan 2010 03:45:27 +0000 (03:45 +0000)
committerepage <eopage@byu.net>
Tue, 5 Jan 2010 03:45:27 +0000 (03:45 +0000)
git-svn-id: file:///svnroot/gc-dialer/trunk@610 c39d3808-3fe2-4d86-a59f-b7f623ee9f21

src/alarm_notify.py
src/constants.py
src/examples/sound_notifier.py
support/builddeb.py

index d71b030..00c489d 100755 (executable)
@@ -4,25 +4,26 @@ import os
 import filecmp
 import ConfigParser
 import pprint
+import logging
 
 import constants
-from backends import gv_backend
+from backends import gvoice
 
 
 def get_missed(backend):
-       missedPage = backend._browser.download(backend._missedCallsURL)
+       missedPage = backend._browser.download(backend._XML_MISSED_URL)
        missedJson = backend._grab_json(missedPage)
        return missedJson
 
 
 def get_voicemail(backend):
-       voicemailPage = backend._browser.download(backend._voicemailURL)
+       voicemailPage = backend._browser.download(backend._XML_VOICEMAIL_URL)
        voicemailJson = backend._grab_json(voicemailPage)
        return voicemailJson
 
 
 def get_sms(backend):
-       smsPage = backend._browser.download(backend._smsURL)
+       smsPage = backend._browser.download(backend._XML_SMS_URL)
        smsJson = backend._grab_json(smsPage)
        return smsJson
 
@@ -30,6 +31,11 @@ def get_sms(backend):
 def remove_reltime(data):
        for messageData in data["messages"].itervalues():
                del messageData["relativeStartTime"]
+               del messageData["labels"]
+               del messageData["isRead"]
+               del messageData["isSpam"]
+               del messageData["isTrash"]
+               del messageData["star"]
 
 
 def is_type_changed(backend, type, get_material):
@@ -71,7 +77,7 @@ def is_type_changed(backend, type, get_material):
 
 def create_backend(config):
        gvCookiePath = os.path.join(constants._data_path_, "gv_cookies.txt")
-       backend = gv_backend.GVDialer(gvCookiePath)
+       backend = gvoice.GVoiceBackend(gvCookiePath)
 
        loggedIn = False
 
@@ -136,10 +142,22 @@ def notify_on_change():
        notifyUser = is_changed(config, backend)
 
        if notifyUser:
+               logging.info("Changed")
                import led_handler
                led = led_handler.LedHandler()
                led.on()
+       else:
+               logging.info("No Change")
 
 
 if __name__ == "__main__":
-       notify_on_change()
+       logging.basicConfig(level=logging.DEBUG, filename=constants._notifier_logpath_)
+       logging.info("Notifier %s-%s" % (constants.__version__, constants.__build__))
+       logging.info("OS: %s" % (os.uname()[0], ))
+       logging.info("Kernel: %s (%s) for %s" % os.uname()[2:])
+       logging.info("Hostname: %s" % os.uname()[1])
+       try:
+               notify_on_change()
+       except:
+               logging.exception("Error")
+               raise
index eb84f53..6116584 100644 (file)
@@ -3,8 +3,10 @@ import os
 __pretty_app_name__ = "DialCentral"
 __app_name__ = "dialcentral"
 __version__ = "1.0.10"
-__build__ = 3
+__build__ = 4
 __app_magic__ = 0xdeadbeef
 _data_path_ = os.path.join(os.path.expanduser("~"), ".dialcentral")
 _user_settings_ = "%s/settings.ini" % _data_path_
+_custom_notifier_settings_ = "%s/notifier.ini" % _data_path_
 _user_logpath_ = "%s/dialcentral.log" % _data_path_
+_notifier_logpath_ = "%s/notifier.log" % _data_path_
index 2df7b45..97cf106 100644 (file)
@@ -1,7 +1,9 @@
 #!/usr/bin/env python
 
+import os
 import sys
 import ConfigParser
+import logging
 
 
 sys.path.insert(0,"/usr/lib/dialcentral/")
@@ -17,13 +19,30 @@ def notify_on_change():
        backend = alarm_notify.create_backend(config)
        notifyUser = alarm_notify.is_changed(config, backend)
 
+       config = ConfigParser.SafeConfigParser()
+       config.read(constants._custom_notifier_settings_)
+       soundFile = config.get("Sound Notifier", "soundfile")
+       soundFile = "/usr/lib/gv-notifier/alert.mp3"
+
        if notifyUser:
                import subprocess
                import led_handler
+               logging.info("Changed, playing %s" % soundFile)
                led = led_handler.LedHandler()
                led.on()
-               soundOn = subprocess.call("/usr/bin/dbus-send --dest=com.nokia.osso_media_server --print-reply /com/nokia/osso_media_server com.nokia.osso_media_server.music.play_media string:file:///usr/lib/gv-notifier/alert.mp3",shell=True)
+               soundOn = subprocess.call("/usr/bin/dbus-send --dest=com.nokia.osso_media_server --print-reply /com/nokia/osso_media_server com.nokia.osso_media_server.music.play_media string:file://%s",shell=True)
+       else:
+               logging.info("No Change")
 
 
 if __name__ == "__main__":
-       notify_on_change()
+       logging.basicConfig(level=logging.DEBUG, filename=constants._notifier_logpath_)
+       logging.info("Sound Notifier %s-%s" % (constants.__version__, constants.__build__))
+       logging.info("OS: %s" % (os.uname()[0], ))
+       logging.info("Kernel: %s (%s) for %s" % os.uname()[2:])
+       logging.info("Hostname: %s" % os.uname()[1])
+       try:
+               notify_on_change()
+       except:
+               logging.exception("Error")
+               raise
index 435f983..29f4fa4 100755 (executable)
@@ -38,6 +38,7 @@ __changelog__ = """
 * Added a filter for the Call History
 * Bugfix: Messages tab not showing all of a message in Fremantle
 * Bugfix: When selecting a message, the wrong message is displayed in the Send SMS dialog
+* Bugfix: Removing some false positives for notification
 
 1.0.9
 * Added .deb packages for generic linux
@@ -222,6 +223,7 @@ __changelog__ = """
 __postinstall__ = """#!/bin/sh -e
 
 gtk-update-icon-cache -f /usr/share/icons/hicolor
+rm -f ~/.dialcentral/notifier.log
 rm -f ~/.dialcentral/dialcentral.log
 """