[salud] How to construct a finite state machine to select an alerting signal
worley@ariadne.com (Dale R. Worley) Tue, 28 June 2016 19:03 UTC
Return-Path: <worley@alum.mit.edu>
X-Original-To: salud@ietfa.amsl.com
Delivered-To: salud@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0373C12D50D for <salud@ietfa.amsl.com>; Tue, 28 Jun 2016 12:03:54 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.934
X-Spam-Level:
X-Spam-Status: No, score=-1.934 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_SOFTFAIL=0.665] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=comcast.net
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 6WHGEdPq3JdE for <salud@ietfa.amsl.com>; Tue, 28 Jun 2016 12:03:52 -0700 (PDT)
Received: from resqmta-ch2-02v.sys.comcast.net (resqmta-ch2-02v.sys.comcast.net [IPv6:2001:558:fe21:29:69:252:207:34]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 6437712D5D6 for <salud@ietf.org>; Tue, 28 Jun 2016 12:03:52 -0700 (PDT)
Received: from resomta-ch2-09v.sys.comcast.net ([69.252.207.105]) by resqmta-ch2-02v.sys.comcast.net with SMTP id HyEvb3pwOQRyhHyIZbIgzV; Tue, 28 Jun 2016 19:03:51 +0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=comcast.net; s=q20140121; t=1467140631; bh=V3UNlIgTEH8bUB0RikTLXy1qg2KmuaJOGeyApnjmRfc=; h=Received:Received:Received:Received:From:To:Subject:Date: Message-ID; b=VvaojpQYU/3alTI6bzqDbaqToorjYluNBDKNMd9RuyXELdmwvhx0YcSNSMh7w32AM H5Jh+FbiBIanvCZ2f+yuM/mKTzCBNw18B2LRUTOtl4ygl4qZrvLadluN3I4q/Jeyzf OsBNSIsZswjl5xfD0Lu5aJKIgGImlBSc9op/6Ufvx4kx01nQ2g2506jYXOmaqzHpPz dz7/rcd87yjTNdyv5zNNBbDMPkTJ9orzx8XaBbKNNqyWiqh+0wGo63nnijjegpB1Y6 krWOj648GhFfb2Do5zm95DATWxKCRgn+kf9fwEsAvo3cfYpGN+bWTYbEUcwn+cZU2M oHoflemCE4DYQ==
Received: from hobgoblin.ariadne.com ([73.143.237.82]) by resomta-ch2-09v.sys.comcast.net with comcast id CK3q1t00Z1nMCLR01K3rLg; Tue, 28 Jun 2016 19:03:51 +0000
Received: from hobgoblin.ariadne.com (hobgoblin.ariadne.com [127.0.0.1]) by hobgoblin.ariadne.com (8.14.7/8.14.7) with ESMTP id u5SJ3oMF020866 for <salud@ietf.org>; Tue, 28 Jun 2016 15:03:50 -0400
Received: (from worley@localhost) by hobgoblin.ariadne.com (8.14.7/8.14.7/Submit) id u5SJ3omM020863; Tue, 28 Jun 2016 15:03:50 -0400
X-Authentication-Warning: hobgoblin.ariadne.com: worley set sender to worley@alum.mit.edu using -f
From: worley@ariadne.com
To: salud@ietf.org
Sender: worley@ariadne.com
Date: Tue, 28 Jun 2016 15:03:50 -0400
Message-ID: <87r3bhdtk9.fsf@hobgoblin.ariadne.com>
Archived-At: <https://mailarchive.ietf.org/arch/msg/salud/16IDLvSf3nWXsx1rRrW2mCbOcao>
Subject: [salud] How to construct a finite state machine to select an alerting signal
X-BeenThere: salud@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Sip ALerting for User Devices working group discussion list <salud.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/salud>, <mailto:salud-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/salud/>
List-Post: <mailto:salud@ietf.org>
List-Help: <mailto:salud-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/salud>, <mailto:salud-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 28 Jun 2016 19:03:54 -0000
I've worked out how to construct a finite state machine to process the 'alert' URNs in an Alert-Info header to select one of the alerting signals of a UA. Once you fix the set of signals and their meanings (the URNs that the signal indicates), there's an algorithm that constructs the FSM, and it ensures that FSM satisfies the rules in RFC 7462. I've written a draft to describe the process in detail. The draft also points to an implementation of the algorithm in Python, so people can try out this method and see how it works for them. I'd like to hear any feedback you have. Dale A new version of I-D, draft-worley-alert-info-fsm-02.txt has been successfully submitted by Dale R. Worley and posted to the IETF repository. Name: draft-worley-alert-info-fsm Revision: 02 Title: A Simpler Method for Processing Alert-Info URNs Document date: 2016-06-05 Group: Individual Submission Pages: 36 URL: https://www.ietf.org/internet-drafts/draft-worley-alert-info-fsm-02.txt Status: https://datatracker.ietf.org/doc/draft-worley-alert-info-fsm/ Htmlized: https://tools.ietf.org/html/draft-worley-alert-info-fsm-02 Diff: https://www.ietf.org/rfcdiff?url2=draft-worley-alert-info-fsm-02 Abstract: The "alert" namespace of uniform resource names (URNs) can be used in the Alert-Info header field of Session Initiation Protocol (SIP) requests and responses to inform a VoIP telephone (user agent) of the characteristics of the call that the user agent has originated or terminated. Based on the URNs in the Alert-Info header field, the user agent must select an the best available signal to present to its user to indicate the characteristics of the call. This document describes a method by which a user agent's designer can, based on the user agent's signals and their meanings, constructing a finite state machine (FSM) to process the URNs to select a signal in a way that obeys the restrictions given in the definition of the "alert" URN namespace. In many situations, the resulting FSM is simpler and faster than the previously described selection algorithm.
- [salud] How to construct a finite state machine t… Dale R. Worley