aboutsummaryrefslogtreecommitdiffstats
path: root/interimap.md
diff options
context:
space:
mode:
authorGuilhem Moulin <guilhem@fripost.org>2016-03-12 22:14:39 +0100
committerGuilhem Moulin <guilhem@fripost.org>2016-03-12 22:40:58 +0100
commit85fd56f6f150dba0d74859a9d5e00f16d6b33955 (patch)
treef8a57fe4f81acfc8ad4a3f6a18d9c44be2267d4d /interimap.md
parentc8376a4c8130f98a56fd65e370032c27234ed323 (diff)
Net::IMAP::InterIMAP, interimap: Add support for IMAP NOTIFY [RFC 5465].
Unsollicited LIST responses are currently ignored, hence interimap won't detect mailbox creation/deletion/subcription/unsubscription.
Diffstat (limited to 'interimap.md')
-rw-r--r--interimap.md29
1 files changed, 23 insertions, 6 deletions
diff --git a/interimap.md b/interimap.md
index 2d783a8..0632363 100644
--- a/interimap.md
+++ b/interimap.md
@@ -19,8 +19,8 @@ Description
servers.
Such synchronization is made possible by the [`QRESYNC` IMAP
extension][RFC 7162]; for convenience reasons servers must also support
-the [`LIST-EXTENDED`][RFC 5258], [`LIST-STATUS`][RFC 5819] and
-[`UIDPLUS`][RFC 4315] IMAP extensions.
+the [`LIST-EXTENDED`][RFC 5258], [`LIST-STATUS`][RFC 5819] (or
+[`NOTIFY`][RFC 5465]) and [`UIDPLUS`][RFC 4315] IMAP extensions.
See also the **[supported extensions](#supported-extensions)** section
below.
@@ -152,10 +152,22 @@ Options
`--watch`[`=`*seconds*]
: Don't exit after a successful synchronization. Instead, keep
- synchronizing forever. Sleep for the given number of *seconds* (1
- minute by default) between two synchronizations.
- Setting this options enables `SO_KEEPALIVE` on the socket for
- *type*s other than `tunnel`.
+ synchronizing forever. Sleep for the given number of *seconds* (by
+ default 1 minute if `--notify` is unset, and 15 minutes if
+ `--notify` is set) between two synchronizations. Setting this
+ options enables `SO_KEEPALIVE` on the socket for *type*s other than
+ `tunnel`.
+
+`--notify`
+
+: Wether to use the [IMAP `NOTIFY` extension][RFC 5465] to instruct
+ the server to automatically send updates to the client. (Both local
+ and remote servers must support [RFC 5465] for this to work.)
+ This greatly reduces IMAP traffic since `interimap` can rely on
+ server notifications instead of manually polling for updates.
+ If the connection remains idle for 15 minutes (configurable with
+ `--watch`), then `interimap` sends a `NOOP` command to avoid being
+ logged out for inactivity.
`-q`, `--quiet`
@@ -369,6 +381,7 @@ the [IMAP4rev1 protocol][RFC 3501]:
* LITERAL+ ([RFC 2088], recommended);
* MULTIAPPEND ([RFC 3502], recommended);
* COMPRESS=DEFLATE ([RFC 4978], recommended);
+ * NOTIFY ([RFC 5465], recommended);
* SASL-IR ([RFC 4959]); and
* UNSELECT ([RFC 3691]).
@@ -440,6 +453,9 @@ Standards
* B. Leiba and A. Melnikov,
_Internet Message Access Protocol version 4 - LIST Command Extensions_,
[RFC 5258], June 2008.
+ * A. Gulbrandsen, C. King and A. Melnikov,
+ _The IMAP NOTIFY Extension_,
+ [RFC 5465], February 2009
* A. Melnikov and T. Sirainen,
_IMAP4 Extension for Returning STATUS Information in Extended LIST_,
[RFC 5819], March 2010.
@@ -468,6 +484,7 @@ Standards
[RFC 3691]: https://tools.ietf.org/html/rfc3691
[RFC 6851]: https://tools.ietf.org/html/rfc6851
[RFC 5161]: https://tools.ietf.org/html/rfc5161
+[RFC 5465]: https://tools.ietf.org/html/rfc5465
[INI file]: https://en.wikipedia.org/wiki/INI_file
[PCRE]: https://en.wikipedia.org/wiki/Perl_Compatible_Regular_Expressions