Re: [Jmap] DSN and MDN in JMAP

Neil Jenkins <neilj@fastmailteam.com> Tue, 18 July 2017 17:14 UTC

Return-Path: <neilj@fastmailteam.com>
X-Original-To: jmap@ietfa.amsl.com
Delivered-To: jmap@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6BE42131B8A for <jmap@ietfa.amsl.com>; Tue, 18 Jul 2017 10:14:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.72
X-Spam-Level:
X-Spam-Status: No, score=-2.72 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, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-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=JXBDzpJW; dkim=pass (2048-bit key) header.d=messagingengine.com header.b=A55MBIDS
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 3Ftoyjm89Qec for <jmap@ietfa.amsl.com>; Tue, 18 Jul 2017 10:14:45 -0700 (PDT)
Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6B25F127342 for <jmap@ietf.org>; Tue, 18 Jul 2017 10:14:45 -0700 (PDT)
Received: from betaweb1.internal (betaweb1.nyi.internal [10.202.2.10]) by mailout.nyi.internal (Postfix) with ESMTP id D7C0720B08 for <jmap@ietf.org>; Tue, 18 Jul 2017 13:14:44 -0400 (EDT)
Received: from betaweb1 ([::ffff:10.202.2.10]) by betaweb1.internal (MEProxy); Tue, 18 Jul 2017 13:14:44 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= fastmailteam.com; h=content-transfer-encoding:content-type:date :from:in-reply-to:message-id:mime-version:references:subject:to :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; bh=UVsUEJwAcZ9864fOT FCgPGpZ0OoDPv+b9UuPPaveN2o=; b=JXBDzpJWUOxAzgZETWwaUtyDXNECSOHFS 6VfVc6RHqLbV96NEPTbllmOgrKbknKis+UaoXzYJHE/u4lkhva2MuEAEnI1ooQvP IxnOdnd9pYUaqStlVYCPdF0/J0xNUzPyKvM/D1WKM0ReduBc9GcZY/bgju+0T9k2 dGGiogo1DprW2dzdGYq7DVIND3h0mf4eVegEqpIPlyb5zDBAnuQ3QguxqWqVrv+f oV3dJ1tjqI2gls8rIKcPjG2oWQZaw6Wntf8gigruDLgp6QVFOlILJ82JyEXGLxFs 9jDLsciKYXqZeV6zuKmdH9s2CcdcZEXewyXgisr+LQ21+jDxqOIrg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; bh=UVsUEJ wAcZ9864fOTFCgPGpZ0OoDPv+b9UuPPaveN2o=; b=A55MBIDSXmeqF2+utK2Vwl 3Ga0tcnBHdEQaXrqVP4Ydg5cg0Gt7MYwsHQ52wmPugeHn2PNS1oaUGLI12ntPafF CU5iHaCscBwYL5jTsbwr0nPUkxQDT/GKOcCax3DhOewgTPuldCz6IvpRUSwmi5Zk 7h8v4FuUGuJtJsNciy2eRH+P+bzxG8Rqy+jdWp27Xqm82BellzkeLpLslhf520sc mHwDkUboZ10/mNVfPtjMPZYHJdzN1N+6LUZ2ntXntZOgCzsdGq8OKDqcIpfgw94C 9l7kuZBqZEZW/lFBWm57C4yzBKdax+122EOdWjmHOhi3JpDuNFUcYYQ/70yzADYA ==
X-ME-Sender: <xms:BEJuWb1eHB-FrJY_E3HLFHL-RoF6OZFZ1L1Jpy-Dke_E9BVG2debzA>
Received: by mailuser.nyi.internal (Postfix, from userid 99) id 96FE5E2451; Tue, 18 Jul 2017 13:14:44 -0400 (EDT)
Message-Id: <1500398084.797896.1044865312.4893BFE7@webmail.messagingengine.com>
From: Neil Jenkins <neilj@fastmailteam.com>
To: IETF JMAP Mailing List <jmap@ietf.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: multipart/alternative; boundary="_----------=_15003980847978962"
X-Mailer: MessagingEngine.com Webmail Interface - ajax-ed444df6
References: <71E3B9BE-C58C-40DF-AA63-EB4B94334DD5@oracle.com>
Date: Wed, 19 Jul 2017 03:14:44 +1000
In-Reply-To: <71E3B9BE-C58C-40DF-AA63-EB4B94334DD5@oracle.com>
Archived-At: <https://mailarchive.ietf.org/arch/msg/jmap/aBaIzxB5tuL3CnQ6rizR8h3lSOI>
Subject: Re: [Jmap] DSN and MDN in JMAP
X-BeenThere: jmap@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: JSON Message Access Protocol <jmap.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/jmap>, <mailto:jmap-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/jmap/>
List-Post: <mailto:jmap@ietf.org>
List-Help: <mailto:jmap-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/jmap>, <mailto:jmap-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 18 Jul 2017 17:14:48 -0000

After discussing this with Chris, we agreed that most of this is probably not useful, and we would be better off simplifying the key information into two properties, and providing access to the raw DSN/MDN as blobs should a client wish to do more.
So I propose we add the following to the DeliveryStatus object for each recipient:
 * *delivered*: `String` This MUST be one of the following values:
   `unknown`: The delivery status is unknown. This is the initial value.
   `yes`: A DSN has been received for this recipient with Action (as per
   RFC3464 section 2.3.3) equal to "delivered". `no`: A DSN has been
   received for this recipient with Action equal to "failed".
 * *seen*: `String` This MUST be one of the following values: `unknown`:
   The seen status is unknown. This is the initial value. `yes`: An MDN
   has been received for this recipient with Disposition-Type (as per
   RFC 3798 section 3.2.6.2[1]) equal to "displayed".
 * *dsnBlobIds*: `String[]` A list of blob ids for DSNs received for
   this recipient, in order of receipt, oldest first.
 * *mdnBlobIds*: `String[]` A list of blob ids for MDNs received for
   this recipient, in order of receipt, oldest first.The other nice thing about this is that JMAP servers may be able to update the delivered/seen properties based on other mechanisms (for example when there are local recipients); the client doesn't have to care how the server knows if the message has been delivered/seen.
Neil.

Links:

  1. https://tools.ietf.org/html/rfc3798#section-3.2.6.2