SYNOPSIS

     use Org::To::VCF qw(org_to_vcf);
    
     my $res = org_to_vcf(
         source_file   => 'addressbook.org', # or source_str
         #target_file  => 'addressbook.vcf', # defaults return the VCF in $res->[2]
         #include_tags => [...], # default exports all tags
         #exclude_tags => [...], # behavior mimics emacs's include/exclude rule
     );
     die "Failed" unless $res->[0] == 200;

DESCRIPTION

    Export contacts in Org document to VCF (vCard addressbook).

    My use case: I maintain my addressbook in an Org document
    addressbook.org which I regularly export to VCF and then import to
    Android phones.

    How contacts are found in an Org document: each contact is written in
    an Org headline (of whatever level) in a rather free-form format, e.g.:

     ** dad # [2014-01-25 Sat]  :remind_anniv:
     - fullname :: frasier crane
     - birthday :: [1900-01-02 ]
     - cell :: 0811 000 0001
     - some note
     *** TODO get dad's jakarta office number

    Todo items (headline with todo labels) are currently excluded.

    Contact fields are searched in list items. Currently Indonesian and
    English phrases are supported. If name field is not found, the title of
    the headline is used. I use timestamps a lot, so currently timestamps
    are stripped from headline titles.

    Perl-style comments (with # to the end of the line) are allowed.

    Org-contacts format is also supported, where fields are stored in a
    properties drawer:

     * Friends
     ** Dave Null
     :PROPERTIES:
     :EMAIL: dave@null.com
     :END:
     This is one of my friend.
     *** TODO Call him for the party

SEE ALSO

    For more information about Org document format, visit
    http://orgmode.org/

    Org::Parser

    Text::vCard

    Org-contacts:
    http://julien.danjou.info/projects/emacs-packages#org-contacts

