[dispatch] =?UTF-8?Q?Re:__Potential_incoming_work:_web_push_for_IMAP, _Cal?= DAV and CardDAV

"Bron Gondwana" <brong@fastmailteam.com> Fri, 25 October 2019 23:00 UTC

Return-Path: <brong@fastmailteam.com>
X-Original-To: dispatch@ietfa.amsl.com
Delivered-To: dispatch@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5DFC81200B3 for <dispatch@ietfa.amsl.com>; Fri, 25 Oct 2019 16:00:56 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.699
X-Spam-Level:
X-Spam-Status: No, score=-2.699 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=fastmailteam.com header.b=zGU3Af0t; dkim=pass (2048-bit key) header.d=messagingengine.com header.b=iLKMIPfu
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7wfGjUTwPcwE for <dispatch@ietfa.amsl.com>; Fri, 25 Oct 2019 16:00:54 -0700 (PDT)
Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 44D1012009C for <dispatch@ietf.org>; Fri, 25 Oct 2019 16:00:54 -0700 (PDT)
Received: from compute6.internal (compute6.nyi.internal [10.202.2.46]) by mailout.nyi.internal (Postfix) with ESMTP id 5D5EA220C3; Fri, 25 Oct 2019 19:00:52 -0400 (EDT)
Received: from imap99 ([10.202.2.99]) by compute6.internal (MEProxy); Fri, 25 Oct 2019 19:00:52 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= fastmailteam.com; h=mime-version:message-id:in-reply-to :references:date:from:to:cc:subject:content-type; s=fm1; bh=mdzY JeuVTPFlVK9c+wxf9cEirEg4h+/4bkaOV9e1KhI=; b=zGU3Af0tIqTip+qChEnt YLoBmINlN4y3lOk695wFps5srg/Uzs9KtJvXnRrZM/B+iv+qawmss73o/a362maZ w1ph1/Bxi2ai/sSv2SST0DlLFnaTMziK08Yvzh9NMhoYLdans9AiFcBC5BtJBJ+V /tP6BMG8VIe3Gg3hDyjWVQxcNeiWfCNLpCxDjHLxlyAWFyfT6j9ShI2Rtb1kellW tJTHeWu2WOc2C1bwRdlxH2oW41P7LJ48AKU4mI8Ran65S/19WRMfcg+hRrbuuDlu AnvollqsbYaduiIV7erVX2S55fiH9504s7p8gFSLCH7Y6ZsW2LcwFVqcTzeJMgmT gQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; bh=mdzYJe uVTPFlVK9c+wxf9cEirEg4h+/4bkaOV9e1KhI=; b=iLKMIPfuYMu2U8C1io7ihD vr48LTRrA8XvuqZqpEOyDSgoEmEgszJnIkY8LlMPFqX6nGoWBubkIrtAin9XW/iL oTSA6iNJd00WXHnevZ7qpU1AuFLvDj6DRD17hJc1LGZYGjGkcrvYLkc8/iNPXCLK cna/j/aSxFfIkoHVFAzovxIdlc5oGVTyq523YZedy5ssqr6Qrh1UyasxlZMnXA2c dMTwF0/s8/TtKEFFQV8jIQ6ofp0+hVreyMSBh+J0AO1jL+XPCZB66pk9qeBbVMB6 HCSn7if1EnIteHlqFr8dGE4iFSMbMyGsotJ8dUtUUF3DKnIPizHINnnR31rt+Vrg ==
X-ME-Sender: <xms:o36zXcqi0syDhkCFPZWllLb2UZmZhYcr9_b0imSVIeWywCzQsAnXLw>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedufedrleeggddujecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefofgggkfgjfhffhffvufgtsegrtderreerreejnecuhfhrohhmpedfuehrohhn ucfiohhnugifrghnrgdfuceosghrohhnghesfhgrshhtmhgrihhlthgvrghmrdgtohhmqe enucffohhmrghinhephhhtthhprhgrthhhvghrthhhrghnsghuihhlughinhhglhgrhigv rhhsohhnthhophdrsgihnecurfgrrhgrmhepmhgrihhlfhhrohhmpegsrhhonhhgsehfrg hsthhmrghilhhtvggrmhdrtghomhenucevlhhushhtvghrufhiiigvpedt
X-ME-Proxy: <xmx:o36zXQBMvQzPj6Ns5nGlRbs8CSD9k8TPXXp9zqEVDqW2gQ03zVWRWg> <xmx:o36zXWYW35oeWmDViMPKtgG8kqWGjoE2iUYZfu9JuytJ5iOGwyrMhQ> <xmx:o36zXRRI-cteeJh8q_Ki8L2COaDY-p0eHVknsStD2wVrITJp8cVDEQ> <xmx:pH6zXfw6zesyWHepQgOTOUK7xzIHljLA0u9yTTCMOtPwNM2LJnCiFQ>
Received: by mailuser.nyi.internal (Postfix, from userid 501) id C67E33AAF2E; Fri, 25 Oct 2019 19:00:51 -0400 (EDT)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.1.7-470-gedfae93-fmstable-20191021v4
Mime-Version: 1.0
Message-Id: <191d3882-3bc4-48de-a4b2-dac05c7b1288@www.fastmail.com>
In-Reply-To: <1C9B1121-B20E-479E-B596-C04A416B5EE1@gmail.com>
References: <290514e7-79ce-4852-bf05-a684e2e8d045@beta.fastmail.com> <DFC3797D-DA12-4470-9CBE-D7BD981DB6CE@gmail.com> <00358631-a34d-45db-bf87-44709972387b@beta.fastmail.com> <1C9B1121-B20E-479E-B596-C04A416B5EE1@gmail.com>
Date: Sat, 26 Oct 2019 10:00:31 +1100
From: Bron Gondwana <brong@fastmailteam.com>
To: Michael Toomim <toomim@gmail.com>
Cc: dispatch@ietf.org, Braid <braid-http@googlegroups.com>
Content-Type: multipart/alternative; boundary="06243df71c3e45299ce9936f423cd238"
Archived-At: <https://mailarchive.ietf.org/arch/msg/dispatch/l8B-N5NljzPBG8mP-xSVC8hGSNM>
Subject: [dispatch] =?UTF-8?Q?Re:__Potential_incoming_work:_web_push_for_IMAP, _Cal?= DAV and CardDAV
X-BeenThere: dispatch@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DISPATCH Working Group Mail List <dispatch.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dispatch>, <mailto:dispatch-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dispatch/>
List-Post: <mailto:dispatch@ietf.org>
List-Help: <mailto:dispatch-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dispatch>, <mailto:dispatch-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 25 Oct 2019 23:00:56 -0000

On Sat, Oct 26, 2019, at 07:14, Michael Toomim wrote:
> I think we can gain a lot by putting this standard *into* basic HTTP, rather than building layers on top. By adding Synchronization to HTTP, we get the functionality of Web Push, but it can be implemented automatically, for all resources, without any extra effort from the programmer. The whole web has changed in the last 20 years— from static pages to dynamic data —and it's time we upgrade the protocol at a deep level. Getting a notification of a message on your phone shouldn't be any different from getting the actual message in the app.

At this point the big difference is whether you want a push of the entire resource, or (as JMAP does) an edge trigger to say "there's something new of this object type on the server - issue a query about which bits you're interested in to see if there's anything new you want to fetch".

At which point the granularity of detail becomes interesting - because you only want to be informed of changes if there's a high probability that they are things you are interested in, and even more so - if there's a high probability that you'll be able to see them! You don't want a push every time a resource on a server with a million users changes if you can only see your own resources!

We do that on our own server with pushing you every change to you own resources plus doing ACL filtering to see if any other user can see the resources and giving them an ACL push too, even if they aren't subscribed to the resources and won't notice a change.... so there could be more smarts in the push filter but it seems to balance out OK in a real life, just the occasional extra wake. And we separate data types like email and calendar into separate change pools.

Bron.

--
 Bron Gondwana, CEO, Fastmail Pty Ltd
 brong@fastmailteam.com