From: Alan P. <api...@ma...> - 2003-04-03 19:48:51
|
Hi all- I just got an LG VX 4400 and managed to get it working with Mac OS X. Since it took me a while and I had to gather info from many places, I decided to document what I did to share with others: http://videogamexchange.com/sites/lg4400/ Also, I'd like to contribute to the Mac dev track if my help is desired. Although BitPim works, and is cool, I'd like to help make it better! Specifically the #1 thing to do is importing vCard entries to the contact list. This was my main hope for BitPim as I want to put about 100 contacts on and don't want to do it manually... how would I get involved? Thanks, Alan |
From: Roger B. <ro...@ro...> - 2003-04-04 00:49:08
|
> Also, I'd like to contribute to the Mac dev track if my help is > desired. Although BitPim works, and is cool, I'd like to help make it > better! I welcome all contributions. What would be most immediately useful is some sort of installable image so that people don't have to go through the hoops you did. > Specifically the #1 thing to do is importing vCard entries to the > contact list. This was my main hope for BitPim as I want to put about > 100 contacts on and don't want to do it manually... See this message: http://sourceforge.net/mailarchive/message.php?msg_id=4245003 > how would I get involved? Check out the CVS tree and start hacking. I have mostly been working on the calendar for 0.6. The code to read the calendar turned out to be about 30 lines. The user interface is already around 2000 and growing. It is taking way more effort than I thought! Roger |
From: Tim L. <tl...@ve...> - 2003-04-04 04:29:37
|
> I welcome all contributions. What would be most immediately useful > is some sort of installable image so that people don't have to go > through the hoops you did. Yes, this would be most useful for potential Mac users. My time has been limited to a few hours a couple times a week. I know I won't get to anytime soon. I'm still learning Python and have recently picked up a book. Tim |
From: Alan P. <api...@ma...> - 2003-04-04 06:31:17
|
Well the easier it is to install, the more people that will use it, and the more fun this will be... so I think that I'll focus my work on a Mac installer and vCard importing. I haven't done *any* python yet, but it looks pretty straightforward from the code I've seen, so this should be a fun learning project. As for the installer, I would like to have a discussion on this a bit. Particularly, should the goal be to create a monolithic installer for all of the pieces I describe on the site? If so, is it even legal since the pieces come from so many places? I don't have a Win machine handy... what's the approach for Windows? Thanks, Alan On Thursday, April 3, 2003, at 11:29 PM, Tim Lowery wrote: >> I welcome all contributions. What would be most immediately useful >> is some sort of installable image so that people don't have to go >> through the hoops you did. > > Yes, this would be most useful for potential Mac users. My time has > been limited to a few hours a couple times a week. I know I won't get > to anytime soon. I'm still learning Python and have recently picked > up a book. > > Tim > > > > ------------------------------------------------------- > This SF.net email is sponsored by: ValueWeb: Dedicated Hosting for > just $79/mo with 500 GB of bandwidth! No other company gives more > support or power for your dedicated server > http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ > _______________________________________________ > Bitpim-devel mailing list > Bit...@li... > https://lists.sourceforge.net/lists/listinfo/bitpim-devel |
From: Roger B. <ro...@ro...> - 2003-04-04 16:58:58
|
> As for the installer, I would like to have a discussion on this a bit. > Particularly, should the goal be to create a monolithic installer for > all of the pieces I describe on the site? If so, is it even legal since > the pieces come from so many places? I would prefer that it looks, feels and installs like a normal Mac application. This pretty much means it should be monolithic with no external dependencies. There should be no legal issues. See the acknowledgements at the bottom of http://bitpim.sourceforge.net/readme.html For Windows, I use py2exe to generate the base runtime code. The output is an executable with all the Python files embedded and the Python DLL seperately. The executable basically loads the Python DLL and sets itself up on the import path. py2exe also finds all other dependent DLLs such as the ones used for wxWindows and wxPython. Here is a directory listing: .: PyWinTypes22.dll* bitpim.exe* python22.dll* win32event.pyd* wxmsw24h.dll* _sre.pyd* gridc.pyd* resources/ win32file.pyd* _winreg.pyd* select.pyd* wxc.pyd* ./resources: unknown.png (The resources subdirectory contains various toolbar bitmaps etc. but I have only made unknown so far). I then use InnoSetup to turn this into a single binary which is the installer. On Linux I plan for two different installers. One will be pure RPM and will have dependencies etc. The other will be monolithic based on above. The only program I have found that works on Linux to help is McMillan installer http://www.mcmillan-inc.com/install5_ann.html Roger |
From: Alan P. <api...@ma...> - 2003-04-04 17:05:25
|
Cool. That's a great starting point. I'll look into that a bit. I have an old Mac OS X developer kit (my license ran out) but hopefully it's enough to build an installer. Thanks, Alan On Friday, April 4, 2003, at 11:59 AM, Roger Binns wrote: >> As for the installer, I would like to have a discussion on this a bit. >> Particularly, should the goal be to create a monolithic installer for >> all of the pieces I describe on the site? If so, is it even legal >> since >> the pieces come from so many places? > > I would prefer that it looks, feels and installs like a normal > Mac application. This pretty much means it should be monolithic > with no external dependencies. > > There should be no legal issues. See the acknowledgements at the > bottom > of http://bitpim.sourceforge.net/readme.html > > For Windows, I use py2exe to generate the base runtime code. The > output > is an executable with all the Python files embedded and the Python DLL > seperately. The executable basically loads the Python DLL and sets > itself > up on the import path. py2exe also finds all other dependent DLLs such > as the ones used for wxWindows and wxPython. > > Here is a directory listing: > > .: > PyWinTypes22.dll* bitpim.exe* python22.dll* win32event.pyd* > wxmsw24h.dll* > _sre.pyd* gridc.pyd* resources/ win32file.pyd* > _winreg.pyd* select.pyd* wxc.pyd* > > ./resources: > unknown.png > > (The resources subdirectory contains various toolbar bitmaps etc. but > I have only > made unknown so far). > > I then use InnoSetup to turn this into a single binary which is the > installer. > > On Linux I plan for two different installers. One will be pure RPM > and will > have dependencies etc. The other will be monolithic based on above. > The only > program I have found that works on Linux to help is McMillan installer > http://www.mcmillan-inc.com/install5_ann.html > > Roger > > > > ------------------------------------------------------- > This SF.net email is sponsored by: ValueWeb: > Dedicated Hosting for just $79/mo with 500 GB of bandwidth! > No other company gives more support or power for your dedicated server > http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ > _______________________________________________ > Bitpim-devel mailing list > Bit...@li... > https://lists.sourceforge.net/lists/listinfo/bitpim-devel |
From: Tim L. <tl...@ve...> - 2003-04-04 17:51:07
|
Take a look at PackageMaker in the /Developer/Applications folder. Documentation is a problem, but if you Google search for "packagemaker tutorial" you'll find some links. Also worth searching Apple's website for notes. Tim On Friday, April 4, 2003, at 09:05 AM, Alan Pinstein wrote: > Cool. That's a great starting point. I'll look into that a bit. I have > an old Mac OS X developer kit (my license ran out) but hopefully it's > enough to build an installer. > > Thanks, > Alan > > > > On Friday, April 4, 2003, at 11:59 AM, Roger Binns wrote: > >>> As for the installer, I would like to have a discussion on this a >>> bit. >>> Particularly, should the goal be to create a monolithic installer for >>> all of the pieces I describe on the site? If so, is it even legal >>> since >>> the pieces come from so many places? >> >> I would prefer that it looks, feels and installs like a normal >> Mac application. This pretty much means it should be monolithic >> with no external dependencies. >> >> There should be no legal issues. See the acknowledgements at the >> bottom >> of http://bitpim.sourceforge.net/readme.html >> >> For Windows, I use py2exe to generate the base runtime code. The >> output >> is an executable with all the Python files embedded and the Python DLL >> seperately. The executable basically loads the Python DLL and sets >> itself >> up on the import path. py2exe also finds all other dependent DLLs >> such >> as the ones used for wxWindows and wxPython. >> >> Here is a directory listing: >> >> .: >> PyWinTypes22.dll* bitpim.exe* python22.dll* win32event.pyd* >> wxmsw24h.dll* >> _sre.pyd* gridc.pyd* resources/ win32file.pyd* >> _winreg.pyd* select.pyd* wxc.pyd* >> >> ./resources: >> unknown.png >> >> (The resources subdirectory contains various toolbar bitmaps etc. but >> I have only >> made unknown so far). >> >> I then use InnoSetup to turn this into a single binary which is the >> installer. >> >> On Linux I plan for two different installers. One will be pure RPM >> and will >> have dependencies etc. The other will be monolithic based on above. >> The only >> program I have found that works on Linux to help is McMillan installer >> http://www.mcmillan-inc.com/install5_ann.html >> >> Roger >> >> >> >> ------------------------------------------------------- >> This SF.net email is sponsored by: ValueWeb: >> Dedicated Hosting for just $79/mo with 500 GB of bandwidth! >> No other company gives more support or power for your dedicated server >> http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ >> _______________________________________________ >> Bitpim-devel mailing list >> Bit...@li... >> https://lists.sourceforge.net/lists/listinfo/bitpim-devel > > > > ------------------------------------------------------- > This SF.net email is sponsored by: ValueWeb: Dedicated Hosting for > just $79/mo with 500 GB of bandwidth! No other company gives more > support or power for your dedicated server > http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ > _______________________________________________ > Bitpim-devel mailing list > Bit...@li... > https://lists.sourceforge.net/lists/listinfo/bitpim-devel > |
From: Alan P. <api...@ma...> - 2003-04-05 20:01:00
|
Good news! I have just succeeded at writing a nice vCard parser for bitpim based on the approach in this message: http://sourceforge.net/mailarchive/message.php?msg_id=4245003 I used it against my own Address Book export and successfully put in 74 contacts to my phone. The phone supports up to 5 phone numbers and 3 emails. Since vCard supports arbitrary numbers of these, I basically go through the vCard and "fill up" the following structure until it's full: Full Name 2 home 2 office 2 mobile 2 fax pager 3 emails Each are truncated if they exceed the LG's maximums (22 chr names, 48 chr phone & email). Since the vCard format includes type=(HOME|CELL|WORK|PAGER|FAX) it's trivial to properly setup the LG type mappings. I then strip all non-digits from the phone numbers and construct the result['phonebook'] structure. That structure then must be added to the .bitpim-files/phonebook/index.idx file. The result was wonderful. Right now it's all in a self-contained code chunk. I am going to work on integrated it with the GUI next. If anyone's interested in the code, let me know. Also, what's the process for getting a cvs login for commits? Thanks, Alan On Thursday, April 3, 2003, at 07:49 PM, Roger Binns wrote: >> Specifically the #1 thing to do is importing vCard entries to the >> contact list. This was my main hope for BitPim as I want to put about >> 100 contacts on and don't want to do it manually... > > See this message: > > http://sourceforge.net/mailarchive/message.php?msg_id=4245003 > >> how would I get involved? > > Check out the CVS tree and start hacking. > |
From: Roger B. <ro...@ro...> - 2003-04-05 20:45:07
|
> The result was wonderful. Right now it's all in a self-contained code > chunk. I am going to work on integrated it with the GUI next. I'd prefer to do the gui work, so I can make it fit in with the master plan. I'm also intending to support multiple phones in the future so I'd like to rework this to make that fit in well. Can you use the SF patch manager to submit a single file that is your code. My preference is that it has a block at the bottom: if __name__=='__main__': dostuff Where dostuff is effectively a test of the code (this is standard Python practise). Also please make sure pychecker is happy with the file. > Also, what's the > process for getting a cvs login for commits? Submit a few patches. When I like what I see, Ill add you. Roger |
From: Alan P. <api...@ma...> - 2003-04-06 00:53:02
|
I apologize in advance if this is a silly question, but I think I am missing something: Right now the way my code works is you call it with "python AddressBookImporter.py". So when I add the __main__ method, my code doesn't run. So basically, if I put a __main__ in now I don't know how to run my code... Should I just create an interface so that a wrapper py script must be used to exec my code? Alan On Saturday, April 5, 2003, at 03:45 PM, Roger Binns wrote: >> The result was wonderful. Right now it's all in a self-contained code >> chunk. I am going to work on integrated it with the GUI next. > > I'd prefer to do the gui work, so I can make it fit in with the master > plan. I'm also intending to support multiple phones in the future > so I'd like to rework this to make that fit in well. > > Can you use the SF patch manager to submit a single file that is > your code. My preference is that it has a block at the bottom: > > if __name__=='__main__': > dostuff > > Where dostuff is effectively a test of the code (this is standard > Python practise). Also please make sure pychecker is happy with > the file. > >> Also, what's the >> process for getting a cvs login for commits? > > Submit a few patches. When I like what I see, Ill add you. > > Roger > > > ------------------------------------------------------- > This SF.net email is sponsored by: ValueWeb: > Dedicated Hosting for just $79/mo with 500 GB of bandwidth! > No other company gives more support or power for your dedicated server > http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ > _______________________________________________ > Bitpim-devel mailing list > Bit...@li... > https://lists.sourceforge.net/lists/listinfo/bitpim-devel |
From: Alan P. <api...@ma...> - 2003-04-06 22:45:06
|
Roger- Ok, I have checked it with pychecker and it's all good now (it nicely found a couple of issues, nice tool!). I have uploaded the patch here: http://sourceforge.net/tracker/ index.php?func=detail&atid=543252&aid=716417&group_id=75211 I did create a main but I still didn't know what interface to give it for a more general purpose. Since it currently outputs the index.idx file, I would imagine that instead it should manipulate the phonebook entries through an object interface directly... let me know if you want me to integrate that part. Enjoy, Alan On Saturday, April 5, 2003, at 03:45 PM, Roger Binns wrote: >> The result was wonderful. Right now it's all in a self-contained code >> chunk. I am going to work on integrated it with the GUI next. > > I'd prefer to do the gui work, so I can make it fit in with the master > plan. I'm also intending to support multiple phones in the future > so I'd like to rework this to make that fit in well. > > Can you use the SF patch manager to submit a single file that is > your code. My preference is that it has a block at the bottom: > > if __name__=='__main__': > dostuff > > Where dostuff is effectively a test of the code (this is standard > Python practise). Also please make sure pychecker is happy with > the file. > >> Also, what's the >> process for getting a cvs login for commits? > > Submit a few patches. When I like what I see, Ill add you. > > Roger > > > ------------------------------------------------------- > This SF.net email is sponsored by: ValueWeb: > Dedicated Hosting for just $79/mo with 500 GB of bandwidth! > No other company gives more support or power for your dedicated server > http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ > _______________________________________________ > Bitpim-devel mailing list > Bit...@li... > https://lists.sourceforge.net/lists/listinfo/bitpim-devel |
From: Roger B. <ro...@ro...> - 2003-04-08 03:42:19
|
> http://sourceforge.net/tracker/ > index.php?func=detail&atid=543252&aid=716417&group_id=75211 I am busy merging this now. I do have a request. Could you possibly generate vcard file(s) for me to test with? What I want to do is make a tests subdirectory with various things in it, so several vcard files would be good, including ones that are broken, have too much data, have more fields than phone can cope with, and some that are "normal" :-) Roger |
From: Alan P. <api...@ma...> - 2003-04-11 16:18:53
Attachments:
McTest Testy.vcf
|
Here you go. I put in a TON of fields. It's just a text file, so you can copy/paste more BEGIN->END blocks to add addresses to the same file, and then edit the lines to change test parameters. This is basically every field that the Mac's ADDRESS BOOK will handle. This should hit all the max's in my code: [17.18]:> /usr/local/bin/python vcard.py Main test Already found 3 emails. No more will fit. Already found 2 home numbers. No more will fit. Already found 2 cell numbers. No more will fit. Found and processed 1 vCard entries. result['phonebook']={0: {'?offset111': 0, '?offset20c': 0, 'memo': '', 'number4': '4045551219', 'number5': '4045551210', 'number2': '4045551212', 'number3': '4045551213', 'number1': '4045551215', 'type5': 1, 'type4': 6, 'email2': 'ho...@bi...\r', 'email3': 'mo...@bi...\r', 'type3': 4, 'email1': 'wo...@bi...\r', 'serial2': 0, 'serial1': 0, 'group': 0, 'name': 'Testy\r McTest', 'url': '', 'type1': 0, 'msgringtone': 0, 'ringtone': 0, 'secret': False, '?offset00f': 0, 'type2': 2, '?offset028': 0}} Let me know if you want more, but it should be easy for you to generate any test cases you want from this. Enjoy, Alan On Monday, April 7, 2003, at 11:42 PM, Roger Binns wrote: >> http://sourceforge.net/tracker/ >> index.php?func=detail&atid=543252&aid=716417&group_id=75211 > > I am busy merging this now. I do have a request. Could you > possibly generate vcard file(s) for me to test with? What > I want to do is make a tests subdirectory with various things > in it, so several vcard files would be good, including ones > that are broken, have too much data, have more fields than > phone can cope with, and some that are "normal" :-) > > Roger > > > ------------------------------------------------------- > This SF.net email is sponsored by: ValueWeb: > Dedicated Hosting for just $79/mo with 500 GB of bandwidth! > No other company gives more support or power for your dedicated server > http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ > _______________________________________________ > Bitpim-devel mailing list > Bit...@li... > https://lists.sourceforge.net/lists/listinfo/bitpim-devel |
From: Roger B. <ro...@ro...> - 2003-04-08 06:20:56
|
> I have uploaded the patch here: The code is now in CVS as vcard.py It certainly raises some issues. The phone doesn't allow you to have multiple numbers of the same type (eg three labelled as 'home'), but it does allow that to be uploaded. I haven't figured out why yet. There is also a 'none' type. I'm thinking that the best interface will be one that gives you an import report afterwards. I also need to abstract out the phone specific stuff, and put field truncation into the phone upload/download code. Roger |
From: Roger B. <ro...@ro...> - 2003-04-05 20:48:12
|
> Each are truncated if they exceed the LG's maximums (22 chr names, 48 > chr phone & email). I've got to decide what the right thing to do about this is. My feeling is to silently truncate entries when writing them to the phone. Although being a little more intelligent may help (eg removing punctuation first, taking out the middle of long words and replacing with ...) I don't think the import code should have to know about the lengths. It will however have to know about types (one of my bugbears with someone else's software was that there was a 'main' number type that they mapped really badly when converting to something that doesn't have 'main' like the LG). Roger |
From: Alan P. <api...@ma...> - 2003-04-06 18:30:44
|
It definitely depends how generalized you want the whole thing to be... what's the goal for the project? LG only? Other phones? That's an important question. Also, it's practically guaranteed that most phones will support only a subset of what vCard supports. Therefore, some logic will need to determine which numbers to take and which ones to "drop on the floor". Also, there are other issues along the customization axis... for instance, should names be "Last, First" or "First Last". Should this be configurable? Maybe when the user starts the import of a vCard file a "prefs" form should come up to allow the user to make his own customizations?' I read through the vCard spec and there are some cool things.. first of all, pics of people can be embedded in the vCard, which means you could support picture ID from vCard import. Although currently AddressBook on MAC doesn't export images in the vCards. As far as the "main" number goes, in a vCard a particular TEL number can be "preferred" and I think only ONE per card can be, so maybe that'd be a good way to map "main". There's definitely more work I should do to make the parser more generalized to handle some of these issues. Right now I just made it Quick&Dirty so it'd work for me... Alan On Saturday, April 5, 2003, at 03:48 PM, Roger Binns wrote: >> Each are truncated if they exceed the LG's maximums (22 chr names, 48 >> chr phone & email). > > I've got to decide what the right thing to do about this is. My > feeling > is to silently truncate entries when writing them to the phone. > Although > being a little more intelligent may help (eg removing punctuation > first, > taking out the middle of long words and replacing with ...) > > I don't think the import code should have to know about the lengths. > It > will however have to know about types (one of my bugbears with someone > else's software was that there was a 'main' number type that they > mapped > really badly when converting to something that doesn't have 'main' like > the LG). > > Roger > > > ------------------------------------------------------- > This SF.net email is sponsored by: ValueWeb: > Dedicated Hosting for just $79/mo with 500 GB of bandwidth! > No other company gives more support or power for your dedicated server > http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ > _______________________________________________ > Bitpim-devel mailing list > Bit...@li... > https://lists.sourceforge.net/lists/listinfo/bitpim-devel |
From: Tim L. <tl...@ve...> - 2003-04-04 04:27:45
|
Welcome Alan! Good to see another Mac person onboard. > http://videogamexchange.com/sites/lg4400/ Nice summary. > Specifically the #1 thing to do is importing vCard entries to the > contact list. This was my main hope for BitPim as I want to put about > 100 contacts This would be a very useful feature for Mac users. There might be some Python source floating around that parses and/or constructs vCard entries. I noticed that the topic was raised more than once in the Python mailing list. Tim |
From: Roger B. <ro...@ro...> - 2003-04-05 19:15:43
|
> http://videogamexchange.com/sites/lg4400/ One thing I would like to get to the bottom of is the flakyness you are seeing on the Mac. I don't see it on Windows or Linux. I am comng to believe there may be some issues with pySerial in border cases. Roger |
From: Alan P. <api...@ma...> - 2003-04-05 19:46:22
|
I've been playing around a bit more, and have more comments on this: Typically the FIRST time I try to upload/download from the phone I get an error that says "device busy" for /dev/tty.usbserial. The next time it typically, works. However, in some cases the application will seg fault often while doing something. Not sure yet if that's because of app bugs or serial issues... Hope that helps. I'd be happy to help further if you've got ideas. Alan On Saturday, April 5, 2003, at 02:15 PM, Roger Binns wrote: >> http://videogamexchange.com/sites/lg4400/ > > One thing I would like to get to the bottom of is the flakyness > you are seeing on the Mac. I don't see it on Windows or Linux. > I am comng to believe there may be some issues with pySerial in > border cases. > > Roger > > > ------------------------------------------------------- > This SF.net email is sponsored by: ValueWeb: > Dedicated Hosting for just $79/mo with 500 GB of bandwidth! > No other company gives more support or power for your dedicated server > http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ > _______________________________________________ > Bitpim-devel mailing list > Bit...@li... > https://lists.sourceforge.net/lists/listinfo/bitpim-devel |