15
Key Press Markup Language and Protocol (KPML) Prof. Ir.MIT Eric William Burger CTO, SnowShore Networks, Inc. Board Member, SIP Forum Board Member, IPCC

Key Press Markup Language and Protocol (KPML) Prof. Ir. MIT Eric William Burger CTO, SnowShore Networks, Inc. Board Member, SIP Forum Board Member, IPCC

Embed Size (px)

Citation preview

Page 1: Key Press Markup Language and Protocol (KPML) Prof. Ir. MIT Eric William Burger CTO, SnowShore Networks, Inc. Board Member, SIP Forum Board Member, IPCC

Key Press Markup Language and

Protocol (KPML)Prof. Ir.MIT Eric William Burger

CTO, SnowShore Networks, Inc.

Board Member, SIP Forum

Board Member, IPCC

Page 2: Key Press Markup Language and Protocol (KPML) Prof. Ir. MIT Eric William Burger CTO, SnowShore Networks, Inc. Board Member, SIP Forum Board Member, IPCC

2 Copyright © 2004, SnowShore Networks, Inc. 22 January 2004

Roadmap

Need for KPML

KPML Deployment Models

Protocol Mechanism

Markup Features

Summary

Page 3: Key Press Markup Language and Protocol (KPML) Prof. Ir. MIT Eric William Burger CTO, SnowShore Networks, Inc. Board Member, SIP Forum Board Member, IPCC

3 Copyright © 2004, SnowShore Networks, Inc. 22 January 2004

Need for KPML

Transport Legacy In-Band Signaling as Signaling

Examples– Multistage Dialing

– Supplementary Digit Collection

– Application Attention (e.g., Prepaid Long Pound)

Transport Arbitrary Keys on Telephone Set– Akin to ISDN Q.932 UserInput

KPML is NOT Replacement for IVR– VoiceXML

– MSCML

Page 4: Key Press Markup Language and Protocol (KPML) Prof. Ir. MIT Eric William Burger CTO, SnowShore Networks, Inc. Board Member, SIP Forum Board Member, IPCC

4 Copyright © 2004, SnowShore Networks, Inc. 22 January 2004

KPML Deployment Models: End Point

1 2 3

4 5 6

7 8 9

* 8 #

SD

Cisco AS5800 SERIES

Power

C I S C O Y S T E M SS

INVITE200 OKACK

NOTIFY200 OK

SUBSCRIBE200 OKNOTIFY200 OK

Page 5: Key Press Markup Language and Protocol (KPML) Prof. Ir. MIT Eric William Burger CTO, SnowShore Networks, Inc. Board Member, SIP Forum Board Member, IPCC

5 Copyright © 2004, SnowShore Networks, Inc. 22 January 2004

KPML Deployment Models: Application

SD

Cisco AS5800 SERIES

Power

C I S C O Y S T E M SS

INVITE200 OKACK

NOTIF

Y20

0 O

K

SUBSCRIBE

200

OK

NOTIF

Y20

0 O

K

Page 6: Key Press Markup Language and Protocol (KPML) Prof. Ir. MIT Eric William Burger CTO, SnowShore Networks, Inc. Board Member, SIP Forum Board Member, IPCC

6 Copyright © 2004, SnowShore Networks, Inc. 22 January 2004

KPML Deployment Models: Media Proxy

INVITE200 OKACK

NO

TIF

Y20

0 O

K

SU

BS

CR

IBE

200

OK

NO

TIF

Y20

0 O

KA1-MF

Tones

Page 7: Key Press Markup Language and Protocol (KPML) Prof. Ir. MIT Eric William Burger CTO, SnowShore Networks, Inc. Board Member, SIP Forum Board Member, IPCC

7 Copyright © 2004, SnowShore Networks, Inc. 22 January 2004

Protocol Mechanism

Key Presses Reflect State of Device– Use NOTIFY to Convey State Information

SUBSCRIBE to Device State– Natural Filtering at SUBSCRIBE Time

– Include Digit Maps of Interest

• Specified with DRegex

• Multiple, Tagged Digit Maps Supported

Page 8: Key Press Markup Language and Protocol (KPML) Prof. Ir. MIT Eric William Burger CTO, SnowShore Networks, Inc. Board Member, SIP Forum Board Member, IPCC

8 Copyright © 2004, SnowShore Networks, Inc. 22 January 2004

Subscription Duration

Persistent: Follows Rules of RFC 3265Digit Map Active Until

– Subscription Expires

– Subscription Canceled (expires: 0)

– Subscription Erased (SUBSCRIBE with NULL KPML)

– Subscription Dialog Terminated

– Monitored Leg’s Dialog Terminated

One-Shot: Digit Map Active Until– Digit Map Matches

– Digit Map Fails

– RFC 3265 Subscription Termination

Page 9: Key Press Markup Language and Protocol (KPML) Prof. Ir. MIT Eric William Burger CTO, SnowShore Networks, Inc. Board Member, SIP Forum Board Member, IPCC

9 Copyright © 2004, SnowShore Networks, Inc. 22 January 2004

Markup Features

Extensible Digit Map Specification– Can Use Namespaces for non-DRegex (e.g., MGCP or

H.248.1) Syntax

– Prefix Tag for Digit Suppression

• <regex><pre>*8</pre>xxxxxxxxxx</regex>

• Suppresses Transmission of Tones After “*8”

Extensible Quarantine Buffer Management

KPML-Specific Reporting– SIP Protocol Reports on Success of SIP Messaging

– Timeouts, Dialog Termination, Unsupported Features Handled by KPML Status Codes

Page 10: Key Press Markup Language and Protocol (KPML) Prof. Ir. MIT Eric William Burger CTO, SnowShore Networks, Inc. Board Member, SIP Forum Board Member, IPCC

10 Copyright © 2004, SnowShore Networks, Inc. 22 January 2004

Monitoring Direction

Usually Ask Device to Monitor Local RTP Stream

May Ask for State of Remote Stream– If Supported By Device

– If Authorized

Page 11: Key Press Markup Language and Protocol (KPML) Prof. Ir. MIT Eric William Burger CTO, SnowShore Networks, Inc. Board Member, SIP Forum Board Member, IPCC

11 Copyright © 2004, SnowShore Networks, Inc. 22 January 2004

DRegex

Familiar to MGCP and H.248.1 Users– Digits, x, dot, alternation– Adds Count Ranges, e.g., 00x{8,15}– Adds “Not” to Digit Ranges, e.g., [^01]– Uses * and #, not E and F– Uses Lx, not Zx or xL for Long Indicator

Adds Tags to Identify Which Rule Matched

Longest Match in Document Order

Inter-digit Timeout Once Matching Started

Return Key (e.g., “#”)– Immediately Ends Regular Expression Matching

Page 12: Key Press Markup Language and Protocol (KPML) Prof. Ir. MIT Eric William Burger CTO, SnowShore Networks, Inc. Board Member, SIP Forum Board Member, IPCC

12 Copyright © 2004, SnowShore Networks, Inc. 22 January 2004

Dial Pattern Examples

<?xml version="1.0"> <kpml version="1.0"> <request> <pattern> <regex>0|00|*69|7[2-9]xx|9[2-9]xxxxxx.|91xxxxxxxxxx|011x. </regex> </pattern> </request></kpml>

<?xml version="1.0"> <kpml version="1.0"> <request> <pattern> <regex tag="local-operator">0</regex> <regex tag="ld-operator">00</regex> <regex tag="return-call">*69</regex> <regex tag="vpn">7[^01][0-9][x]</regex> <regex tag="local-number">9x{7,10}/regex> <regex tag="RI-number">91401xxxxxxx</regex> <regex tag="ddd">91xxxxxxxxxx</regex> <regex tag="iddd">011x{,15}</regex> </pattern> </request></kpml>

Page 13: Key Press Markup Language and Protocol (KPML) Prof. Ir. MIT Eric William Burger CTO, SnowShore Networks, Inc. Board Member, SIP Forum Board Member, IPCC

13 Copyright © 2004, SnowShore Networks, Inc. 22 January 2004

KPML Responses

Responses Reflect Collected State at End Device

Filtered By KPML (DRegex digit maps)

NOTIFY Requests Send– KPML State (Status Code)– Collected Digits– Indicator if Digits Suppressed in Media Stream

<?xml version="1.0"?><kpml version="1.0"> <response code="200" text="OK" digits="94015551212" tag="RI-number"/></kpml>

Page 14: Key Press Markup Language and Protocol (KPML) Prof. Ir. MIT Eric William Burger CTO, SnowShore Networks, Inc. Board Member, SIP Forum Board Member, IPCC

14 Copyright © 2004, SnowShore Networks, Inc. 22 January 2004

Summary

KPML Enables Transport of Key Press Information– SIP-Centric Model

– Enables Mid-Call Triggers in SIP Environment

DRegex– Familiar to MGCP, H.248.1, MSCML Programmers

– More Flexible to Meet Modern Application String Needs

Extensible Markup– Use and Provision for Namespaces at Key Points

Page 15: Key Press Markup Language and Protocol (KPML) Prof. Ir. MIT Eric William Burger CTO, SnowShore Networks, Inc. Board Member, SIP Forum Board Member, IPCC

Powering the Service-Ready Network®

SnowShore Networks

Contact:Eric BurgerCTO, SnowShore Networks, Inc.

sip:[email protected]:[email protected]:+1 978/367-8400http://www.snowshore.com