X-Git-Url: http://git.maemo.org/git/?a=blobdiff_plain;f=src%2Fgv_backend.py;h=51ea323ba8f887261f4dc33e5cfaf91c50cecaeb;hb=032aefc5c32c2ad7f1cb2a4247083818c63d8beb;hp=21b8ddce7508ffe25286edee368515b6d4304395;hpb=641e0ea7cb953903458929e54ad09373f5e028f2;p=gc-dialer
diff --git a/src/gv_backend.py b/src/gv_backend.py
index 21b8ddc..51ea323 100644
--- a/src/gv_backend.py
+++ b/src/gv_backend.py
@@ -492,7 +492,17 @@ class GVDialer(object):
_voicemailNumberRegex = re.compile(r"""""", re.MULTILINE)
_prettyVoicemailNumberRegex = re.compile(r"""(.*?)""", re.MULTILINE)
_voicemailLocationRegex = re.compile(r""".*?(.*?)""", re.MULTILINE)
- _voicemailMessageRegex = re.compile(r"""(.*?)""", re.MULTILINE)
+ #_voicemailMessageRegex = re.compile(r"""(.*?)""", re.MULTILINE)
+ #_voicemailMessageRegex = re.compile(r"""(.*?)""", re.MULTILINE)
+ _voicemailMessageRegex = re.compile(r"""((.*?)|(.*?))""", re.MULTILINE)
+
+ @staticmethod
+ def _interpret_voicemail_regex(group):
+ quality, content, number = group.group(2), group.group(3), group.group(4)
+ if quality is not None and content is not None:
+ return quality, content
+ elif number is not None:
+ return "high", number
def _parse_voicemail(self, voicemailHtml):
splitVoicemail = self._seperateVoicemailsRegex.split(voicemailHtml)
@@ -514,7 +524,7 @@ class GVDialer(object):
messageGroups = self._voicemailMessageRegex.finditer(messageHtml)
messageParts = (
- (group.group(1).strip(), group.group(2).strip())
+ self._interpret_voicemail_regex(group)
for group in messageGroups
) if messageGroups else ()
@@ -621,7 +631,7 @@ def test_backend(username, password):
print "Account: ", backend.get_account_number()
print "Callback: ", backend.get_callback_number()
# print "All Callback: ",
- #import pprint
+ import pprint
# pprint.pprint(backend.get_callback_numbers())
# print "Recent: ",
# pprint.pprint(list(backend.get_recent()))
@@ -629,5 +639,7 @@ def test_backend(username, password):
# for contact in backend.get_contacts():
# print contact
# pprint.pprint(list(backend.get_contact_details(contact[0])))
+ for message in backend.get_messages():
+ pprint.pprint(message)
return backend