Potential updates to LGVX9900 support
C Naples <[email protected]>
| Newsgroups | gmane.comp.mobile.bitpim.devel |
|---|---|
| Message-ID | <[email protected]> |
I'm a newbie on this list, so if I'm posting to the wrong place, just let me know. I've worked on the support for the LGVX9900 a bit more. I've "added" support for: - calendar (read/write) - call history (read) - sms (read, write untested) - memo (read/write) This was mostly just "stealing" it from the 8300 and 8500. So much so that I wonder if this phone shouldn't be derived from one of them instead of the 9800. Anyway... This is my first time with Python, so my question is around the legitimacy of the way I added support. Rather than define the packets I just imported them from the appropriate phones on a case-by-case basis. Next, I'd like to let people play with this, how do I go about that? Thanks for all the work on this great tool. Caesar ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ BitPim-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/bitpim-devel
p_lgvx9900.p
(application/octet-stream, 1.5 KB) - not displayed
com_lgvx9900.py
(text/plain, 4.8 KB)
### BITPIM ### ### Copyright (C) 2006 Joe Pham <[email protected]> ### ### This program is free software; you can redistribute it and/or modify ### it under the terms of the BitPim license as detailed in the LICENSE file. ### ### $Id: com_lgvx9900.py 3805 2006-12-26 04:34:33Z djpham $ """ Communicate with the LG VX9900 cell phone, which is a cross between the VX9800 and the VX8500 """ # BitPim modules import common import com_lg import com_lgvx9800 import p_lgvx9900 #------------------------------------------------------------------------------- parentphone=com_lgvx9800.Phone class Phone(com_lg.LGUncountedIndexedMedia, parentphone): "Talk to the LG VX9900 cell phone" desc="LG-VX9900" protocolclass=p_lgvx9900 serialsname='lgvx9900' my_model='VX9900' # rintones and wallpaper info, copy from VX8500, may need to change to match # what the phone actually has external_storage_root='mmc1/' builtinringtones= ('Low Beep Once', 'Low Beeps', 'Loud Beep Once', 'Loud Beeps', 'VZW Default Ringtone') + \ tuple(['Ringtone '+`n` for n in range(1,13)]) + \ ('No Ring',) ringtonelocations= ( # type index file default dir external dir max type Index ( 'ringers', 'dload/myringtone.dat','brew/16452/lk/mr','mmc1/ringers', 100, 0x01, 100), ( 'sounds', 'dload/mysound.dat', 'brew/16452/ms', '', 100, 0x02, None), ( 'sounds(sd)', 'dload/sd_sound.dat', 'mmc1/my_sounds', '', 100, 0x02, None), ( 'music', 'dload/efs_music.dat', 'my_music', '', 100, 0x104, None), ( 'music(sd)', 'dload/sd_music.dat', 'mmc1/my_music', '', 100, 0x14, None), ) wallpaperlocations= ( # type index file default dir external dir max type Index ( 'images', 'dload/image.dat', 'brew/16452/mp', '', 100, 0x00, 100), ( 'images(sd)', 'dload/sd_image.dat', 'mmc1/my_pix', '', 100, 0x10, None), ( 'video', 'dload/video.dat', 'brew/16452/mf', '', 100, 0x03, None), ( 'video(sd)', 'dload/sd_video.dat', 'mmc1/my_flix', '', 100, 0x13, None), ) def __init__(self, logtarget, commport): parentphone.__init__(self, logtarget, commport) #------------------------------------------------------------------------------- parentprofile=com_lgvx9800.Profile class Profile(parentprofile): protocolclass=Phone.protocolclass serialsname=Phone.serialsname BP_Calendar_Version=3 phone_manufacturer='LG Electronics Inc' phone_model='VX9900' WALLPAPER_WIDTH=320 WALLPAPER_HEIGHT=256 imageorigins={} imageorigins.update(common.getkv(parentprofile.stockimageorigins, "images")) imageorigins.update(common.getkv(parentprofile.stockimageorigins, "video")) imageorigins.update(common.getkv(parentprofile.stockimageorigins, "images(sd)")) imageorigins.update(common.getkv(parentprofile.stockimageorigins, "video(sd)")) def GetImageOrigins(self): return self.imageorigins ringtoneorigins=('ringers', 'sounds', 'sounds(sd)',' music', 'music(sd)') excluded_ringtone_origins=('sounds', 'sounds(sd)', 'music', 'music(sd)') # our targets are the same for all origins imagetargets={} imagetargets.update(common.getkv(parentprofile.stockimagetargets, "wallpaper", {'width': 320, 'height': 204, 'format': "JPEG"})) imagetargets.update(common.getkv(parentprofile.stockimagetargets, "outsidelcd", {'width': 160, 'height': 99, 'format': "JPEG"})) def GetTargetsForImageOrigin(self, origin): return self.imagetargets _supportedsyncs=( ('phonebook', 'read', None), # all phonebook reading ('calendar', 'read', None), # all calendar reading ('wallpaper', 'read', None), # all wallpaper reading ('ringtone', 'read', None), # all ringtone reading ('call_history', 'read', None),# all call history list reading ('sms', 'read', None), # all SMS list reading ('memo', 'read', None), # all memo list reading ('phonebook', 'write', 'OVERWRITE'), # only overwriting phonebook ('calendar', 'write', 'OVERWRITE'), # only overwriting calendar ('wallpaper', 'write', 'MERGE'), # merge and overwrite wallpaper ('wallpaper', 'write', 'OVERWRITE'), ('ringtone', 'write', 'MERGE'), # merge and overwrite ringtone ('ringtone', 'write', 'OVERWRITE'), ## ('sms', 'write', 'OVERWRITE'), # all SMS list writing ('memo', 'write', 'OVERWRITE'), # all memo list writing ## ('playlist', 'read', 'OVERWRITE'), ## ('playlist', 'write', 'OVERWRITE'), )