Re: [Extra] Design of a new Sieve action to process iMIP messages
Alexey Melnikov <alexey.melnikov@isode.com> Tue, 28 September 2021 09:15 UTC
Return-Path: <alexey.melnikov@isode.com>
X-Original-To: extra@ietfa.amsl.com
Delivered-To: extra@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1])
by ietfa.amsl.com (Postfix) with ESMTP id 3DE553A2596
for <extra@ietfa.amsl.com>; Tue, 28 Sep 2021 02:15:53 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.099
X-Spam-Level:
X-Spam-Status: No, score=-2.099 tagged_above=-999 required=5
tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1,
DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001,
NICE_REPLY_A=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001,
URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key)
header.d=isode.com
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 mv5zf9g_35bT for <extra@ietfa.amsl.com>;
Tue, 28 Sep 2021 02:15:47 -0700 (PDT)
Received: from statler.isode.com (Statler.isode.com [62.232.206.189])
by ietfa.amsl.com (Postfix) with ESMTP id 8EF463A2594
for <extra@ietf.org>; Tue, 28 Sep 2021 02:15:47 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1632820546;
d=isode.com; s=june2016; i=@isode.com;
bh=XNEeJ8ZeO8vGur5McG0KEuxDORYQMmctPR0Qz7Rvb40=;
h=From:Sender:Reply-To:Subject:Date:Message-ID:To:Cc:MIME-Version:
In-Reply-To:References:Content-Type:Content-Transfer-Encoding:
Content-ID:Content-Description;
b=AJQsZmD1IJiAwKuPtbUyiGVscT3emRphI6hyceq0QVMpI2NDJR80UjXJCifyT4QHGnnRLj
N61SUv40yc5LvJD2LRAhmLBWlciy5Mt0UmncR0OimpyiVo2WKS1OX05QhB7T+PtKFDhd3+
XJgj3MEN6JpcxAYkT/kzj05L2Q7A28g=;
Received: from [192.168.0.5] ((unknown) [94.3.228.58])
by statler.isode.com (submission channel) via TCP with ESMTPSA
id <YVLdQQAz0lvo@statler.isode.com>; Tue, 28 Sep 2021 10:15:45 +0100
X-SMTP-Protocol-Errors: NORDNS
To: Ken Murchison <murch@fastmail.com>, extra@ietf.org
References: <2304e1e5-9cd2-c913-e0bf-ba7a1218db0e@fastmail.com>
From: Alexey Melnikov <alexey.melnikov@isode.com>
Message-ID: <b5d362e3-3e30-7d17-cf18-291646c576ae@isode.com>
Date: Tue, 28 Sep 2021 10:15:39 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0)
Gecko/20100101 Thunderbird/78.13.0
In-Reply-To: <2304e1e5-9cd2-c913-e0bf-ba7a1218db0e@fastmail.com>
MIME-Version: 1.0
Content-Type: multipart/alternative;
boundary="------------858BB37479480809D99F0F86"
Content-Language: en-GB
Archived-At: <https://mailarchive.ietf.org/arch/msg/extra/gbOCFFZIiaNXviXBwUzUivrfZ_0>
Subject: Re: [Extra] Design of a new Sieve action to process iMIP messages
X-BeenThere: extra@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Email mailstore and eXtensions To Revise or Amend <extra.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/extra>,
<mailto:extra-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/extra/>
List-Post: <mailto:extra@ietf.org>
List-Help: <mailto:extra-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/extra>,
<mailto:extra-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 28 Sep 2021 09:15:53 -0000
Hi Ken, On 22/09/2021 13:27, Ken Murchison wrote: > > All, > > We (Fastmail) are in the process of designing and implementing a new > Sieve action which will process iMIP messages and add/update resources > on a CalDAV calendar. The main issue that I'm facing is that a user > may want to have additional actions be executed depending on whether > the 'processimip' action [un]successfully updates the calendar (E.g., > add flags to and/or fileinto the email message into different > mailbox). Neither RFC 5528 nor any extension that I'm aware of > defines a mechanism for determining whether an action was successful. > Failure of some actions, such as fileinto cause script execution to > stop. Failure of others such as vacation/notify are usually ignored. > > I have come up with 3 ways to solve this issue for the new > 'processimip' action, in order of preference: > > 1. Have 'processimip' set a variable with a return code/status. This > variable can then be checked with a 'string' test. There is > precedent for an action setting a variable with the 'extracttext' > action. > 2. Make 'processimip' a test rather than an action. This would be > the first test that I'm aware of with side-effects (other than > setting match variables). > 3. Add optional :flags and :mailbox (and :mailboxid, :specialuse) > args to 'processimip' which are only used if the action is > successful and are used to execute an implicit 'fileinto'. This > is very ugly IMHO. I'd prefer that an explicit 'fileinto' action > be used. > > What do others think? Any different/better design ideas? > Your list of preferences seems reasonable. #2 is not ideal, even though it is otherwise compelling. #1 ties you to implementing another extension, even if it is an important one. Can you tell me more about failure cases and maybe it would be possible to extract some logic into a separate test? Best Regards, Alexey
- [Extra] Design of a new Sieve action to process i… Ken Murchison
- Re: [Extra] Design of a new Sieve action to proce… Alexey Melnikov
- Re: [Extra] Design of a new Sieve action to proce… Ken Murchison
- Re: [Extra] Design of a new Sieve action to proce… Ned Freed
- Re: [Extra] Design of a new Sieve action to proce… Ken Murchison