draft-ietf-sipping-toip-09.txt   rfc5194.txt 
SIPPING Workgroup A. van Wijk, Editor
Internet Draft G. Gybels, Editor
Category: Informational April 4, 2008
Expires: October 1, 2008
Framework for real-time text over IP using the Session Initiation Network Working Group A. van Wijk, Ed.
Protocol (SIP) Request for Comments: 5194 G. Gybels, Ed.
draft-ietf-sipping-toip-09.txt
Status of this Memo
By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware have
been or will be disclosed, and any of which he or she becomes aware
will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Task
Force (IETF), its areas, and its working groups. Note that other
groups may also distribute working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft will expire on October 1, 2008. Framework for Real-Time Text over IP Using
the Session Initiation Protocol (SIP)
Copyright Notice Status of This Memo
Copyright (C) The IETF Trust (2008). This memo provides information for the Internet community. It does
not specify an Internet standard of any kind. Distribution of this
memo is unlimited.
Abstract Abstract
This document lists the essential requirements for real-time Text- This document lists the essential requirements for real-time Text-
over-IP (ToIP) and defines a framework for implementation of all over-IP (ToIP) and defines a framework for implementation of all
required functions based on the Session Initiation Protocol (SIP) and required functions based on the Session Initiation Protocol (SIP) and
the Real-Time Transport Protocol (RTP). This includes interworking the Real-Time Transport Protocol (RTP). This includes interworking
between Text-over-IP and existing text telephony on the PSTN and other between Text-over-IP and existing text telephony on the Public
networks. Switched Telephone Network (PSTN) and other networks.
Table of Contents Table of Contents
1. Introduction....................................................2 1. Introduction ....................................................3
2. Scope...........................................................3 2. Scope ...........................................................4
3. Terminology.....................................................4 3. Terminology.....................................................4
4. Definitions.....................................................4 4. Definitions.....................................................4
5. Requirements....................................................6 5. Requirements....................................................6
5.1 General requirements for ToIP................................6 5.1. General Requirements for ToIP ..............................6
5.2. Detailed Requirements for ToIP .............................8
van Wijk, et al. Expires October 1, 2008 [Page 1] 5.2.1. Session Setup and Control Requirements ..............9
5.2 Detailed requirements for ToIP...............................7 5.2.2. Transport Requirements .............................10
5.2.1 Session set-up and control requirements..................7 5.2.3. Transcoding Service Requirements ...................10
5.2.2 Transport requirements...................................8 5.2.4. Presentation and User Control Requirements .........11
5.2.3 Transcoding service requirements.........................9 5.2.5. Interworking Requirements ..........................13
5.2.4 Presentation and User control requirements..............10 5.2.5.1. PSTN Interworking Requirements ............13
5.2.5 Interworking requirements...............................11 5.2.5.2. Cellular Interworking Requirements ........14
5.2.5.1 PSTN Interworking requirements......................12 5.2.5.3. Instant Messaging Interworking
5.2.5.2 Cellular Interworking requirements..................12 Requirements ..............................14
5.2.5.3 Instant Messaging Interworking requirements.........12 6. Implementation Framework .......................................15
6. Implementation Framework.......................................13 6.1. General Implementation Framework ..........................15
6.1 General implementation framework............................13 6.2. Detailed Implementation Framework .........................15
6.2 Detailed implementation framework...........................13 6.2.1. Session Control and Setup ..........................15
6.2.1 Session control and set-up..............................13 6.2.1.1. Pre-Session Setup .........................15
6.2.1.1 Pre-session set-up..................................13 6.2.1.2. Session Negotiations ......................16
6.2.1.2 Session Negotiations................................14 6.2.2. Transport ..........................................17
6.2.2 Transport...............................................15 6.2.3. Transcoding Services ...............................18
6.2.3 Transcoding services....................................16 6.2.4. Presentation and User Control Functions ............18
6.2.4 Presentation and User control functions.................16 6.2.4.1. Progress and Status Information ...........18
6.2.4.1 Progress and status information.....................16 6.2.4.2. Alerting ..................................18
6.2.4.2 Alerting............................................16 6.2.4.3. Text Presentation .........................19
6.2.4.3 Text presentation...................................16 6.2.4.4. File Storage ..............................19
6.2.4.4 File storage........................................17 6.2.5. Interworking Functions .............................19
6.2.5 Interworking functions..................................17 6.2.5.1. PSTN Interworking .........................20
6.2.5.1 PSTN Interworking...................................18 6.2.5.2. Mobile Interworking .......................22
6.2.5.2 Mobile Interworking.................................19 6.2.5.2.1. Cellular "No-gain" .............22
6.2.5.2.1 Cellular "No-gain"..............................19 6.2.5.2.2. Cellular Text Telephone
6.2.5.2.2 Cellular Text Telephone Modem (CTM).............19 Modem (CTM) ....................22
6.2.5.2.3 Cellular "Baudot mode"..........................20 6.2.5.2.3. Cellular "Baudot mode" .........22
6.2.5.2.4 Mobile data channel mode........................20 6.2.5.2.4. Mobile Data Channel Mode .......23
6.2.5.2.5 Mobile ToIP.....................................20 6.2.5.2.5. Mobile ToIP ....................23
6.2.5.3 Instant Messaging Interworking......................20 6.2.5.3. Instant Messaging Interworking ............23
6.2.5.4 Multi-functional Combination gateways...............21 6.2.5.4. Multi-Functional Combination Gateways .....24
6.2.5.5 Character set transcoding...........................21 6.2.5.5. Character Set Transcoding .................25
7. Further recommendations for implementers and service providers.22 7. Further Recommendations for Implementers and Service
7.1 Access to Emergency services................................22 Providers ......................................................25
7.2 Home Gateways or Analog Terminal Adapters...................22 7.1. Access to Emergency Services ..............................25
7.3 User Mobility...............................................23 7.2. Home Gateways or Analog Terminal Adapters .................25
7.4 Firewalls and NATs..........................................23 7.3. User Mobility .............................................26
7.5 Quality of Service..........................................23 7.4. Firewalls and NATs ........................................26
8. IANA Considerations............................................23 7.5. Quality of Service ........................................26
9. Security Considerations........................................23 8. Security Considerations ........................................26
10. Authors' Addresses.............................................24 9. Contributors ...................................................27
11. Contributors...................................................24 10. References ....................................................27
12. References.....................................................24 10.1. Normative References .....................................27
12.1 Normative references........................................24 10.2. Informative References ...................................29
12.2 Informative references......................................26
1. Introduction 1. Introduction
For many years, real-time text has been in use as a medium for For many years, real-time text has been in use as a medium for
conversational, interactive dialogue between users in a similar way conversational, interactive dialogue between users in a similar way
to how voice telephony is used. Such interactive text is different to how voice telephony is used. Such interactive text is different
van Wijk, et al. Expires October 1, 2008 [Page 2]
from messaging and semi-interactive solutions like Instant Messaging from messaging and semi-interactive solutions like Instant Messaging
in that it offers an equivalent conversational experience to users in that it offers an equivalent conversational experience to users
who cannot, or do not wish to, use voice. It therefore meets a who cannot, or do not wish to, use voice. It therefore meets a
different set of requirements from other text-based solutions already different set of requirements from other text-based solutions already
available on IP networks. available on IP networks.
Traditionally, deaf, hard of hearing and speech-impaired people are Traditionally, deaf, hard-of-hearing, and speech-impaired people are
amongst the most prolific users of real-time, conversational, amongst the most prolific users of real-time, conversational, text
text but, because of its interactivity, it is becoming popular amongst but, because of its interactivity, it is becoming popular amongst
mainstream users as well. Real-time text conversation can be combined mainstream users as well. Real-time text conversation can be
with other conversational media like video or voice. combined with other conversational media like video or voice.
This document describes how existing IETF protocols can be used to This document describes how existing IETF protocols can be used to
implement a Text-over-IP solution (ToIP). This document describes implement a Text-over-IP solution (ToIP). Therefore, this document
therefore how to use a set of existing components and protocols and describes how to use a set of existing components and protocols and
provides the requirements and rules for that resulting structure, provides the requirements and rules for that resulting structure,
which is why it is called a "framework", fitting commonly accepted which is why it is called a "framework", fitting commonly accepted
dictionary definitions of that term. dictionary definitions of that term.
This ToIP framework is specifically designed to be compatible with This ToIP framework is specifically designed to be compatible with
Voice-over-IP (VoIP), Video-over-IP and Multimedia-over-IP (MoIP) Voice-over-IP (VoIP), Video-over-IP, and Multimedia-over-IP (MoIP)
environments. This ToIP framework also builds upon, and is compatible environments. This ToIP framework also builds upon, and is
with, the high-level user requirements of deaf, hard of hearing and compatible with, the high-level user requirements of deaf, hard-of-
speech-impaired users as described in RFC3351 [I]. It also meets hearing and speech-impaired users as described in RFC3351 [22]. It
real-time text requirements of mainstream users. also meets real-time text requirements of mainstream users.
ToIP also offers an IP equivalent of analog text telephony services as ToIP also offers an IP equivalent of analog text telephony services
used by deaf, hard of hearing, speech-impaired and mainstream users. as used by deaf, hard-of-hearing, speech-impaired, and mainstream
users.
The Session Initiation Protocol (SIP) [2] is the protocol of choice The Session Initiation Protocol (SIP) [2] is the protocol of choice
for control of Multimedia communications and Voice-over-IP (VoIP) in for control of Multimedia communications and Voice-over-IP (VoIP) in
particular. It offers all the necessary control and signalling particular. It offers all the necessary control and signalling
required for the ToIP framework. required for the ToIP framework.
The Real-Time Transport Protocol (RTP) [3] is the protocol of choice The Real-Time Transport Protocol (RTP) [3] is the protocol of choice
for real-time data transmission, and its use for real-time text for real-time data transmission, and its use for real-time text
payloads is described in RFC4103 [4]. payloads is described in RFC4103 [4].
This document defines a framework for ToIP to be used either by itself This document defines a framework for ToIP to be used either by
or as part of integrated, multi-media services, including Total itself or as part of integrated, multi-media services, including
Conversation [5]. Total Conversation [5].
2. Scope 2. Scope
This document defines a framework for the implementation of real-time This document defines a framework for the implementation of real-time
ToIP, either stand-alone or as a part of multimedia services, ToIP, either stand-alone or as a part of multimedia services,
including Total Conversation [5]. It provides the: including Total Conversation [5]. It provides the:
a. requirements for real-time text; a. requirements for real-time text;
b. requirements for ToIP interworking; b. requirements for ToIP interworking;
c. description of ToIP implementation using SIP and RTP; c. description of ToIP implementation using SIP and RTP;
d. description of ToIP interworking with other text services.
van Wijk, et al. Expires October 1, 2008 [Page 3] d. description of ToIP interworking with other text services.
3. Terminology 3. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in "OPTIONAL" in this document are to be interpreted as described in RFC
RFC 2119 [6] and indicate requirement levels for compliant 2119 [6] and indicate requirement levels for compliant
implementations. implementations.
4. Definitions 4. Definitions
Audio bridging: a function of an audio media bridge server, gateway or Audio bridging: a function of an audio media bridge server, gateway,
relay service that sends to each destination the combination of audio or relay service that sends to each destination the combination of
from all participants in a conference excluding the participant(s) at audio from all participants in a conference, excluding the
that destination. At the RTP level, this is an instance of the mixer participant(s) at that destination. At the RTP level, this is an
function as defined in RFC 3550 [3]. instance of the mixer function as defined in RFC 3550 [3].
Cellular: a telecommunication network that has wireless access and can Cellular: a telecommunication network that has wireless access and
support voice and data services over very large geographical areas. can support voice and data services over very large geographical
Also called Mobile. areas. Also called Mobile.
Full duplex: media is sent independently in both directions. Full duplex: media is sent independently in both directions.
Half duplex: media can only be sent in one direction at a time or, Half duplex: media can only be sent in one direction at a time, or if
if an attempt to send information in both directions is made, errors an attempt to send information in both directions is made, errors may
may be introduced into the presented media. be introduced into the presented media.
Interactive text: another term for real-time text, as defined below. Interactive text: another term for real-time text, as defined below.
Real-time text: a term for real time transmission of text in a Real-time text: a term for real-time transmission of text in a
character-by-character fashion for use in conversational services, character-by-character fashion for use in conversational services,
often as a text equivalent to voice based conversational services. often as a text equivalent to voice-based conversational services.
Conversational text is defined in the ITU-T Framework for multimedia Conversational text is defined in the ITU-T Framework for multimedia
services, Recommendation F.700 [21]. services, Recommendation F.700 [21].
Text gateway: a function that transcodes between different forms of Text gateway: a function that transcodes between different forms of
text transport methods, e.g., between ToIP in IP networks and Baudot text transport methods, e.g., between ToIP in IP networks and Baudot
or ITU-T V.21 text telephony in the PSTN. or ITU-T V.21 text telephony in the PSTN.
Textphone: also "text telephone". A terminal device that allows end- Textphone: also "text telephone". A terminal device that allows
to-end real-time text communication using analog transmission. A end-to-end real-time text communication using analog transmission. A
variety of PSTN textphone protocols exists world-wide. A textphone can variety of PSTN textphone protocols exists world-wide. A textphone
often be combined with a voice telephone, or include voice can often be combined with a voice telephone, or include voice
communication functions for simultaneous or alternating use of text communication functions for simultaneous or alternating use of text
and voice in a call. and voice in a call.
Text bridging: a function of the text media bridge server, gateway Text bridging: a function of the text media bridge server, gateway
(including transcoding gateways) or relay service analogous to that of (including transcoding gateways), or relay service analogous to that
audio bridging as defined above, except that text is the medium of of audio bridging as defined above, except that text is the medium of
conversation. conversation.
Text relay service: a third-party or intermediary that enables Text relay service: a third-party or intermediary that enables
communications between deaf, hard of hearing and speech-impaired communications between deaf, hard-of-hearing, and speech-impaired
van Wijk, et al. Expires October 1, 2008 [Page 4]
people and voice telephone users by translating between voice and people and voice telephone users by translating between voice and
real-time text in a call. real-time text in a call.
Text telephony: analog textphone service. Text telephony: analog textphone service.
Total Conversation: a multimedia service offering real time Total Conversation: a multimedia service offering real-time
conversation in video, real-time text and voice according to conversation in video, real-time text and voice according to
interoperable standards. All media streams flow in real time. (See interoperable standards. All media streams flow in real time. (See
ITU-T F.703 "Multimedia conversational services" [5].) ITU-T F.703, "Multimedia conversational services" [5].)
Transcoding service: a service provided by a third-party User Agent Transcoding service: a service provided by a third-party User Agent
that transcodes one stream into another. Transcoding can be done by that transcodes one stream into another. Transcoding can be done by
human operators, in an automated manner, or by a combination of both human operators, in an automated manner, or by a combination of both
methods. Within this document the term particularly applies to methods. Within this document, the term particularly applies to
conversion between different types of media. A text relay service is conversion between different types of media. A text relay service is
an example of a transcoding service that converts between real-time an example of a transcoding service that converts between real-time
text and audio. text and audio.
TTY: originally, an abbreviation for "teletype". Often used in North TTY: originally, an abbreviation for "teletype". Often used in North
America as an alternative designation for a text telephone or America as an alternative designation for a text telephone or
textphone. Also called TDD, Telecommunication Device for the Deaf. textphone. Also called TDD, Telecommunication Device for the Deaf.
Video relay service: a service that enables communications between Video relay service: a service that enables communications between
deaf and hard of hearing people and hearing persons with voice deaf and hard-of-hearing people and hearing persons with voice
telephones by translating between sign language and spoken language in telephones by translating between sign language and spoken language
a call. in a call.
Acronyms: Acronyms:
2G Second generation cellular (mobile) 2G Second generation cellular (mobile)
2.5G Enhanced second generation cellular (mobile) 2.5G Enhanced second generation cellular (mobile)
3G Third generation cellular (mobile) 3G Third generation cellular (mobile)
ATA Analog Telephone Adaptor ATA Analog Telephone Adaptor
CDMA Code Division Multiple Access CDMA Code Division Multiple Access
CLI Calling Line Identification CLI Calling Line Identification
CTM Cellular Text Telephone Modem CTM Cellular Text Telephone Modem
ENUM E.164 number storage in DNS (see RFC3761) ENUM E.164 number storage in DNS (see RFC3761)
GSM Global System for Mobile Communications GSM Global System for Mobile Communications
ISDN Integrated Services Digital Network ISDN Integrated Services Digital Network
ITU-T International Telecommunications Union-Telecommunications ITU-T International Telecommunications
Standardisation Sector Union-Telecommunications Standardisation Sector
NAT Network Address Translation NAT Network Address Translation
PSTN Public Switched Telephone Network PSTN Public Switched Telephone Network
RTP Real Time Transport Protocol RTP Real-Time Transport Protocol
SDP Session Description Protocol SDP Session Description Protocol
SIP Session Initiation Protocol SIP Session Initiation Protocol
SRTP Secure Real Time Transport Protocol SRTP Secure Real Time Transport Protocol
TDD Telecommunication Device for the Deaf TDD Telecommunication Device for the Deaf
TDMA Time Division Multiple Access TDMA Time Division Multiple Access
TTY Analog textphone (Teletypewriter) TTY Analog textphone (Teletypewriter)
ToIP Real-time Text over Internet Protocol ToIP Real-time Text over Internet Protocol
URI Uniform Resource Identifier URI Uniform Resource Identifier
van Wijk, et al. Expires October 1, 2008 [Page 5]
UTF-8 UCS/Unicode Transformation Format-8 UTF-8 UCS/Unicode Transformation Format-8
VCO/HCO Voice Carry Over/Hearing Carry Over VCO/HCO Voice Carry Over/Hearing Carry Over
VoIP Voice over Internet Protocol VoIP Voice over Internet Protocol
5. Requirements 5. Requirements
The framework described in section 6 defines a real-time text-based The framework described in Section 6 defines a real-time text-based
conversational service that is the text equivalent of voice based conversational service that is the text equivalent of voice-based
telephony. This section describes the requirements that the framework telephony. This section describes the requirements that the
is designed to meet and the functionality it should offer. framework is designed to meet and the functionality it should offer.
5.1 General requirements for ToIP 5.1. General Requirements for ToIP
Any framework for ToIP must be derived from the requirements of Any framework for ToIP must be derived from the requirements of RFC
RFC3351 [I]. A basic requirement is that it must provide a 3351 [22]. A basic requirement is that it must provide a
standardized way for offering real-time text-based, conversational standardized way for offering real-time text-based conversational
services that can be used as an equivalent to voice telephony by deaf, services that can be used as an equivalent to voice telephony by
hard of hearing speech-impaired and mainstream users. deaf, hard-of-hearing, speech-impaired, and mainstream users.
It is important to understand that real-time text conversations are It is important to understand that real-time text conversations are
significantly different from other text-based communications like significantly different from other text-based communications like
email or Instant Messaging. Real-time text conversations deliver an email or Instant Messaging. Real-time text conversations deliver an
equivalent mode to voice conversations by providing transmission of equivalent mode to voice conversations by providing transmission of
text character by character as it is entered, so that the conversation text character by character as it is entered, so that the
can be followed closely and immediate interaction take place. conversation can be followed closely and that immediate interaction
takes place.
Store-and-forward systems like email or messaging on mobile networks Store-and-forward systems like email or messaging on mobile networks,
or non-streaming systems like instant messaging are unable to provide or non-streaming systems like instant messaging, are unable to
that functionality. In particular, they do not allow for smooth provide that functionality. In particular, they do not allow for
communication through a Text Relay Service. smooth communication through a Text Relay Service.
In order to make ToIP the text equivalent of voice services, ToIP In order to make ToIP the text equivalent of voice services, ToIP
needs to offer equivalent features in terms of conversationality to needs to offer equivalent features in terms of conversationality to
those provided by voice. To achieve that, ToIP needs to: those provided by voice. To achieve that, ToIP needs to:
a. offer real-time transport and presentation of the conversation; a. offer real-time transport and presentation of the conversation;
b. provide simultaneous transmission in both directions; b. provide simultaneous transmission in both directions;
c. support both point-to-point and multipoint communication; c. support both point-to-point and multipoint communication;
d. allow other media, like audio and video, to be used in conjunction d. allow other media, like audio and video, to be used in conjunction
with ToIP; with ToIP;
e. ensure that the real-time text service is always available. e. ensure that the real-time text service is always available.
Real-time text is a useful subset of Total Conversation as defined in Real-time text is a useful subset of Total Conversation as defined in
ITU-T F.703 [5]. Total Conversation allows participants to use ITU-T F.703 [5]. Total Conversation allows participants to use
multiple modes of communication during the conversation, either at the multiple modes of communication during the conversation, either at
same time or by switching between modes, e.g., between real-time text the same time or by switching between modes, e.g., between real-time
and audio. text and audio.
Deaf, hard-of-hearing and mainstream users may invoke ToIP services Deaf, hard-of-hearing, and mainstream users may invoke ToIP services
for many different reasons: for many different reasons:
van Wijk, et al. Expires October 1, 2008 [Page 6]
- because they are in a noisy environment, e.g., in a machine room of - because they are in a noisy environment, e.g., in a machine room of
a factory where listening is difficult; a factory where listening is difficult;
- because they are busy with another call and want to participate in - because they are busy with another call and want to participate in
two calls at the same time; two calls at the same time;
- for implementing text and/or speech recording services (e.g., text - for implementing text and/or speech recording services (e.g., text
documentation/ audio recording) for legal purposes, for clarity or documentation/audio recording) for legal purposes, for clarity, or
for flexibility; for flexibility;
- to overcome language barriers through speech translation and/or - to overcome language barriers through speech translation and/or
transcoding services; transcoding services;
- because of hearing loss, deafness or tinnitus as a result of the
aging process or for any other reason, creating a need to replace or - because of hearing loss, deafness, or tinnitus as a result of the
complement voice with real-time text in conversational sessions. aging process or for any other reason, creating a need to replace
or complement voice with real-time text in conversational sessions.
In many of the above examples, real-time text may accompany speech. In many of the above examples, real-time text may accompany speech.
The text could be displayed side by side, or in a manner similar to The text could be displayed side by side, or in a manner similar to
subtitling in broadcasting environments, or in any other suitable subtitling in broadcasting environments, or in any other suitable
manner. This could occur with users who are hard of hearing and also manner. This could occur with users who are hard of hearing and also
for mixed media calls with both hearing and deaf people participating for mixed media calls with both hearing and deaf people participating
in the call. in the call.
A ToIP user may wish to call another ToIP user, join a conference A ToIP user may wish to call another ToIP user, join a conference
session involving several users, or initiate or join a multimedia session involving several users, or initiate or join a multimedia
session, such as a Total Conversation session. session, such as a Total Conversation session.
A common scenario for multipoint real-time text is conference calling A common scenario for multipoint real-time text is conference calling
with many participants. Implementers could for example use different with many participants. Implementers could, for example, use
colours to render different participants' text, or could create different colours to render different participants' text, or could
separate windows or rendering areas for each participant. create separate windows or rendering areas for each participant.
5.2 Detailed requirements for ToIP 5.2. Detailed Requirements for ToIP
The following sections list individual requirements for ToIP. Each The following sections list individual requirements for ToIP. Each
requirement has been given a unique identifier (R1, R2, etc). Section requirement has been given a unique identifier (R1, R2, etc.).
6 (Implementation Framework) describes how to implement ToIP based on Section 6 (Implementation Framework) describes how to implement ToIP
these requirements and using existing protocols and techniques. based on these requirements by using existing protocols and
techniques.
The requirements are organized under the following headings: The requirements are organized under the following headings:
- session set-up and session control;
- session setup and session control;
- transport; - transport;
- use of transcoding services; - use of transcoding services;
- presentation and user control; - presentation and user control;
- interworking. - interworking.
5.2.1 Session set-up and control requirements 5.2.1. Session Setup and Control Requirements
Conversations could be started using a mode other than real-time text. Conversations could be started using a mode other than real-time
Simultaneous or alternating voice and real-time text is used by a text. Simultaneous or alternating voice and real-time text is used
large number of people who can send voice but must receive text (due by a large number of people who can send voice but must receive text
to a hearing impairment), or who can hear but must send text (due to a (due to a hearing impairment), or who can hear but must send text
speech impairment). (due to a speech impairment).
van Wijk, et al. Expires October 1, 2008 [Page 7]
R1: It SHOULD be possible to start conversations in any mode (real- R1: It SHOULD be possible to start conversations in any mode (real-
time text, voice, video) or combination of modes. time text, voice, video) or combination of modes.
R2: It MUST be possible for the users to switch to real-time text, or R2: It MUST be possible for the users to switch to real-time text, or
add real-time text as an additional modality, during the conversation. add real-time text as an additional modality, during the
conversation.
R3: Systems supporting ToIP MUST allow users to select any of the R3: Systems supporting ToIP MUST allow users to select any of the
supported conversation modes at any time, including in mid- supported conversation modes at any time, including in mid-
conversation. conversation.
R4: Systems SHOULD allow the user to specify a preferred mode of R4: Systems SHOULD allow the user to specify a preferred mode of
communication in each direction, with the ability to fall back to communication in each direction, with the ability to fall back to
alternatives that the user has indicated are acceptable. alternatives that the user has indicated are acceptable.
R5: If the user requests simultaneous use of real-time text and audio, R5: If the user requests simultaneous use of real-time text and
and this is not possible because of constraints in the network, the audio, and this is not possible because of constraints in the
system SHOULD try to establish text only communication if that is network, the system SHOULD try to establish text-only communication
what the user has specified as his/her preference. if that is what the user has specified as his/her preference.
R6: If the user has expressed a preference for real-time text, R6: If the user has expressed a preference for real-time text,
establishment of a connection including real-time text MUST have establishment of a connection including real-time text MUST have
priority over other outcomes of the session setup. priority over other outcomes of the session setup.
R7: It MUST be possible to use real-time text in conferences both as a R7: It MUST be possible to use real-time text in conferences both as
medium of discussion between individual participants (for example, for a medium of discussion between individual participants (for example,
sidebar discussions in real-time text while listening to the main for sidebar discussions in real-time text while listening to the main
conference audio) and for central support of the conference with conference audio) and for central support of the conference with
real-time text interpretation of speech. real-time text interpretation of speech.
R8: Session set up and negotiation of modalities MUST allow users to R8: Session set up and negotiation of modalities MUST allow users to
specify the language of the real-time text to be used. (It is specify the language of the real-time text to be used. (It is
RECOMMENDED that similar functionality be provided for the video part RECOMMENDED that similar functionality be provided for the video part
of the conversation, i.e. to specify the sign language being used). of the conversation, i.e., to specify the sign language being used).
R9: Where certain session services are available for the audio media R9: Where certain session services are available for the audio media
part of a session, these functions MUST also be supported for the part of a session, these functions MUST also be supported for the
real-time text media part of the same session. For example, call real-time text media part of the same session. For example, call
transfer must act on all media in the session. transfer must act on all media in the session.
5.2.2 Transport requirements 5.2.2. Transport Requirements
ToIP will often be used to access a relay service [V], allowing real-
time text users to communicate with voice users. With relay services,
as well as in direct user-to-user conversation, it is crucial that
text characters are sent as soon as possible after they are entered.
While buffering may be done to improve efficiency, the delays SHOULD
be kept minimal. In particular, buffering of whole lines of text will
not meet character delay requirements.
R10: Characters must be transmitted soon after entry of each character ToIP will often be used to access a relay service [24], allowing
so that the maximum delay requirement can be met. An end-to-end delay real-time text users to communicate with voice users. With relay
time of one second is regarded as good, while users note and services, as well as in direct user-to-user conversation, it is
crucial that text characters are sent as soon as possible after they
are entered. While buffering may be done to improve efficiency, the
delays SHOULD be kept minimal. In particular, buffering of whole
lines of text will not meet character delay requirements.
van Wijk, et al. Expires October 1, 2008 [Page 8] R10: Characters must be transmitted soon after entry of each
appreciate shorter delays, down to 300ms. A delay of up to two seconds character so that the maximum delay requirement can be met. An end-
is possible to use. to-end delay time of one second is regarded as good, while users note
and appreciate shorter delays, down to 300ms. A delay of up to two
seconds is possible to use.
R11: Real-time text transmission from a terminal SHALL be performed R11: Real-time text transmission from a terminal SHALL be performed
character by character as entered, or in small groups of characters, character by character as entered, or in small groups of characters,
so that no character is delayed from entry to transmission by more so that no character is delayed from entry to transmission by more
than 300 milliseconds. than 300 milliseconds.
R12: It MUST be possible to transmit characters at a rate sufficient R12: It MUST be possible to transmit characters at a rate sufficient
to support fast human typing as well as speech-to-text methods of to support fast human typing as well as speech-to-text methods of
generating real-time text. A rate of 30 characters per second is generating real-time text. A rate of 30 characters per second is
regarded as sufficient. regarded as sufficient.
R13: A ToIP service MUST be able to deal with international character R13: A ToIP service MUST be able to deal with international character
sets. sets.
R14: Where it is possible, loss or corruption of real-time text during R14: Where it is possible, loss or corruption of real-time text
transport SHOULD be detected and the user should be informed. during transport SHOULD be detected and the user should be informed.
R15: Transport of real-time text SHOULD be as robust as possible, so R15: Transport of real-time text SHOULD be as robust as possible, so
as to minimize loss of characters. as to minimize loss of characters.
R16: It SHOULD be possible to send and receive real-time text R16: It SHOULD be possible to send and receive real-time text
simultaneously. simultaneously.
5.2.3 Transcoding service requirements 5.2.3. Transcoding Service Requirements
If the User Agents of different participants indicate that there is an If the User Agents of different participants indicate that there is
incompatibility between their capabilities to support certain media an incompatibility between their capabilities to support certain
types, e.g. one User Agent only offering T.140 over IP as described in media types, e.g., one User Agent only offering T.140 over IP, as
RFC4103 [4] and the other one only supporting audio, the user might described in RFC 4103 [4], and the other one only supporting audio,
want to invoke a transcoding service. the user might want to invoke a transcoding service.
Some users may indicate their preferred modality to be audio while Some users may indicate their preferred modality to be audio while
others may indicate real-time text. In this case, transcoding services others may indicate real-time text. In this case, transcoding
might be needed for text-to-speech (TTS) and speech-to-text (STT). services might be needed for text-to-speech (TTS) and speech-to-text
Other examples of possible scenarios for including a relay service in (STT). Other examples of possible scenarios for including a relay
the conversation are: text bridging after conversion from speech, service in the conversation are: text bridging after conversion from
audio bridging after conversion from real-time text, etc. speech, audio bridging after conversion from real-time text, etc.
A number of requirements, motivations and implementation guidelines A number of requirements, motivations, and implementation guidelines
for relay service invocation can be found in RFC 3351 [I]. for relay service invocation can be found in RFC 3351 [22].
R17: It MUST be possible for users to invoke a transcoding service R17: It MUST be possible for users to invoke a transcoding service
where such service is available. where such service is available.
R18: It MUST be possible for users to indicate their preferred R18: It MUST be possible for users to indicate their preferred
modality (e.g. ToIP). modality (e.g., ToIP).
R19: It MUST be possible to negotiate the requirements for transcoding R19: It MUST be possible to negotiate the requirements for
services in real time in the process of setting up a call. transcoding services in real time in the process of setting up a
call.
van Wijk, et al. Expires October 1, 2008 [Page 9] R20: It MUST be possible to negotiate the requirements for
R20: It MUST be possible to negotiate the requirements for transcoding transcoding services in mid-call, for the immediate addition of those
services in mid-call, for the immediate addition of those services to services to the call.
the call.
R21: Communication between the end participants SHOULD continue after R21: Communication between the end participants SHOULD continue after
the addition or removal of a text relay service, and the effect of the the addition or removal of a text relay service, and the effect of
change should be limited in the users' perception to the direct effect the change should be limited in the users' perception to the direct
of having or not having the transcoding service in the connection. effect of having or not having the transcoding service in the
connection.
R22: When setting up a session, it MUST be possible for a user to R22: When setting up a session, it MUST be possible for a user to
specify the type of relay service requested (e.g., speech to text or specify the type of relay service requested (e.g., speech to text or
text to speech). The specification of a type of relay SHOULD include text to speech). The specification of a type of relay SHOULD include
a language specifier. a language specifier.
R23: It SHOULD be possible to route the session to a preferred relay R23: It SHOULD be possible to route the session to a preferred relay
service even if the user invokes the session from another region or service even if the user invokes the session from another region or
network than that usually used. network than that usually used.
R24: It is RECOMMENDED that ToIP implementations make the invocation R24: It is RECOMMENDED that ToIP implementations make the invocation
and use of relay services as easy as possible. and use of relay services as easy as possible.
5.2.4 Presentation and User control requirements 5.2.4. Presentation and User Control Requirements
A user should never be in doubt about the status of the session, even A user should never be in doubt about the status of the session, even
if the user is unable to make use of the audio or visual indication. if the user is unable to make use of the audio or visual indication.
For example, tactile indications could be used by deafblind For example, tactile indications could be used by deaf-blind
individuals. individuals.
R25: User Agents for ToIP services MUST have alerting methods (e.g., R25: User Agents for ToIP services MUST have alerting methods (e.g.,
for incoming sessions) that can be used by deaf and hard of hearing for incoming sessions) that can be used by deaf and hard-of-hearing
people or provide a range of alternative, but equivalent, alerting people or provide a range of alternative, but equivalent, alerting
methods that can be selected by all users, regardless of their methods that can be selected by all users, regardless of their
abilities. abilities.
R26: Where real-time text is used in conjunction with other media, R26: Where real-time text is used in conjunction with other media,
exposure of user control functions through the User Interface needs to exposure of user control functions through the User Interface needs
be done in an equivalent manner for all supported media. For example, to be done in an equivalent manner for all supported media. For
it must be possible for the user to select between audio, visual or example, it must be possible for the user to select between audio,
tactile prompts, or all must be supplied. visual, or tactile prompts, or all must be supplied.
R27: If available, identification of the originating party (for R27: If available, identification of the originating party (e.g., in
example in the form of a URI or a CLI) MUST be clearly presented to the form of a URI or a Calling Line Identification (CLI)) MUST be
the user in a form suitable for the user BEFORE the session invitation clearly presented to the user in a form suitable for the user BEFORE
is answered. the session invitation is answered.
R28: When a session invitation involving ToIP originates from a PSTN R28: When a session invitation involving ToIP originates from a
text telephone (e.g. transcoded via a text gateway), this SHOULD be Public Switched Telephone Network (PSTN) text telephone (e.g.,
indicated to the user. The ToIP client MAY adjust the presentation of transcoded via a text gateway), this SHOULD be indicated to the user.
the real-time text to the user as a consequence. The ToIP client MAY adjust the presentation of the real-time text to
the user as a consequence.
R29: An indication SHOULD be given to the user when real-time text is R29: An indication SHOULD be given to the user when real-time text is
available during the call, even if it is not invoked at call setup available during the call, even if it is not invoked at call setup
(e.g. when only voice and/or video is used initially). (e.g., when only voice and/or video is used initially).
R30: The user MUST be informed of any change in modalities. R30: The user MUST be informed of any change in modalities.
R31: Users MUST be presented with appropriate session progress R31: Users MUST be presented with appropriate session progress
information at all times. information at all times.
R32: Systems for ToIP SHOULD support an answering machine function, R32: Systems for ToIP SHOULD support an answering machine function,
equivalent to answering machines on telephony networks. equivalent to answering machines on telephony networks.
R33: If an answering machine function is supported, it MUST support at R33: If an answering machine function is supported, it MUST support
least 160 characters for the greeting message. It MUST support at least 160 characters for the greeting message. It MUST support
incoming text message storage of a minimum of 4096 characters, incoming text message storage of a minimum of 4096 characters,
although systems MAY support much larger storage. It is RECOMMENDED although systems MAY support much larger storage. It is RECOMMENDED
that systems support storage of at least 20 incoming messages of up to that systems support storage of at least 20 incoming messages of up
16000 characters per message. to 16000 characters per message.
R34: When the answering machine is activated, user alerting SHOULD R34: When the answering machine is activated, user alerting SHOULD
still take place. The user SHOULD be allowed to monitor the auto- still take place. The user SHOULD be allowed to monitor the auto-
answer progress and where this is provided the user SHOULD be allowed answer progress, and where this is provided, the user SHOULD be
to intervene during any stage of the answering machine procedure and allowed to intervene during any stage of the answering machine
take control of the session. procedure and take control of the session.
R35: It SHOULD be possible to save the text portion of a conversation. R35: It SHOULD be possible to save the text portion of a
conversation.
R36: The presentation of the conversation SHOULD be done in such a way R36: The presentation of the conversation SHOULD be done in such a
that users can easily identify which party generated any given portion way that users can easily identify which party generated any given
of text. portion of text.
R37: ToIP SHOULD handle characters such as new line, erasure and R37: ToIP SHOULD handle characters such as new line, erasure, and
alerting during a session as specified in ITU-T T.140 [8]. alerting during a session as specified in ITU-T T.140 [8].
5.2.5 Interworking requirements 5.2.5. Interworking Requirements
There is a range of existing real-time text services. There is also a There is a range of existing real-time text services. There is also
range of network technologies that could support real-time text a range of network technologies that could support real-time text
services. services.
Real-time/interactive texting facilities exist already in various Real-time/interactive texting facilities exist already in various
forms and on various networks. In the PSTN, they are commonly referred forms and on various networks. In the PSTN, they are commonly
to as text telephony. referred to as text telephony.
Text gateways are used for converting between different protocols for Text gateways are used for converting between different protocols for
text conversation. They can be used between networks or within text conversation. They can be used between networks or within
networks where different transport technologies are used. networks where different transport technologies are used.
R38: ToIP SHOULD provide interoperability with text conversation R38: ToIP SHOULD provide interoperability with text conversation
features in other networks, for instance the PSTN. features in other networks, for instance the PSTN.
R39: When communicating via a gateway to other networks and protocols, R39: When communicating via a gateway to other networks and
the ToIP service SHOULD support the functionality for alternating or protocols, the ToIP service SHOULD support the functionality for
simultaneous use of modalities as offered by the interworking network. alternating or simultaneous use of modalities as offered by the
interworking network.
R40: Calling party identification information, such as CLI, MUST be R40: Calling party identification information, such as CLI, MUST be
passed by gateways and converted to an appropriate form if required. passed by gateways and converted to an appropriate form, if required.
R41: When interworking with other networks and services, the ToIP R41: When interworking with other networks and services, the ToIP
service SHOULD provide buffering mechanisms to deal with delays in service SHOULD provide buffering mechanisms to deal with delays in
call setup, differences in transmission speeds and/or to interwork call setup and with differences in transmission speeds, and/or to
with half duplex services. interwork with half-duplex services.
5.2.5.1 PSTN Interworking requirements 5.2.5.1. PSTN Interworking Requirements
Analog text telephony is used in many countries, mainly by deaf, hard Analog text telephony is used in many countries, mainly by deaf,
of hearing and speech-impaired individuals. hard-of-hearing and speech-impaired individuals.
R42: ToIP services MUST provide interworking with PSTN legacy text R42: ToIP services MUST provide interworking with PSTN legacy text
telephony devices. telephony devices.
R43: When interworking with PSTN legacy text telephony services, R43: When interworking with PSTN legacy text telephony services,
alternating text and voice function MAY be supported. (Called "voice alternating text and voice function MAY be supported. (Called "voice
carry over (VCO) and hearing carry over (HCO)"). carry over (VCO) and hearing carry over (HCO)").
5.2.5.2 Cellular Interworking requirements 5.2.5.2. Cellular Interworking Requirements
As mobile communications have been adopted widely, various solutions As mobile communications have been adopted widely, various solutions
for real-time texting while on the move were developed. ToIP services for real-time texting while on the move were developed. ToIP
should provide interworking with such services as well. services should provide interworking with such services as well.
Alternative means of transferring the Text telephony data have been Alternative means of transferring the text telephony data have been
developed when TTY services over cellular were mandated by the FCC in developed when TTY services over cellular were mandated by the FCC in
the USA. They are the a) "No-gain" codec solution, and b) the Cellular the USA. They are the a) "No-gain" codec solution, and b) the
Text Telephony Modem (CTM) solution [7] both collectively called Cellular Text Telephony Modem (CTM) solution [7], both collectively
"Baudot mode" solution in the USA. called "Baudot mode" solution in the USA.
The GSM and 3G standards from 3GPP make use of the CTM modem in the The GSM and 3G standards from 3GPP make use of the CTM modem in the
voice channel for text telephony. However, implementations also exist voice channel for text telephony. However, implementations also
that use the data channel to provide such functionality. Interworking exist that use the data channel to provide such functionality.
with these solutions should be done using text gateways that set up Interworking with these solutions should be done using text gateways
the data channel connection at the GSM side and provide ToIP at the that set up the data channel connection at the GSM side and provide
other side. ToIP at the other side.
R44: a ToIP service SHOULD provide interworking with mobile text R44: a ToIP service SHOULD provide interworking with mobile text
conversation services. conversation services.
5.2.5.3 Instant Messaging Interworking requirements 5.2.5.3. Instant Messaging Interworking Requirements
Many people use Instant Messaging to communicate via the Internet Many people use Instant Messaging to communicate via the Internet
using text. Instant Messaging usually transfers blocks of text rather using text. Instant Messaging usually transfers blocks of text
than streaming as is used by ToIP. Usually a specific action is rather than streaming as is used by ToIP. Usually a specific action
required by the user to activate transmission, such as pressing the is required by the user to activate transmission, such as pressing
ENTER key or a send button. As such, it is not a replacement for ToIP the ENTER key or a send button. As such, it is not a replacement for
and in particular does not meet the needs for real time conversations ToIP; in particular, it does not meet the needs for real-time
including those of deaf, hard of hearing and speech-impaired users as conversations including those of deaf, hard-of-hearing, and speech-
defined in RFC 3351 [I]. It is less suitable for communications impaired users as defined in RFC 3351 [22]. It is less suitable for
through a relay service [V]. communications through a relay service [24].
The streaming nature of ToIP provides a more direct conversational The streaming nature of ToIP provides a more direct conversational
user experience and, when given the choice, users may prefer ToIP. user experience and, when given the choice, users may prefer ToIP.
R45: a ToIP service MAY provide interworking with Instant Messaging R45: a ToIP service MAY provide interworking with Instant Messaging
services. services.
6. Implementation Framework 6. Implementation Framework
This section describes an implementation framework for ToIP that meets This section describes an implementation framework for ToIP that
the requirements and offers the functionality as set out in section 5. meets the requirements and offers the functionality as set out in
The framework presented here uses existing standards that are already Section 5. The framework presented here uses existing standards that
commonly used for voice based conversational services on IP networks. are already commonly used for voice-based conversational services on
IP networks.
6.1 General implementation framework 6.1. General Implementation Framework
This framework specifies the use of the Session Initiation Protocol This framework specifies the use of the Session Initiation Protocol
(SIP) [2] to set up, control and tear down the connections between (SIP) [2] to set up, control, and tear down the connections between
ToIP users whilst the media is transported using the Real-Time ToIP users whilst the media is transported using the Real-Time
Transport Protocol (RTP) [3] as described in RFC 4103 [4]. Transport Protocol (RTP) [3] as described in RFC 4103 [4].
RFC 4504 describes how to implement support for real-time text in SIP RFC 4504 describes how to implement support for real-time text in SIP
telephony devices [II]. telephony devices [23].
6.2 Detailed implementation framework 6.2. Detailed Implementation Framework
6.2.1 Session control and set-up 6.2.1. Session Control and Setup
ToIP services MUST use the Session Initiation Protocol (SIP) [2] for ToIP services MUST use the Session Initiation Protocol (SIP) [2] for
setting up, controlling and terminating sessions for real-time text setting up, controlling, and terminating sessions for real-time text
conversation with one or more participants and possibly including conversation with one or more participants and possibly including
other media like video or audio. The Session Description Protocol other media like video or audio. The Session Description Protocol
(SDP) used in SIP to describe the session is used to express the (SDP) used in SIP to describe the session is used to express the
attributes of the session and to negotiate a set of compatible media attributes of the session and to negotiate a set of compatible media
types. types.
SIP [2] allows participants to negotiate all media including real-time SIP [2] allows participants to negotiate all media, including real-
text conversation [4]. ToIP services can provide the ability to set up time text conversation [4]. ToIP services can provide the ability to
conversation sessions from any location as well as provision for set up conversation sessions from any location as well as provision
privacy and security through the application of standard SIP for privacy and security through the application of standard SIP
techniques. techniques.
6.2.1.1 Pre-session set-up 6.2.1.1. Pre-Session Setup
The requirements of the user to be reached at a consistent address and The requirements of the user to be reached at a consistent address
to store preferences for evaluation at session setup are met by pre- and to store preferences for evaluation at session setup are met by
session setup actions. That includes storing of registration pre-session setup actions. That includes storing of registration
information in the SIP registrar, to provide information about how a information in the SIP registrar to provide information about how a
user can be contacted. This will allow sessions to be set up rapidly user can be contacted. This will allow sessions to be set up rapidly
and with proper routing and addressing. and with proper routing and addressing.
The need to use real-time text as a medium of communications can be The need to use real-time text as a medium of communications can be
expressed by users during registration time. Two situations need to be expressed by users during registration time. Two situations need to
considered in the pre-session setup environment: be considered in the pre-session setup environment:
a. User Preferences: It MUST be possible for a user to indicate a a. User Preferences: It MUST be possible for a user to indicate a
preference for real-time text by registering that preference with a preference for real-time text by registering that preference with
SIP server that is part of the ToIP service. a SIP server that is part of the ToIP service.
b. Server support of User Preferences: SIP servers that support ToIP b. Server Support of User Preferences: SIP servers that support ToIP
services MUST have the capability to act on calling user services MUST have the capability to act on calling user
preferences for real-time text in order to accept or reject the preferences for real-time text in order to accept or reject the
session. The actions taken can be based on the called users session. The actions taken can be based on the called users
preferences defined as part of the pre-session setup registration. preferences defined as part of the pre-session setup registration.
For example, if the user is called by another party, and it is For example, if the user is called by another party, and it is
determined that a transcoding server is needed, the session should determined that a transcoding server is needed, the session should
be re-directed or otherwise handled accordingly. be re-directed or otherwise handled accordingly.
The ability to include a transcoding service MUST NOT require user The ability to include a transcoding service MUST NOT require user
registration in any specific SIP registrar, but MAY require registration in any specific SIP registrar, but MAY require
authorisation of the SIP registrar to invoke the service. authorisation of the SIP registrar to invoke the service.
A point-to-point session takes place between two parties. For ToIP, A point-to-point session takes place between two parties. For ToIP,
one or both of the communicating parties will indicate real-time text one or both of the communicating parties will indicate real-time text
as a possible or preferred medium for conversation using SIP in the as a possible or preferred medium for conversation using SIP in the
session setup. session setup.
The following features MAY be implemented to facilitate the session The following features MAY be implemented to facilitate the session
establishment using ToIP: establishment using ToIP:
a. Caller Preferences: SIP headers (e.g., Contact) [10] can be used to a. Caller Preferences: SIP headers (e.g., Contact) [10] can be used
show that real-time text is the medium of choice for to show that real-time text is the medium of choice for
communications. communications.
b. Called Party Preferences [11]: The called party being passive can b. Called Party Preferences [11]: The called party being passive can
formulate a clear rule indicating how a session should be handled formulate a clear rule indicating how a session should be handled,
either using real-time text as a preferred medium or not, and either using real-time text as a preferred medium or not, and
whether a designated SIP proxy needs to handle this session or it whether this session needs to be handled by a designated SIP proxy
will be handled in the SIP User Agent. or the SIP User Agent.
c. SIP Server support for User Preferences: It is RECOMMENDED that SIP c. SIP Server Support for User Preferences: It is RECOMMENDED that
servers also handle the incoming sessions in accordance with SIP servers also handle the incoming sessions in accordance with
preferences expressed for real-time text. The SIP Server can also preferences expressed for real-time text. The SIP server can also
enforce ToIP policy rules for communications (e.g. use of the enforce ToIP policy rules for communications (e.g., use of the
transcoding server for ToIP). transcoding server for ToIP).
6.2.1.2 Session Negotiations 6.2.1.2. Session Negotiations
The Session Description Protocol (SDP) used in SIP [2] provides the The Session Description Protocol (SDP) used in SIP [2] provides the
capabilities to indicate real-time text as a medium in the session capabilities to indicate real-time text as a medium in the session
setup. RFC 4103 [4] uses the RTP payload types "text/red" and setup. RFC 4103 [4] uses the RTP payload types "text/red" and
"text/t140" for support of ToIP which can be indicated in the SDP as a "text/t140" for support of ToIP, which can be indicated in the SDP as
part of the SIP INVITE, OK and SIP/200/ACK media negotiations. In a part of the SIP INVITE, OK, and SIP/200/ACK media negotiations. In
addition, SIPs offer/answer model [12] can also be used in conjunction addition, SIP's offer/answer model [12] can also be used in
with other capabilities including the use of a transcoding server for conjunction with other capabilities, including the use of a
enhanced session negotiations [III,IV,13]. transcoding server for enhanced session negotiations [28,29,13].
6.2.2 Transport 6.2.2. Transport
ToIP services MUST support the Real-Time Transport Protocol (RTP) [3] ToIP services MUST support the Real-Time Transport Protocol (RTP) [3]
according to the specification of RFC 4103 [3] for the transport of according to the specification of RFC 4103 [4] for the transport of
real-time text between participants. real-time text between participants.
RFC 4103 describes the transmission of T.140 [8] real-time text on IP RFC 4103 describes the transmission of T.140 [8] real-time text on IP
networks. networks.
In order to enable the use of international character sets, the In order to enable the use of international character sets, the
transmission format for real-time text conversation SHALL be UTF-8 transmission format for real-time text conversation SHALL be UTF-8
[14], in accordance with ITU-T T.140. [14], in accordance with ITU-T T.140.
If real-time text is detected to be missing after transmission, there If real-time text is detected to be missing after transmission, there
SHOULD be a "text loss" indication in the real-time text as specified SHOULD be a "text loss" indication in the real-time text as specified
in T.140 Addendum 1 [8]. in T.140 Addendum 1 [8].
The redundancy method of RFC 4103 [4] SHOULD be used to significantly The redundancy method of RFC 4103 [4] SHOULD be used to significantly
increase the reliability of the real-time text transmission. A increase the reliability of the real-time text transmission. A
redundancy level using 2 generations gives very reliable results and redundancy level using 2 generations gives very reliable results and
is therefore strongly RECOMMENDED. is therefore strongly RECOMMENDED.
In order to avoid exceeding the capabilities of sender, receiver or In order to avoid exceeding the capabilities of the sender, receiver,
network (congestion), the transmission rate SHOULD be kept at or or network (congestion), the transmission rate SHOULD be kept at or
below 30 characters per second, which is the default maximum rate as below 30 characters per second, which is the default maximum rate
specified in RFC 4103 [4]. Lower rates MAY be negotiated when needed specified in RFC 4103 [4]. Lower rates MAY be negotiated when needed
through the "cps" parameter as specified in RFC 4103 [4]. through the "cps" parameter as specified in RFC 4103 [4].
Real-time text capability is announced in SDP by a declaration similar Real-time text capability is announced in SDP by a declaration
to this example: similar to this example:
m=text 11000 RTP/AVP 100 98 m=text 11000 RTP/AVP 100 98
a=rtpmap:98 t140/1000 a=rtpmap:98 t140/1000
a=rtpmap:100 red/1000 a=rtpmap:100 red/1000
a=fmtp:100 98/98/98 a=fmtp:100 98/98/98
By having this single coding and transmission scheme for real-time By having this single coding and transmission scheme for real-time
text defined in the SIP session control environment, the opportunity text defined in the SIP session control environment, the opportunity
for interoperability is optimized. However, if good reasons exist, for interoperability is optimized. However, if good reasons exist,
other transport mechanisms MAY be offered and used for the T.140 coded other transport mechanisms MAY be offered and used for the T.140-
text provided that proper negotiation is introduced, but RFC 4103 [4] coded text, provided that proper negotiation is introduced, but the
transport MUST be used as both the default and the fallback transport. RFC 4103 [4] transport MUST be used as both the default and the
fallback transport.
6.2.3 Transcoding services 6.2.3. Transcoding Services
Invocation of a transcoding service MAY happen automatically when the Invocation of a transcoding service MAY happen automatically when the
session is being set up based on any valid indication or negotiation session is being set up based on any valid indication or negotiation
of supported or preferred media types. A transcoding framework of supported or preferred media types. A transcoding framework
document using SIP [III] describes invoking relay services, where the document using SIP [28] describes invoking relay services, where the
relay acts as a conference bridge or uses the third party control relay acts as a conference bridge or uses the third-party control
mechanism. ToIP implementations SHOULD support this transcoding mechanism. ToIP implementations SHOULD support this transcoding
framework. framework.
6.2.4 Presentation and User control functions 6.2.4. Presentation and User Control Functions
6.2.4.1 Progress and status information 6.2.4.1. Progress and Status Information
Session progress information SHOULD use simple language so that as Session progress information SHOULD use simple language so that as
many users as possible can understand it. The use of jargon or many users as possible can understand it. The use of jargon or
ambiguous terminology SHOULD be avoided. It is RECOMMENDED that text ambiguous terminology SHOULD be avoided. It is RECOMMENDED that text
information be used together with icons to symbolise the session information be used together with icons to symbolise the session
progress information. progress information.
In summary, it SHOULD be possible to observe indicators about: In summary, it SHOULD be possible to observe indicators about:
- Incoming session - Incoming session
- Availability of real-time text, voice and video channels
- Availability of real-time text, voice, and video channels
- Session progress - Session progress
- Incoming real-time text - Incoming real-time text
- Any loss in incoming real-time text - Any loss in incoming real-time text
- Typed and transmitted real-time text.
6.2.4.2 Alerting - Typed and transmitted real-time text
For users who cannot use the audible alerter for incoming sessions, it 6.2.4.2. Alerting
is RECOMMENDED to include a tactile as well as a visual indicator.
For users who cannot use the audible alerter for incoming sessions,
it is RECOMMENDED to include a tactile, as well as a visual,
indicator.
Among the alerting options are alerting by the User Agent's User Among the alerting options are alerting by the User Agent's User
Interface and specific alerting User Agents registered to the same Interface and specific alerting User Agents registered to the same
registrar as the main User Agent. registrar as the main User Agent.
It should be noted that external alerting systems exist and one common It should be noted that external alerting systems exist and one
interface for triggering the alerting action is a contact closure common interface for triggering the alerting action is a contact
between two conductors. closure between two conductors.
6.2.4.3 Text presentation 6.2.4.3. Text Presentation
Requirement R32 states that, in the display of text conversations, Requirement R32 states that, in the display of text conversations,
users must be able to distinguish easily between different speakers. users must be able to distinguish easily between different speakers.
This could be done using color, positioning of the text (i.e. incoming This could be done using color, positioning of the text (i.e.,
real-time text and outgoing real-time text in different display incoming real-time text and outgoing real-time text in different
areas), by in-band identifiers of the parties or by a combination of display areas), in-band identifiers of the parties, or a combination
any of these techniques. of any of these techniques.
6.2.4.4 File storage 6.2.4.4. File Storage
Requirement R31 recommends that ToIP systems allow the user to save Requirement R31 recommends that ToIP systems allow the user to save
text conversations. This SHOULD be done using a standard file format. text conversations. This SHOULD be done using a standard file
For example: a UTF-8 text file in XHTML format [15] including format. For example: a UTF-8 text file in XHTML format [15],
timestamps, party names (or addresses) and the conversation text. including timestamps, party names (or addresses), and the
conversation text.
6.2.5 Interworking functions 6.2.5. Interworking Functions
A number of systems for real-time text conversation already exist as A number of systems for real-time text conversation already exist as
well as a number of message oriented text communication systems. well as a number of message-oriented text communication systems.
Interoperability is of interest between ToIP and some of these Interoperability is of interest between ToIP and some of these
systems. systems.
Interoperation of half-duplex and full-duplex protocols, and between Interoperation of half-duplex and full-duplex protocols, and between
protocols that have different data rates, may require text buffering. protocols that have different data rates, may require text buffering.
Some intelligence will be needed to determine when to change direction Some intelligence will be needed to determine when to change
when operating in half-duplex mode. Identification may be required of direction when operating in half-duplex mode. Identification may be
half-duplex operation either at the "user" level (ie. users must required of half-duplex operation either at the "user" level (i.e.,
inform each other) or at the "protocol" level (where an indication users must inform each other) or at the "protocol" level (where an
must be sent back to the Gateway). However, special care needs to be indication must be sent back to the gateway). However, special care
taken to provide the best possible real-time performance. needs to be taken to provide the best possible real-time performance.
Buffering schemes SHOULD be dimensioned to adjust for receiving at 30 Buffering schemes SHOULD be dimensioned to adjust for receiving at 30
characters per second and transmitting at 6 characters per second for characters per second and transmitting at 6 characters per second for
up to 4 minutes (i.e. less than 3000 characters). up to 4 minutes (i.e., less than 3000 characters).
When converting between simultaneous voice and text on the IP side, When converting between simultaneous voice and text on the IP side,
and alternating voice and text on the other side of a gateway, a and alternating voice and text on the other side of a gateway, a
conflict can occur if the IP user transmits both audio and text at the conflict can occur if the IP user transmits both audio and text at
same time. In such situations, text transmission SHOULD have the same time. In such situations, text transmission SHOULD have
precedence, so that while text is transmitted, audio is lost. precedence, so that while text is transmitted, audio is lost.
Transcoding of text to and from other coding formats may need to take Transcoding of text to and from other coding formats may need to take
place in gateways between ToIP and other forms of text conversation, place in gateways between ToIP and other forms of text conversation,
for example to connect to a PSTN text telephone. for example, to connect to a PSTN text telephone.
Session set-up through gateways to other networks may require the use Session setup through gateways to other networks may require the use
of specially formatted addresses or other mechanisms for invoking of specially formatted addresses or other mechanisms for invoking
those gateways. those gateways.
ToIP interworking requires a method to invoke a text gateway. These ToIP interworking requires a method to invoke a text gateway. These
text gateways act as User Agents at the IP side. The capabilities of text gateways act as User Agents at the IP side. The capabilities of
the gateway during the call will be determined by the call the gateway during the call will be determined by the call
capabilities of the terminal that is using the gateway. For example, a capabilities of the terminal that is using the gateway. For example,
PSTN textphone is generally only able to receive voice and real-time a PSTN textphone is generally only able to receive voice and real-
text, so the gateway will only allow ToIP and audio. time text, so the gateway will only allow ToIP and audio.
Examples of possible scenarios for invocation of the text gateway are: Examples of possible scenarios for invocation of the text gateway
are:
a. PSTN textphone users dial a prefix number before dialing out. a. PSTN textphone users dial a prefix number before dialing out.
b. Separate real-time text subscriptions, linked to the phone number b. Separate real-time text subscriptions, linked to the phone number
or terminal identifier/ IP address. or terminal identifier/ IP address.
c. Real-time text capability indicators. c. Real-time text capability indicators.
d. Real-time text preference indicators. d. Real-time text preference indicators.
e. Listen for V.18 modem modulation text activity in all PSTN calls e. Listen for V.18 modem modulation text activity in all PSTN calls
and routing of the call to an appropriate gateway. and routing of the call to an appropriate gateway.
f. Call transfer request by the called user. f. Call transfer request by the called user.
g. Placing a call via the web, and using one of the methods described
g. Placing a call via the Web, and using one of the methods described
here here
h. A text gateway with its own telephone number and/or SIP address.
(This requires user interaction with the gateway to place a call). h. A text gateway with its own telephone number and/or SIP address
(this requires user interaction with the gateway to place a call).
i. ENUM address analysis and number plan. i. ENUM address analysis and number plan.
j. Number or address analysis leads to a gateway for all PSTN calls. j. Number or address analysis leads to a gateway for all PSTN calls.
6.2.5.1 PSTN Interworking 6.2.5.1. PSTN Interworking
Analog text telephony is cumbersome because of incompatible national Analog text telephony is cumbersome because of incompatible national
implementations where interworking was never considered. A large implementations where interworking was never considered. A large
number of these implementations have been documented in ITU-T V.18 number of these implementations have been documented in ITU-T V.18
[16], which also defines the modem detection sequences for the [16], which also defines the modem detection sequences for the
different text protocols. The modem type identification may in rare different text protocols. In rare cases, the modem type
cases take considerable time depending on user actions. identification may take considerable time, depending on user actions.
To resolve analog textphone incompatibilities, text telephone gateways To resolve analog textphone incompatibilities, text telephone
are needed to transcode incoming analog signals into T.140 and vice gateways are needed to transcode incoming analog signals into T.140
versa. The modem capability exchange time can be reduced by the text and vice versa. The modem capability exchange time can be reduced by
telephone gateways initially assuming the analog text telephone the text telephone gateways initially assuming the analog text
protocol used in the region where the gateway is located. For example, telephone protocol used in the region where the gateway is located.
in the USA, Baudot [VI] might be tried as the initial protocol. If For example, in the USA, Baudot [25] might be tried as the initial
negotiation for Baudot fails, the full V.18 modem capability exchange protocol. If negotiation for Baudot fails, the full V.18 modem
will take place. In the UK, ITU-T V.21 [VII] might be the first capability exchange will take place. In the UK, ITU-T V.21 [26]
choice. might be the first choice.
In particular transmission of real-time text on PSTN networks takes In particular, transmission of real-time text on PSTN networks takes
place using a variety of codings and modulations, including ITU-T place using a variety of codings and modulations, including ITU-T
V.21 [VII], Baudot [VI], DTMF, V.23 [VIII] and others. Many V.21 [26], Baudot [25], dual-tone multi-frequency (DTMF), V.23 [27],
difficulties have arisen as a result of this variety in text and others. Many difficulties have arisen as a result of this
telephony protocols and the ITU-T V.18 [16] standard was developed to variety in text telephony protocols and the ITU-T V.18 [16] standard
address some of these issues. was developed to address some of these issues.
ITU-T V.18 [16] offers a native text telephony method plus it defines ITU-T V.18 [16] offers a native text telephony method, plus it
interworking with current protocols. In the interworking mode, it will defines interworking with current protocols. In the interworking
recognise one of the older protocols and fall back to that mode, it will recognise one of the older protocols and fall back to
transmission method when required. that transmission method when required.
Text gateways MUST use the ITU-T V.18 [16] standard at the PSTN side. Text gateways MUST use the ITU-T V.18 [16] standard at the PSTN side.
A text gateway MUST act as a SIP User Agent on the IP side and support A text gateway MUST act as a SIP User Agent on the IP side and
RFC 4103 real-time text transport. support RFC 4103 real-time text transport.
While ToIP allows receiving and sending real-time text simultaneously While ToIP allows receiving and sending real-time text simultaneously
and is displayed on a split screen, many analog text telephones and is displayed on a split screen, many analog text telephones
require users to take turns typing. This is because many text require users to take turns typing. This is because many text
telephones operate strictly half duplex. Only one can transmit text at telephones operate strictly half duplex. Only one can transmit text
a time. The users apply strict turn-taking rules. at a time. The users apply strict turn-taking rules.
There are several text telephones which communicate in full duplex, There are several text telephones which communicate in full duplex,
but merge transmitted text and received text in the same line in the but merge transmitted text and received text in the same line in the
same display window. Here too the users apply strict turn taking same display window. Here too the users apply strict turn taking
rules. rules.
Native V.18 text telephones support full duplex and separate display Native V.18 text telephones support full duplex and separate display
from reception and transmission so that the full duplex capability from reception and transmission so that the full duplex capability
can be used fully. Such devices could use the ToIP split screen as can be used fully. Such devices could use the ToIP split screen as
well, but almost all text telephones use a restricted character set well, but almost all text telephones use a restricted character set
and many use low text transmission speeds (4 to 7 characters per and many use low text transmission speeds (4 to 7 characters per
second). second).
That is why it is important for the ToIP user to know that he or she That is why it is important for the ToIP user to know that he or she
is connected with an analog text telephone. The session description is connected with an analog text telephone. The session description
[9] SHOULD contain an indication that the other endpoint for the call [9] SHOULD contain an indication that the other endpoint for the call
is a PSTN textphone (e.g. connected via an ATA or through a text is a PSTN textphone (e.g., connected via an ATA or through a text
gateway). This means that the textphone user may be used to formal gateway). This means that the textphone user may be used to formal
turn taking during the call. turn taking during the call.
6.2.5.2 Mobile Interworking 6.2.5.2. Mobile Interworking
Mobile wireless (or Cellular) circuit switched connections provide a Mobile wireless (or cellular) circuit switched connections provide a
digital real-time transport service for voice or data. The access digital real-time transport service for voice or data. The access
technologies include GSM, CDMA, TDMA, iDen and various 3G technologies include GSM, CDMA, TDMA, iDen, and various 3G
technologies as well as WiFi or WiMAX. technologies, as well as WiFi or WiMAX.
ToIP may be supported over the cellular wireless packet switched ToIP may be supported over the cellular wireless packet-switched
service. It interfaces to the Internet. service. It interfaces to the Internet.
The following sections describe how mobile text telephony is The following sections describe how mobile text telephony is
supported. supported.
6.2.5.2.1 Cellular "No-gain" 6.2.5.2.1. Cellular "No-gain"
The "No-gain" text telephone transporting technology uses specially The "No-gain" text telephone transporting technology uses specially
modified EFR [17] and EVR [18] speech vocoders in mobile terminals modified Enhanced Full Rate (EFR) [17] and Enhanced Variable Rate
used to provide a text telephony call. It provides full duplex (EVR) [18] speech vocoders in mobile terminals used to provide a text
operation and supports alternating voice and text ("VCO/HCO"). It is telephony call. It provides full duplex operation and supports
dedicated to CDMA and TDMA mobile technologies and the US Baudot (i.e. alternating between voice and text ("VCO/HCO"). It is dedicated to
45 bit/s) type of text telephones. CDMA and TDMA mobile technologies and the US Baudot (i.e., 45 bit/s)
type of text telephones.
6.2.5.2.2 Cellular Text Telephone Modem (CTM) 6.2.5.2.2. Cellular Text Telephone Modem (CTM)
CTM [7] is a technology independent modem technology that provides the CTM [7] is a technology-independent modem technology that provides
transport of text telephone characters at up to 10 characters/sec the transport of text telephone characters at up to 10 characters/sec
using modem signals that can be carried by many voice codecs and uses using modem signals that can be carried by many voice codecs and uses
a highly redundant encoding technique to overcome the fading and cell a highly redundant encoding technique to overcome the fading and cell
changing losses. changing losses.
6.2.5.2.3 Cellular "Baudot mode" 6.2.5.2.3. Cellular "Baudot mode"
This term is often used by cellular terminal suppliers for a cellular This term is often used by cellular terminal suppliers for a cellular
phone mode that allows TTYs to operate into a cellular phone and to phone mode that allows TTYs to operate into a cellular phone and to
communicate with a fixed line TTY. Thus it is a common name for the communicate with a fixed-line TTY. Thus it is a common name for the
"No-Gain" and the CTM solutions when applied to the Baudot type "No-Gain" and the CTM solutions when applied to the Baudot-type
textphones. textphones.
6.2.5.2.4 Mobile data channel mode 6.2.5.2.4. Mobile Data Channel Mode
Many mobile terminals allow the use of the circuit switched data Many mobile terminals allow the use of the circuit-switched data
channel to transfer data in real-time. Data rates of 9600 bit/s are channel to transfer data in real time. Data rates of 9600 bit/s are
usually supported on the 2G mobile network. Gateways provide usually supported on the 2G mobile network. Gateways provide
interoperability with PSTN textphones. interoperability with PSTN textphones.
6.2.5.2.5 Mobile ToIP 6.2.5.2.5. Mobile ToIP
ToIP could be supported over mobile wireless packet switched services ToIP could be supported over mobile wireless packet-switched services
that interface to the Internet. For 3GPP 3G services, ToIP support is that interface to the Internet. For 3GPP 3G services, ToIP support
described in 3G TS 26.235 [19]. is described in 3G TS 26.235 [19].
6.2.5.3 Instant Messaging Interworking 6.2.5.3. Instant Messaging Interworking
Text gateways MAY be used to allow interworking between Instant Text gateways MAY be used to allow interworking between Instant
Messaging systems and ToIP solutions. Because Instant Messaging is Messaging systems and ToIP solutions. Because Instant Messaging is
based on blocks of text, rather than on a continuous stream of based on blocks of text, rather than on a continuous stream of
characters like ToIP, gateways MUST transcode between the two formats. characters like ToIP, gateways MUST transcode between the two
Text gateways for interworking between Instant Messaging and ToIP MUST formats. Text gateways for interworking between Instant Messaging
apply a procedure for bridging the different conversational formats of and ToIP MUST apply a procedure for bridging the different
real-time text versus text messaging. The following advice may improve conversational formats of real-time text versus text messaging. The
user experience for both parties in a call through a messaging following advice may improve user experience for both parties in a
gateway. call through a messaging gateway.
a. Concatenate individual characters originating at the ToIP side into a. Concatenate individual characters originating at the ToIP side
blocks of text. into blocks of text.
b. When the length of the concatenated message becomes longer than 50 b. When the length of the concatenated message becomes longer than 50
characters, the buffered text SHOULD be transmitted to the Instant characters, the buffered text SHOULD be transmitted to the Instant
Messaging side as soon as any non-alphanumerical character is Messaging side as soon as any non-alphanumerical character is
received from the ToIP side. received from the ToIP side.
c. When a new line indicator is received from the ToIP side, the c. When a new line indicator is received from the ToIP side, the
buffered characters up to that point, including the carriage return buffered characters up to that point, including the carriage
and/or line feed characters, SHOULD be transmitted to the Instant return and/or line-feed characters, SHOULD be transmitted to the
Messaging side. Instant Messaging side.
d. When the ToIP side has been idle for at least 5 seconds, all d. When the ToIP side has been idle for at least 5 seconds, all
buffered text up to that point SHOULD be transmitted to the Instant buffered text up to that point SHOULD be transmitted to the
Messaging side. Instant Messaging side.
e. Text Gateways must be capable to maintain the real-time performance e. Text Gateways must be capable of maintaining the real-time
for ToIP while providing the interworking services. performance for ToIP while providing the interworking services.
It is RECOMMENDED that during the session, both users be constantly It is RECOMMENDED that during the session, both users be constantly
updated on the progress of the text input. Many Instant Messaging updated on the progress of the text input. Many Instant Messaging
protocols signal that a user is typing to the other party in the protocols signal that a user is typing to the other party in the
conversation. Text gateways between such Instant Messaging protocols conversation. Text gateways between such Instant Messaging protocols
and ToIP MUST provide this signalling to the Instant Messaging side and ToIP MUST provide this signalling to the Instant Messaging side
when characters start being received, or at the beginning of the when characters start being received, or at the beginning of the
conversation. conversation.
At the ToIP side, an indicator of writing the Instant Message MUST be At the ToIP side, an indicator of writing the Instant Message MUST be
present where the Instant Messaging protocol provides one. For present where the Instant Messaging protocol provides one. For
example, the real-time text user MAY see ". . . waiting for replying example, the real-time text user MAY see ". . . waiting for replying
IM. . . " and when 5 seconds have passed another . (dot) can be shown. IM. . . " and when 5 seconds have passed another . (dot) can be
shown.
Those solutions will reduce the difficulties between streaming and Those solutions will reduce the difficulties between streaming and
blocked text services. blocked text services.
Even though the text gateway can connect Instant Messaging and ToIP, Even though the text gateway can connect Instant Messaging and ToIP,
the best solution is to take advantage of the fact that the user the best solution is to take advantage of the fact that the user
interfaces and the user communities for instant messaging and ToIP interfaces and the user communities for instant messaging and ToIP
telephony are very similar. After all, the character input, the telephony are very similar. After all, the character input,
character display, Internet connectivity and SIP stack can be the same character display, Internet connectivity, and SIP stack can be the
for Instant Messaging (SIMPLE) and ToIP. Thus, the user may simply use same for Instant Messaging (SIMPLE) and ToIP. Thus, the user may
different applications for ToIP and text messaging in the same simply use different applications for ToIP and text messaging in the
terminal. same terminal.
Devices that implement Instant Messaging SHOULD implement ToIP as Devices that implement Instant Messaging SHOULD implement ToIP as
described in this document so that a more complete text communication described in this document so that a more complete text communication
service can be provided. service can be provided.
6.2.5.4 Multi-functional Combination gateways 6.2.5.4. Multi-Functional Combination Gateways
In practice many interworking gateways will be implemented as gateways In practice, many interworking gateways will be implemented as
that combine different functions. As such, a text gateway could be gateways that combine different functions. As such, a text gateway
built to have modems to interwork with the PSTN and support both could be built to have modems to interwork with the PSTN and support
Instant Messaging as well as ToIP. Such interworking functions are both Instant Messaging as well as ToIP. Such interworking functions
called Combination gateways. are called combination gateways.
Combination gateways could provide interworking between all of their Combination gateways could provide interworking between all of their
supported text based functions. For example, a Text gateway that has supported text-based functions. For example, a text gateway that has
modems to interwork with the PSTN and that support both Instant modems to interwork with the PSTN and that support both Instant
Messaging and ToIP could support the following interworking functions: Messaging and ToIP could support the following interworking
functions:
- PSTN text telephony to ToIP. - PSTN text telephony to ToIP
- PSTN text telephony to Instant Messaging.
- Instant Messaging to ToIP.
6.2.5.5 Character set transcoding - PSTN text telephony to Instant Messaging
- Instant Messaging to ToIP
6.2.5.5. Character Set Transcoding
Gateways between the ToIP network and other networks MAY need to Gateways between the ToIP network and other networks MAY need to
transcode text streams. ToIP makes use of the ISO 10646 character set. transcode text streams. ToIP makes use of the ISO 10646 character
Most PSTN textphones use a 7-bit character set, or a character set set. Most PSTN textphones use a 7-bit character set, or a character
that is converted to a 7-bit character set by the V.18 modem. set that is converted to a 7-bit character set by the V.18 modem.
When transcoding between character sets and T.140 in gateways, special When transcoding between character sets and T.140 in gateways,
consideration MUST be given to the national variants of the 7-bit special consideration MUST be given to the national variants of the
codes, with national characters mapping into different codes in the 7-bit codes, with national characters mapping into different codes in
ISO 10646 code space. The national variant to be used could be the ISO 10646 code space. The national variant to be used could be
selectable by the user on a per call basis, or be configured as a selectable by the user on a per-call basis, or be configured as a
national default for the gateway. national default for the gateway.
The indicator of missing text in T.140, specified in T.140 amendment The indicator of missing text in T.140, specified in T.140 amendment
1, cannot be represented in the 7-bit character codes. Therefore the 1, cannot be represented in the 7-bit character codes. Therefore the
indicator of missing text SHOULD be transcoded to the ' (apostrophe) indicator of missing text SHOULD be transcoded to the ' (apostrophe)
character in legacy text telephone systems, where this character character in legacy text telephone systems, where this character
exists. For legacy systems where the ' character does not exist, the . exists. For legacy systems where the ' character does not exist, the
(full stop) character SHOULD be used instead. . (full stop) character SHOULD be used instead.
7. Further recommendations for implementers and service providers 7. Further Recommendations for Implementers and Service Providers
7.1 Access to Emergency services 7.1. Access to Emergency Services
It must be possible to place an emergency call using ToIP and it must It must be possible to place an emergency call using ToIP and it must
be possible to use a relay service in such call. The emergency service be possible to use a relay service in such a call. The emergency
provided to users utilising the real-time text medium must be service provided to users utilising the real-time text medium must be
equivalent to the emergency service provided to users utilising speech equivalent to the emergency service provided to users utilising
or other media. speech or other media.
A text gateway must be able to route real-time text calls to emergency A text gateway must be able to route real-time text calls to
service providers when any of the recognised emergency numbers that emergency service providers when any of the recognised emergency
support text communications for the country or region are called e.g. numbers that support text communications for the country or region
"911" in USA and "112" in Europe. Routing real-time text calls to are called, e.g., "911" in the USA and "112" in Europe. Routing
emergency services may require the use of a transcoding service. real-time text calls to emergency services may require the use of a
transcoding service.
A text gateway with cellular wireless packet switched services must be A text gateway with cellular wireless packet-switched services must
able to route real-time text calls to emergency service providers when be able to route real-time text calls to emergency service providers
any of the recognized emergency numbers that support real-time text when any of the recognized emergency numbers that support real-time
communication for the country is called. text communication for the country is called.
7.2 Home Gateways or Analog Terminal Adapters 7.2. Home Gateways or Analog Terminal Adapters
Analog terminal adapters (ATA) using SIP based IP communication and Analog terminal adapters (ATA) using SIP-based IP communication and
RJ-11 connectors for connecting traditional PSTN devices SHOULD enable RJ-11 connectors for connecting traditional PSTN devices SHOULD
connection of legacy PSTN text telephones [II]. enable connection of legacy PSTN text telephones [23].
These adapters SHOULD contain V.18 modem functionality, voice handling These adapters SHOULD contain V.18 modem functionality, voice
functionality, and conversion functions to/from SIP based ToIP with handling functionality, and conversion functions to/from SIP-based
T.140 transported according to RFC 4103 [3], in a similar way as it ToIP with T.140 transported according to RFC 4103 [4], in a similar
provides interoperability for voice sessions. way as it provides interoperability for voice sessions.
If a session is set up and text/t140 capability is not declared by the If a session is set up and text/t140 capability is not declared by
destination endpoint (by the end-point terminal or the text gateway in the destination endpoint (by the endpoint terminal or the text
the network at the end-point), a method for invoking a transcoding gateway in the network at the endpoint), a method for invoking a
server SHALL be used. If no such server is available, the signals from transcoding server SHALL be used. If no such server is available,
the textphone MAY be transmitted in the voice channel as audio with the signals from the textphone MAY be transmitted in the voice
high quality of service. channel as audio with a high quality of service.
NOTE: It is preferred that such analog terminal adaptors do use RFC NOTE: It is preferred that such analog terminal adaptors do use RFC
4103 [4] on board and thus act as a text gateway. Sending textphone 4103 [4] on board and thus act as a text gateway. Sending textphone
signals over the voice channel is undesirable due to possible signals over the voice channel is undesirable due to possible
filtering and compression and packet loss between the end-points. This filtering and compression and packet loss between the endpoints.
can result in character loss in the textphone conversation or even not This can result in character loss in the textphone conversation or
allowing the textphones to connect to each other. even not allowing the textphones to connect to each other.
7.3 User Mobility 7.3. User Mobility
ToIP User Agents SHOULD use the same mechanisms as other SIP User ToIP User Agents SHOULD use the same mechanisms as other SIP User
Agents to resolve mobility issues. It is RECOMMENDED that users use a Agents to resolve mobility issues. It is RECOMMENDED that users use
SIP address, resolved by a SIP registrar, to enable basic user a SIP address, resolved by a SIP registrar, to enable basic user
mobility. Further mechanisms are defined for all session types for 3G mobility. Further mechanisms are defined for all session types for
IP multimedia systems. 3G IP multimedia systems.
7.4 Firewalls and NATs
ToIP uses the same signalling and transport protocols as VoIP. Hence,
the same firewall and NAT solutions and network functionality that
apply to VoIP MUST also apply to ToIP.
7.5 Quality of Service 7.4. Firewalls and NATs
Where Quality of Service (QoS) mechanisms are used, the real-time text ToIP uses the same signalling and transport protocols as VoIP.
streams should be assigned appropriate QoS characteristics, so that Hence, the same firewall and NAT solutions and network functionality
the performance requirements can be met and the real-time text stream that apply to VoIP MUST also apply to ToIP.
is not degraded unfavourably in comparison to voice performance in
congested situations.
8. IANA Considerations 7.5. Quality of Service
There are no IANA considerations for this specification. Where Quality of Service (QoS) mechanisms are used, the real-time
text streams should be assigned appropriate QoS characteristics, so
that the performance requirements can be met and the real-time text
stream is not degraded unfavourably in comparison to voice
performance in congested situations.
9. Security Considerations 8. Security Considerations
User confidentiality and privacy need to be met as described in SIP User confidentiality and privacy need to be met as described in SIP
[2]. For example, nothing should reveal in an obvious way the fact [2]. For example, nothing should reveal in an obvious way the fact
that the ToIP user might be a person with a hearing or speech that the ToIP user might be a person with a hearing or speech
impairment. It is up to the ToIP user to make his or her hearing or impairment. It is up to the ToIP user to make his or her hearing or
speech impairment public. If a transcoding server is being used, speech impairment public. If a transcoding server is being used,
this SHOULD be as transparent as possible. However, it might still be this SHOULD be as transparent as possible. However, it might still
possible to discern that a user might be hearing or speech impaired be possible to discern that a user might be hearing or speech
based on the attributes present in SDP, although the intention is impaired based on the attributes present in SDP, although the
that mainstream users might also choose to use ToIP. intention is that mainstream users might also choose to use ToIP.
Encryption SHOULD be used on end-to-end or hop-by-hop basis as Encryption SHOULD be used on an end-to-end or hop-by-hop basis as
described in SIP [2] and SRTP [20]. described in SIP [2] and SRTP [20].
Authentication MUST be provided for users in addition to message Authentication MUST be provided for users in addition to message
integrity and access control. integrity and access control.
Protection against Denial-of-service (DoS) attacks needs to be Protection against Denial-of-Service (DoS) attacks needs to be
provided considering the case that the ToIP users might need provided, considering the case that the ToIP users might need
transcoding servers. transcoding servers.
10. Authors' Addresses 9. Contributors
Guido Gybels
Department of New Technologies
RNID, 19-23 Featherstone Street
London EC1Y 8SL, UK
Email: guido.gybels@rnid.org.uk
Tel +44-20-7294 3713
Txt +44-20-7296 8001 Ext 3713
Fax +44-20-7296 8069
www.ictrnid.org.uk
Arnoud A. T. van Wijk
Real-Time Text Taskforce (R3TF)
www.realtimetext.org
Email: arnoud@realtimetext.org
11. Contributors
The following people contributed to this document: Willem Dijkstra, The following people contributed to this document: Willem Dijkstra,
Barry Dingle, Gunnar Hellstrom, Radhika R. Roy, Henry Sinnreich and Barry Dingle, Gunnar Hellstrom, Radhika R. Roy, Henry Sinnreich, and
Gregg C Vanderheiden. Gregg C. Vanderheiden.
The content and concepts within are a product of the SIPPING Working The content and concepts within are a product of the SIPPING Working
Group. Tom Taylor (Nortel) acted as independent reviewer and Group. Tom Taylor (Nortel) acted as independent reviewer and
contributed significantly to the structure and content of this contributed significantly to the structure and content of this
document. document.
12. References 10. References
12.1 Normative references 10.1. Normative References
1. S. Bradner, "Intellectual Property Rights in IETF Technology", [1] Bradner, S., Ed., "Intellectual Property Rights in IETF
BCP 79, RFC 3979, IETF, March 2005. Technology", BCP 79, RFC 3979, March 2005.
2. J. Rosenberg, H. Schulzrinne, G. Camarillo, A. R. Johnston, J. [2] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A.,
Peterson, R. Sparks, M. Handley, and E. Schooler, "SIP: Session Peterson, J., Sparks, R., Handley, M., and E. Schooler, "SIP:
Initiation Protocol", RFC 3621, IETF, June 2002. Session Initiation Protocol", RFC 3261, June 2002.
3. H. Schulzrinne, S.Casner, R. Frederick, V. Jacobsone, "RTP: A [3] Schulzrinne, H., Casner, S., Frederick, R., and V. Jacobson,
Transport Protocol for Real-Time Applications", RFC 3550, IETF, "RTP: A Transport Protocol for Real-Time Applications", STD 64,
July 2003. RFC 3550, July 2003.
4. G. Hellstrom, P. Jones, "RTP Payload for Text Conversation", [4] Hellstrom, G. and P. Jones, "RTP Payload for Text
RFC 4103, IETF, June 2005. Conversation", RFC 4103, June 2005.
5. ITU-T Recommendation F.703,"Multimedia Conversational Services", [5] ITU-T Recommendation F.703,"Multimedia Conversational
November 2000. Services", November 2000.
6. S. Bradner, "Key words for use in RFCs to Indicate Requirement [6] Bradner, S., "Key words for use in RFCs to Indicate Requirement
7. 3GPP TS 26.226 "Cellular Text Telephone Modem Description" (CTM). Levels", BCP 14, RFC 2119, March 1997.
8. ITU-T Recommendation T.140, "Protocol for Multimedia Application [7] 3GPP TS 26.226, "Cellular Text Telephone Modem Description"
Text Conversation" (February 1998) and Addendum 1 (February 2000). (CTM).
9. M. Handley, V. Jacobson, C. Perkins, "SDP: Session Description [8] ITU-T Recommendation T.140, "Protocol for Multimedia
Protocol", RFC 4566, IETF, July 2006. Application Text Conversation" (February 1998) and Addendum 1
(February 2000).
10. J. Rosenberg, H. Schulzrinne, P. Kyzivat, "Indicating User Agent [9] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session
Capabilities in the Session Initiation Protocol (SIP)", RFC 3840, Description Protocol", RFC 4566, July 2006.
IETF, August 2004
11. J. Rosenberg, H. Schulzrinne, P. Kyzivat, "Caller Preferences for [10] Rosenberg, J., Schulzrinne, H., and P. Kyzivat, "Indicating
the Session Initiation Protocol (SIP)", RFC 3841, IETF, User Agent Capabilities in the Session Initiation Protocol
August 2004 (SIP)", RFC 3840, August 2004.
12. J. Rosenberg, H. Schulzrinne, "An Offer/Answer Model with the [11] Rosenberg, J., Schulzrinne, H., and P. Kyzivat, "Caller
Session Description Protocol (SDP)", RFC 3624, IETF, June 2002. Preferences for the Session Initiation Protocol (SIP)", RFC
3841, August 2004.
13. G. Camarillo, H. Schulzrinne, E. Burger, and A. van Wijk, [12] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model with
Session Description Protocol (SDP)", RFC 3264, June 2002.
[13] Camarillo, G., Burger, E., Schulzrinne, H., and A. van Wijk,
"Transcoding Services Invocation in the Session Initiation "Transcoding Services Invocation in the Session Initiation
Protocol (SIP) Using Third Party Call Control (3pcc)" RFC 4117, Protocol (SIP) Using Third Party Call Control (3pcc)", RFC
IETF, June 2005. 4117, June 2005.
14. Yergeau, F., "UTF-8, a transformation format of ISO 10646", [14] Yergeau, F., "UTF-8, a transformation format of ISO 10646", STD
RFC 3629, IETF,November 2003. 63, RFC 3629, November 2003.
15. "XHTML 1.0: The Extensible HyperText Markup Language: A [15] "XHTML 1.0: The Extensible HyperText Markup Language: A
Reformulation of HTML 4 in XML 1.0", W3C Recommendation. Available Reformulation of HTML 4 in XML 1.0", W3C Recommendation,
at http://www.w3.org/TR/xhtml1. Available at http://www.w3.org/TR/xhtml1.
16. ITU-T Recommendation V.18,"Operational and Interworking [16] ITU-T Recommendation V.18, "Operational and Interworking
Requirements for DCEs operating in Text Telephone Mode", Requirements for DCEs operating in Text Telephone Mode",
November 2000. November 2000.
17. TIA/EIA/IS-823-A "TTY/TDD Extension to TIA/EIA-136-410 Enhanced [17] TIA/EIA/IS-823-A, "TTY/TDD Extension to TIA/EIA-136-410
Full Rate Speech Codec (must used in conjunction with Enhanced Full Rate Speech Codec (must used in conjunction with
TIA/EIA/IS-840)" TIA/EIA/IS-840)"
18. TIA/EIA/IS-127-2 "Enhanced Variable Rate Codec, Speech Service [18] TIA/EIA/IS-127-2, "Enhanced Variable Rate Codec, Speech Service
Option 3 for Wideband Spread Spectrum Digital Systems. Option 3 for Wideband Spread Spectrum Digital Systems, Addendum
Addendum 2." 2."
19. "IP Multimedia default codecs". 3GPP TS 26.235
20. Baugher, McGrew, Carrara, Naslund, Norrman, "The Secure Real Time [19] "IP Multimedia default codecs", 3GPP TS 26.235
Transport Protocol (SRTP)", RFC 3711, IETF, March 2004. [20] Baugher, M., McGrew, D., Naslund, M., Carrara, E., and K.
Norrman, "The Secure Real-time Transport Protocol (SRTP)", RFC
3711, March 2004.
21. ITU-T Recommendation F.700,"Framework Recommendation for [21] ITU-T Recommendation F.700, "Framework Recommendation for
Multimedia Services", November 2000. Multimedia Services", November 2000.
12.2 Informative references 10.2. Informative References
I. Charlton, Gasson, Gybels, Spanner, van Wijk, "User Requirements [22] Charlton, N., Gasson, M., Gybels, G., Spanner, M., and A. van
for the Session Initiation Protocol (SIP) in Support of Deaf, Wijk, "User Requirements for the Session Initiation Protocol
Hard of Hearing and Speech-impaired Individuals", RFC 3351, (SIP) in Support of Deaf, Hard of Hearing and Speech-impaired
IETF, August 2002. Individuals", RFC 3351, August 2002.
II. H. Sinnreich, S. Lass, and C. Stredicke, "SIP Telephony Device [23] Sinnreich, H., Ed., Lass, S., and C. Stredicke, "SIP Telephony
Requirements and Configuration" RFC 4504, IETF, May 2006. Device Requirements and Configuration", RFC 4504, May 2006.
III. G. Camarillo, "Framework for Transcoding with the Session [24] European Telecommunications Standards Institute (ETSI), "Human
Initiation Protocol", IETF, May 2006 - Work in progress. Factors (HF); Guidelines for Telecommunication Relay Services
for Text Telephones". TR 101 806, June 2000.
IV. G. Camarillo, "The SIP Conference Bridge Transcoding Model", [25] TIA/EIA/825 "A Frequency Shift Keyed Modem for Use on the
IETF, January 2006 - Work in Progress. Public Switched Telephone Network." (The specification for
45.45 and 50 bit/s TTY modems.)
V. European Telecommunications Standards Institute (ETSI), "Human [26] International Telecommunication Union (ITU), "300 bits per
Factors (HF); Guidelines for Telecommunication Relay Services for second duplex modem standardized for use in the general
Text Telephones". TR 101 806, June 2000. switched telephone network". ITU-T Recommendation V.21,
November 1988.
VI. TIA/EIA/825 "A Frequency Shift Keyed Modem for Use on the Public [27] International Telecommunication Union (ITU), "600/1200-baud
Switched Telephone Network." (The specification for 45.45 and 50 modem standardized for use in the general switched telephone
bit/s TTY modems.) network", ITU-T Recommendation V.23, November 1988.
VII. International Telecommunication Union (ITU), "300 bits per second [28] Camarillo, G., "Framework for Transcoding with the Session
duplex modem standardized for use in the general switched Initiation Protocol", Work in Progress, May 2006.
telephone network". ITU-T Recommendation V.21, November 1988.
VIII.International Telecommunication Union (ITU), "600/1200-baud modem [29] Camarillo, G., "The SIP Conference Bridge Transcoding Model",
standardized for use in the general switched telephone network". Work in Progress, January 2006.
ITU-T Recommendation V.23, November 1988.
Authors' Addresses
Guido Gybels
Department of New Technologies
RNID, 19-23 Featherstone Street
London EC1Y 8SL, UK
Tel +44-20-7294 3713
Txt +44-20-7296 8001 Ext 3713
Fax +44-20-7296 8069
EMail: guido.gybels@rnid.org.uk
http://www.ictrnid.org.uk
Arnoud A. T. van Wijk
Real-Time Text Taskforce (R3TF)
EMail: arnoud@realtimetext.org
http://www.realtimetext.org
Full Copyright Statement Full Copyright Statement
Copyright (C) The IETF Trust (2008). Copyright (C) The IETF Trust (2008).
This document is subject to the rights, licenses and restrictions This document is subject to the rights, licenses and restrictions
contained in BCP 78, and except as set forth therein, the authors contained in BCP 78, and except as set forth therein, the authors
retain all their rights. retain all their rights.
This document and the information contained herein are provided on an This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST, OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
PURPOSE.
Intellectual Property Intellectual Property
The IETF takes no position regarding the validity or scope of any The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be on the procedures with respect to rights in RFC documents can be
skipping to change at page 27, line 28 skipping to change at line 1398
attempt made to obtain a general license or permission for the use of attempt made to obtain a general license or permission for the use of
such proprietary rights by implementers or users of this such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository at specification can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr. http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at this standard. Please address the information to the IETF at
ietf-ipr@ietf.org. ietf-ipr@ietf.org.
Acknowledgement
Funding for the RFC Editor function is provided by the IETF
Administrative Support Activity (IASA).
 End of changes. 255 change blocks. 
633 lines changed or deleted 647 lines changed or added

This html diff was produced by rfcdiff 1.35. The latest version is available from http://tools.ietf.org/tools/rfcdiff/