PyXR

c:\projects\bitpim\src \ phones \ com_lgvx8560.py



0001 #!/usr/bin/env python
0002 
0003 ### BITPIM
0004 ###
0005 ### Copyright (C) 2008 Nathan Hjelm <hjelmn@users.sourceforge.net>
0006 ###
0007 ### This program is free software; you can redistribute it and/or modify
0008 ### it under the terms of the BitPim license as detailed in the LICENSE file.
0009 ###
0010 ### $Id: com_lgvx8560.py 4678 2008-08-13 23:46:56Z djpham $
0011 
0012 
0013 """
0014 Communicate with the LG VX8560 cell phone. (aka VX8610)
0015 """
0016 
0017 # BitPim modules
0018 import common
0019 import com_brew
0020 import prototypes
0021 import com_lgvx9700
0022 import p_lgvx8560
0023 import helpids
0024 
0025 #-------------------------------------------------------------------------------
0026 parentphone=com_lgvx9700.Phone
0027 class Phone(parentphone):
0028     desc="LG-VX8560 (Chocolate 3)"
0029     protocolclass=p_lgvx8560
0030     serialsname='lgvx8560'
0031     helpid=helpids.ID_PHONE_LGVX8560
0032     
0033     my_model='VX8560'
0034 
0035     builtinringtones= ('Low Beep Once', 'Low Beeps', 'Loud Beep Once', 'Loud Beeps', 'Door Bell', 'VZW Default Ringtone') + \
0036                       tuple(['Ringtone '+`n` for n in range(1,21)]) + \
0037                       ('No Ring',)
0038 
0039     def setDMversion(self):
0040         self._DMv5 = False
0041         self._DMv6 = True
0042         self._timeout=5 # Assume a quick timeout
0043 
0044     # Fundamentals:
0045     #  - get_esn             - same as LG VX-8300
0046     #  - getgroups           - same as LG VX-8700
0047     #  - getwallpaperindices - LGUncountedIndexedMedia
0048     #  - getringtoneindices  - LGUncountedIndexedMedia
0049     #  - DM Version          - 6
0050     #  - phonebook           - same as LG VX-8550 with HPE entry VX8610
0051     #  - sms                 - same as LG VX-9700
0052 
0053     # Calendar stuff------------------------------------------------------------
0054     def _scheduleextras(self, data, fwversion):
0055         data.serial_number = '000000ca-00000000-00000000-' + fwversion
0056         data.unknown3 = 0x01fa
0057 
0058 #-------------------------------------------------------------------------------
0059 parentprofile=com_lgvx9700.Profile
0060 class Profile(parentprofile):
0061     protocolclass=Phone.protocolclass
0062     serialsname=Phone.serialsname
0063 
0064     BP_Calendar_Version=3
0065     phone_manufacturer='LG Electronics Inc'
0066     phone_model='VX8560'
0067     # inside screen resoluation
0068     WALLPAPER_WIDTH  = 240
0069     WALLPAPER_HEIGHT = 320
0070 
0071     imageorigins={}
0072     imageorigins.update(common.getkv(parentprofile.stockimageorigins, "images"))
0073     imageorigins.update(common.getkv(parentprofile.stockimageorigins, "video"))
0074     imageorigins.update(common.getkv(parentprofile.stockimageorigins, "images(sd)"))
0075     imageorigins.update(common.getkv(parentprofile.stockimageorigins, "video(sd)"))
0076 
0077     # our targets are the same for all origins
0078     imagetargets={}
0079     imagetargets.update(common.getkv(parentprofile.stockimagetargets, "outsidelcd",
0080                                       {'width': 176, 'height': 220, 'format': "JPEG"}))
0081     imagetargets.update(common.getkv(parentprofile.stockimagetargets, "wallpaper",
0082                                       {'width': 240, 'height': 320, 'format': "JPEG"}))
0083     imagetargets.update(common.getkv(parentprofile.stockimagetargets, "pictureid",
0084                                       {'width': 120, 'height': 100, 'format': "JPEG"}))
0085 
0086     _supportedsyncs=(
0087         ('phonebook', 'read', None),  # all phonebook reading
0088         ('calendar', 'read', None),   # all calendar reading
0089         ('wallpaper', 'read', None),  # all wallpaper reading
0090         ('ringtone', 'read', None),   # all ringtone reading
0091         ('call_history', 'read', None),# all call history list reading
0092         ('sms', 'read', None),         # all SMS list reading
0093         ('memo', 'read', None),        # all memo list reading
0094         ('phonebook', 'write', 'OVERWRITE'),  # only overwriting phonebook
0095         ('calendar', 'write', 'OVERWRITE'),   # only overwriting calendar
0096         ('wallpaper', 'write', 'MERGE'),      # merge and overwrite wallpaper
0097         ('wallpaper', 'write', 'OVERWRITE'),
0098         ('ringtone', 'write', 'MERGE'),      # merge and overwrite ringtone
0099         ('ringtone', 'write', 'OVERWRITE'),
0100         ('sms', 'write', 'OVERWRITE'),        # all SMS list writing
0101         ('memo', 'write', 'OVERWRITE'),       # all memo list writing
0102 ##        ('playlist', 'read', 'OVERWRITE'),
0103 ##        ('playlist', 'write', 'OVERWRITE'),
0104         ('t9_udb', 'write', 'OVERWRITE'),
0105         )
0106     if __debug__:
0107         _supportedsyncs+=(
0108         ('t9_udb', 'read', 'OVERWRITE'),
0109         )
0110 

Generated by PyXR 0.9.4