From: Dennis R. <de...@re...> - 2010-04-14 02:41:42
|
A followup on the exception report. If the exception below occurs while phone data is being merged with existing data, the phonebook data will appear to be deleted. You can verify that phonebook data is present in bitpim.db by invoking sqlite3 and doing some queries, but somehow the phonebook data is not found by BitPim. Sorry that I can't identify exactly what's happened to the data, if anyone wants me to check something in particular, just ask. Multimedia files and calendar entries in bitpim.db are still accessible from within the BitPim application. On Sun, 2010-04-11 at 16:04 -0400, Dennis Reichel wrote: > There is an error importing phone book "category" data from the LG > VX5500. > > using official BitPim 1.0.7. System: Fedora 12 on a Thinkpad. > > Some Installation Notes: > > It was necessary to install the expat compat lib. IIRC, the missing > dependency was: libexpat.so.0 (it might be worth adding this to the > documentation about libstdc++) > > The udev permissions didn't seem to be working so I made my own > udev/rules.d/60-cellusers rule and group permission 660 - possibly after > a reboot the way your install would also have worked (the group approach > seemed nicer) The rpm install, however uses an obsolete utility: > udevinfo, which advises to use udevadm. (More than likely a reboot > would have allowed BitPim to to work.) For no reboot the command was: > udevadm control --reload-rules now BitPim communicates with the VX 5500 > phone fine. > > Bug Report: > > This bug is also mentioned in: > Re: [BitPim-user] exception when important contacts from LG VX-5500 > Daniel Neuberger <daniel.neuberger@gm...> 6 2010-02-24 18:23 > UnicodeEncodeError: 'ascii' codec can't encode character u'\u0300' in > position 0: ordinal not in range(128) > ... although the offending char there is: u'\u0300', while mine is: > u'\u0200' > > It looks like BitPim is treating the VX-5500 "Groups" like it's > something that can/should be mapped to BitPim "Categories". VX5500 > limits each group to 10 members. In VX5500 "No Group" is not a group, > it's just no group membership assigned to a contact. With this design, > it may not be practical for each contact in a phonebook to be assigned > to a group. On the other hand, it may be practical for BitPim to create > a special group: __NullGroup or some such name that should not be expect > to cause a namespace conflict. > > I added one member to each of the factory defined VX5500 groups, as well > as creating a few user defined groups on the phone, giving each of them > one member. When I brought the phonebook into BitPim, the category > field for these entries was blank. Note that the other phonebook > records still are showing the A-umlaut character. After reviewing the > acquired data and upon proceeding to import into the BitPim database, > the execption below occurred. > > The exception in this report occurs after the phonebook is retrieved > from the VX 5500 and has been reviewed, while it is being saved to the > database. BitPim appears to be barfing on the field "Category" which as > BitPim allows me to review the data before adding it to the database, > category is represented as a single upper case A with two dots above it. > (either A-diaeresis and A-umlaut - I'm not sure what to call it). > > So while reviewing (in BitPim) the data from the phone I added a new > category "Default" and edited all the contacts to be the "Default" > category and the phonebook imports fine. > > Here's the exception report: > > BitPim version: 1.0.7-unofficial > An unexpected exception has occurred. > Please see the help for details on what to do. > > Traceback (most recent call last): > File "src/gui.py", line 1784, in OnCallback > File "src/gui.py", line 183, in __call__ > File "src/gui.py", line 140, in __call__ > File "src/gui.py", line 1383, in OnDataGetPhoneResults > File "src/phonebook.py", line 1310, in importdata > File "src/phonebook.py", line 1248, in populate > UnicodeEncodeError: 'ascii' codec can't encode character u'\u0200' in > position 0: ordinal not in range(128) > > Variables by last 8 frames, innermost last > > Frame OnCallback in src/gui.py at line 1784 > self = <gui.MainWindow; proxy of <Swig Object of type > 'wxFrame *' at 0x9e51cb8> > > event = <gui.HelperReturnEvent; proxy of <Swig Object of type > 'wxPyEvent *' at 0xaacaeb3 > > Frame __call__ in src/gui.py at line 183 > self = <gui.HelperReturnEvent; proxy of <Swig Object of type > 'wxPyEvent *' at 0xaacaeb3 > > Frame __call__ in src/gui.py at line 140 > self = <gui.Callback instance at 0xa407eac> > args = (None, {'phonebook': {0: {'serials': [{'serial2': 6, > 'serial1': 6, 'sourcetype': > d = Keys [] > {} > kwargs = Keys [] > {} > > Frame OnDataGetPhoneResults in src/gui.py at line 1454 > self = <gui.MainWindow; proxy of <Swig Object of type > 'wxFrame *' at 0x9e51cb8> > > merge = True > exception = None > results = Keys ['categories', 'groups', 'phonebook', > 'ringtone-index', 'sync', 'uniqueserial', 'wallpaper-index'] > {'phonebook': {0: {'serials': [{'serial2': 6, > 'serial1': 6, 'sourcetype': 'lgvx5 > v = 'MERGE' > > Frame importdata in src/phonebook.py at line 1310 > importdata = Keys [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, > 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, > 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, > 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, > 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, > 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, > 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, > 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, > 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, > 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, > 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, > 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, > 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, > 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, > 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, > 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, > 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, > 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, > 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, > 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, > 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, > 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, > 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, > 341, 342, 343, 344, 345] > {0: {'serials': [{'serial2': 6, 'serial1': 6, > 'sourcetype': 'lgvx5500', 'sourceu > dlg = <phonebook.ImportDialog; proxy of <Swig Object of > type 'wxDialog *' at 0xaee98c0 > d = Keys ['categories', 'group_wallpapers', 'phonebook'] > {'group_wallpapers': [], 'phonebook': {0: {'serials': > [{'serial2': 6, 'serial1': > self = <phonebook.PhoneWidget; proxy of <Swig Object of type > 'wxPanel *' at 0xa4bf640> > groupwpsinfo = [] > merge = True > result = Keys [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, > 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, > 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, > 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, > 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, > 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, > 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, > 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, > 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, > 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, > 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, > 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, > 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, > 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, > 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, > 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, > 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, > 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, > 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, > 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, > 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, > 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, > 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, > 341, 342, 343, 344, 345] > {0: {'serials': [{'serial2': 6, 'serial1': 6, > 'sourcetype': 'lgvx5500', 'sourceu > categoriesinfo = [u'\u0200', u'\u4600\u6100\u6d00\u6900\u6c00\u7900'] > retcode = 5100 > > Frame populate in src/phonebook.py at line 1248 > savetodb = False > i = 2 > self = <phonebook.PhoneWidget; proxy of <Swig Object of type > 'wxPanel *' at 0xa4bf640> > cat = Keys ['category'] > {'category': u'\u0200'} > pb = Keys [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, > 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, > 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, > 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, > 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, > 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, > 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, > 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, > 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, > 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, > 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, > 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, > 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, > 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, > 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, > 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, > 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, > 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, > 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, > 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, > 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, > 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, > 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, > 341, 342, 343, 344, 345] > {0: {'serials': [{'serial2': 6, 'serial1': 6, > 'sourcetype': 'lgvx5500', 'sourceu > cats = [u'\u0200'] > dict = Keys ['categories', 'group_wallpapers', 'phonebook'] > {'group_wallpapers': [], 'phonebook': {0: {'serials': > [{'serial2': 6, 'serial1': > pb_groupwps = [] > > > Regards, Dennis Reichel > ------------------------------------------------------------------------------------------------- > > |