Provided by: barry-util_0.18.5-1_amd64 bug

NAME

       btool - Barry Project's program to interface with BlackBerry handheld

SYNOPSIS

       btool [-B busname][-N devname][-a db][-c dn][-C dnattr][-d db [-f file][-F sortkey][-r#][-R#]-D#]][-h][-i
       charset][-l][-L][-m cmd][-M][-p pin][-P password][-s db -f file][-S][-t][-v][-V][-X][-z][-Z]

DESCRIPTION

       btool  is a program that communicates with a BlackBerry device over USB; there is no intention to support
       ancient serial-port BlackBerries.  Since the protocols used by  BlackBerry  are  not  documented  by  the
       manufacturer  Research  In  Motion,  this  program is experimental and you use at own risk.  Be sure your
       device is backed up by another program if it contains important data.

OPTIONS

       -B busname
              Specify the USB bus to search for Blackberry devices on.  This is the first  number  displayed  in
              the  output  from the lsusb command, such as 002.  If the busname is numeric on your system, 2 and
              002 are equal.  See also the -N option, which can be used together with this option  to  precisely
              select the device to work with.

       -a db  Delete  all  records  from  specified database.  This can be used multiple times to clear multiple
              databases.

       -c dn  Convert address book database to LDIF format, using the specified dn as the  baseDN.   Sends  LDIF
              output to stdout.

       -C dnattr
              Spcify  LDIF  attribute name to use when building the FQDN in the dn attribute.  Defaults to 'cn'.
              If you modify the mapping with the -m switch, make sure that the new dnattr exists.

       -d db  Load database 'db' FROM device and dump to stdout.  Can be used multiple times to fetch more  than
              one database.  See the -t option for a list of device databases.

       -e epp Override  endpoint  pair  detection.   'epp'  is a single string separated by a comma, holding the
              read,write endpoint pair.

              Example: -e 83,5

              Note: Endpoints are specified in hex.  Use the same numbers given by the lsusb -v output.

              You should never need to use this option, as endpoints are autodetected.

       -f file
              Filename to write or read handheld data to/from.  Used in conjunction with the -d and -s  options,
              respectively.   Note:  the  file  format  of  this  file  is not backward compatible between devel
              releases.

       -F sortkey
              Sort the -d database output according to the given sortkey.  Note that the format of this field is
              special: 'DBName:field1,field2'

              It contains no spaces, unless the spaces are part of the name.

              This option can be used multiple times, to match your -d options.

              Example: If you used the following command:

              btool -d 'Address Book'

              You could use the following sort key to sort by Company name first, with a  subsort  of  last  and
              first names.

              -F 'Address Book:Company,LastName,FirstName'

       -i charset
              Specifies  the iconv charset to use for converting international strings.  The Blackberry uses the
              WINDOWS-1252 charset, which is incompatible with the more common code pages used  in  Linux.   The
              most  useful  charset  to  use  with  this  option is UTF-8, and is highly recommended.  Any other
              charset available via 'iconv --list' can be used here too, but may  not  be  successful  for  some
              character conversions.

       -I     Sort records before dumping them to stdout.  This uses the default library sorting order, which is
              specific to each database.

       -l     Lists attached Blackberry devices, and their PIN numbers.

       -L     List Contact field names.  Each name represents a contact field that the Barry library recognizes.
              Use these names with the -m option to adjust the LDIF name to field mapping.

       -m command
              Map  LDIF name to Contact field, or unmap LDIF name.  To map a new or existing LDIF attribute name
              to a Barry contact field, use the format 'ldif,read,write' where ldif represents the name  of  the
              attribute  to  map, read is the contact field name used to read data from the record, and write is
              the contact field name used to write data to the record.

              To unmap an LDIF name, specify the LDIF attribute alone.

              For example, to map a new LDIF attribute called "strange" to read  from  FirstName  and  write  to
              LastName, use:

              -m strange,FirstName,LastName

              The -m option can be specified multiple times to create the desired mapping.

       -M     List current LDIF mapping to stdout.

       -N devname
              Specify  the  USB  device  name.  This is the second number displayed in the output from the lsusb
              command, such as 005.  If the device name is numeric on your system, 5 and  005  are  equal.   See
              also the -B option.

       -p pin PIN of device to talk with.  Only needed if you have more than one Blackberry connected at once.

       -P password
              Simplistic  method  to specify device password.  In a real application, this would be done using a
              more secure prompt.

       -s db  Save database 'db' TO device from data loaded from -f file.  See the  -t  option  for  a  list  of
              device databases.

       -S     Show  list  of supported database parsers and builders.  Parsers are used when reading data out of
              the device, and builders are used when writing data to the device.  If a parser is supported,  but
              its associated builder is not, that means you cannot change the database programmatically, such as
              with the -s option.

       -t     Show device's database table.

       -T db  Show record state table for given database.

       -v     Dump verbose protocol data during operation.

       -V     Enable  vformat  MIME output where available.  Address Book gets printed in vCard format, Calendar
              in vEvent format, Memos in vJournal, and Tasks in vTodo, etc.

       -X     Perform a USB reset on the device.  Similar to the breset command, and does a virtual "replug"  of
              the device.

       -z     Use  non-threaded  sockets  when  communicating  with  the  device.  This is the behaviour seen in
              versions 0.12 and earlier, since threads were not yet supported.  This option, along with -Z,  are
              for debugging and testing.

       -Z     Use  a  threaded socket router when communicating with the device.  This is the default for btool.
              This option, along with -Z, are for debugging and testing.

       -h, --help
              Show summary of options.

DATABASE COMMAND MODIFIERS

       The following options modify the -d command option above, and can be used multiple times  for  more  than
       one record.

       -r #   Fetch  specific  record,  given  a record index number as seen in the -T state table.  Can be used
              multiple times to fetch specific records from a single database.

       -R #   Same as -r, but also clears the record's dirty flags.

       -D #   Delete the specified record using the index number as seen in the -T state table.

AUTHOR

       btool is part of the Barry project.  This manual page was written by Ian Darwin and Chris Frey.

SEE ALSO

       http://www.netdirect.ca/software/packages/barry
       Especially the caveats, and the call for developers and others to help with the project.

                                                February 3, 2012                                        BTOOL(1)