diff options
author | Robin Jarry <robin@jarry.cc> | 2023-05-15 16:07:54 +0200 |
---|---|---|
committer | Robin Jarry <robin@jarry.cc> | 2023-06-01 22:15:00 +0200 |
commit | 11ccc471bb91e19334fa266f9837f9bb09a1e34d (patch) | |
tree | aec190f4e0f9262985e99c625588c83ec07d6c07 /doc/carddav-query.1.scd | |
parent | ac43047d4508b7f375fe6808f8e4826a1ef40210 (diff) | |
download | aerc-11ccc471bb91e19334fa266f9837f9bb09a1e34d.tar.gz |
contrib: add carddav-query script
Add a standalone python script to allow querying contacts from a CardDAV
compatible server. The script works with python 3.6+ and has no external
dependencies.
Link: https://sabre.io/dav/building-a-carddav-client/
Link: https://www.rfc-editor.org/rfc/rfc6352
Signed-off-by: Robin Jarry <robin@jarry.cc>
Tested-by: Tim Culverhouse <tim@timculverhouse.com>
Diffstat (limited to 'doc/carddav-query.1.scd')
-rw-r--r-- | doc/carddav-query.1.scd | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/doc/carddav-query.1.scd b/doc/carddav-query.1.scd new file mode 100644 index 00000000..bdd708ab --- /dev/null +++ b/doc/carddav-query.1.scd @@ -0,0 +1,103 @@ +CARDDAV-QUERY(1) + +# NAME + +carddav-query - Query a CardDAV server for contact names and emails. + +# SYNOPSIS + +*carddav-query* [*-h*] [*-l* _<limit>_] [*-v*] [*-c* _<file>_] +\[*-s* _<section>_] [*-k* _<key\_source>_] [*-C* _<key\_cred\_cmd>_] +\[*-s* _<server\_url>_] [*-u* _<username>_] [*-p* _<password>_] _<term>_ [_<term>_ ...] + +This tool has been tailored for use as *address-book-cmd* in *aerc-config*(5). + +# OPTIONS + +*-h*, *--help* + show this help message and exit + +*-v*, *--verbose* + Print debug info on stderr. + +*-l* _<limit>_, *--limit* _<limit>_ + Maximum number of results returned by the server. If the server does not + support limiting, this option will be disregarded. + + Default: _10_ + +*-c* _<file>_, *--config-file* _<file>_ + INI configuration file from which to read the CardDAV URL endpoint. + + Default: _~/.config/aerc/accounts.conf_ + +*-S* _<section>_, *--config-section* _<section>_ + INI configuration section where to find _<key\_source>_ and + _<key\_cred\_cmd>_. By default the first section where _<key\_source>_ + is found will be used. + +*-k* _<key\_source>_, *--config-key-source* _<key\_source>_ + INI configuration key to lookup in _<section>_ from _<file>_. The value + must respect the following format: + + https?://_<username>_[:_<password>_]@_<hostname>_/_<path/to/addressbook>_ + + Both _<username>_ and _<password>_ must be percent encoded. If + _<password>_ is omitted, it can be provided via *--config-key-cred-cmd* + or *--password*. + + Default: _carddav-source_ + +*-C* _<key\_cred\_cmd>_, *--config-key-cred-cmd* _<key\_cred\_cmd>_ + INI configuration key to lookup in _<section>_ from _<file>_. The value + is a command that will be executed with *sh -c* to determine + _<password>_ if it is not present in _<key\_source>_. + + Default: _carddav-source-cred-cmd_ + +*-s* _<server_url>_, *--server-url* _<server_url>_ + CardDAV server URL endpoint. Overrides configuration file. + +*-u* _<username>_, *--username* _<username>_ + Username to authenticate on the server. Overrides configuration file. + +*-p* _<password>_, *--password* _<password>_ + Password for the specified user. Overrides configuration file. + +# POSITIONAL ARGUMENTS + +_<term>_ + Search term. Will be used to search contacts from their FN (formatted + name), EMAIL, NICKNAME, ORG (company) and TITLE fields. + +# EXAMPLES + +These are excerpts of _~/.config/aerc/accounts.conf_. + +## Fastmail + +``` +[fastmail] +carddav-source = https://janedoe%40fastmail.com@carddav.fastmail.com/dav/addressbooks/user/janedoe@fastmail.com/Default +carddav-source-cred-cmd = pass fastmail.com/janedoe +address-book-cmd = carddav-query -S fastmail %s +``` + +## Gmail + +``` +[gmail] +carddav-source = https://johndoe%40gmail.com@www.googleapis.com/carddav/v1/principals/johndoe@gmail.com/lists/default +carddav-source-cred-cmd = pass gmail.com/johndoe +address-book-cmd = carddav-query -S gmail %s +``` + +# SEE ALSO + +*aerc-config*(5) + +# AUTHORS + +Created by Robin Jarry <robin@jarry.cc> who is assisted by other open source +contributors. For more information about aerc development, see +https://sr.ht/~rjarry/aerc/. |