/BlackBerry-Address-Book-to-CSV

A tool for parsing the BlackBerry Address Book binary format (after running barrybackup) to create a CSV

Primary LanguagePythonGNU General Public License v2.0GPL-2.0

INTRO

An open source program named barrybackup allows Linux users to backup their
BlackBerry devices on the Linux system. The result of this program is a
gzipped tar file containing, among other things, the user's Address Book. The
contacts in the Address Book are in a BlackBerry-specific binary format. In
order to support Importing my contacts into GMail (and onto my Android
device), I reverse-engineered the format. The result is a script that exports
the Address Book from a barrybackup tarball to a CSV file.

The script was designed to recognize all of the useful fields in my own
personal backup file. I did not have a BlackBerry to refer to when writing
this program. The program is designed to be easily modified to add more
fields in the future.


SCRIPT CREDITS and USAGE

bbab2csv - BlackBerry Address Book to CSV
by Brandon Mintern, bmintern@gmail.com
Copyright 2011
Licensed under the GPLv2
Hosted on github
 
This program is designed to process the result of a backup produced by
the barrybackup command line program. The result of such a backup is a tarball
at ~/.barry/backup/<PIN>/<PIN>-<YYYYMMDD>-<HHMSS>.tar.gz. Inside that tarball
is a directory named "Address Book" which contains a binary file for each
contact.

To run it, execute
  bbab2csv TARBALL
where TARBALL is the file generated by barrybackup. The resulting CSV will
be printed to STDOUT, and unrecognized data will be printed to STDERR.


DEVELOPER NOTE

The code is relatively simple, and adding new fields to be included in the
CSV is as easy as editing a bit of code near the top of the file. See the
comments in the script for more information.