Media Server Control Markup Language (MSCML) and Protocol
RFC 4722

Document Type RFC - Informational (November 2006; No errata)
Obsoleted by RFC 5022
Last updated 2013-03-02
Stream ISE
Formats plain text pdf html
Stream ISE state (None)
Document shepherd No shepherd assigned
IESG IESG state RFC 4722 (Informational)
Telechat date
Responsible AD Cullen Jennings
Send notices to eburger@cantata.com, jvandyke@cantata.com, mankin@psg.com
Network Working Group                                        J. Van Dyke
Request for Comments: 4722                                E. Burger, Ed.
Category: Informational                         Cantata Technology, Inc.
                                                              A. Spitzer
                                                     Pingtel Corporation
                                                           November 2006

       Media Server Control Markup Language (MSCML) and Protocol

Status of This Memo

   This memo provides information for the Internet community.  It does
   not specify an Internet standard of any kind.  Distribution of this
   memo is unlimited.

Copyright Notice

   Copyright (C) The IETF Trust (2006).

Abstract

   Media Server Control Markup Language (MSCML) is a markup language
   used in conjunction with SIP to provide advanced conferencing and
   interactive voice response (IVR) functions.  MSCML presents an
   application-level control model, as opposed to device-level control
   models.  One use of this protocol is for communications between a
   conference focus and mixer in the IETF SIP Conferencing Framework.

Van Dyke, et al.             Informational                      [Page 1]
RFC 4722                         MSCML                     November 2006

Table of Contents

   1. Introduction ....................................................4
      1.1. Conventions Used in This Document ..........................5
   2. MSCML Approach ..................................................5
   3. Use of SIP Request Methods ......................................6
   4. MSCML Design ....................................................8
      4.1. Transaction Model ..........................................8
      4.2. XML Usage ..................................................9
           4.2.1. MSCML Time Values ...................................9
   5. Advanced Conferencing ..........................................10
      5.1. Conference Model ..........................................10
      5.2. Configure Conference Request <configure_conference> .......11
      5.3. Configure Leg Request <configure_leg> .....................13
      5.4. Terminating a Conference ..................................14
      5.5. Conference Manipulation ...................................15
      5.6. Video Conferencing ........................................16
      5.7. Conference Events .........................................17
      5.8. Conferencing with Personalized Mixes ......................18
           5.8.1. MSCML Elements and Attributes for
                  Personalized Mixes .................................19
           5.8.2. Example Usage of Personalized Mixes ................20
   6. Interactive Voice Response (IVR) ...............................23
      6.1. Specifying Prompt Content .................................24
           6.1.1. Use of the Prompt Element ..........................24
      6.2. Multimedia Processing for IVR .............................30
      6.3. Playing Announcements <play> ..............................31
      6.4. Prompt and Collect <playcollect> ..........................32
           6.4.1. Control of Digit Buffering and Barge-In ............33
           6.4.2. Mapping DTMF Keys to Special Functions .............33
           6.4.3. Collection Timers ..................................35
           6.4.4. Logging Caller DTMF Input ..........................36
           6.4.5. Specifying DTMF Grammars ...........................36
           6.4.6. Playcollect Response ...............................37
           6.4.7. Playcollect Example ................................38
      6.5. Prompt and Record <playrecord> ............................38
           6.5.1. Prompt Phase .......................................38
           6.5.2. Record Phase .......................................39
           6.5.3. Playrecord Example .................................41
      6.6. Stop Request <stop> .......................................42
   7. Call Leg Events ................................................43
      7.1. Keypress Events ...........................................43
           7.1.1. Keypress Subscription Examples .....................45
           7.1.2. Keypress Notification Examples .....................45
      7.2. Signal Events .............................................46
           7.2.1. Signal Event Examples ..............................47
   8. Managing Content <managecontent> ...............................48
      8.1. Managecontent Example .....................................50

Van Dyke, et al.             Informational                      [Page 2]
RFC 4722                         MSCML                     November 2006
Show full document text