draft-ietf-rtcweb-use-cases-and-requirements-04.txt | draft-ietf-rtcweb-use-cases-and-requirements-05.txt | |||
---|---|---|---|---|
RTCWEB Working Group C. Holmberg | RTCWEB Working Group C. Holmberg | |||
Internet-Draft S. Hakansson | Internet-Draft S. Hakansson | |||
Intended status: Informational G. Eriksson | Intended status: Informational G. Eriksson | |||
Expires: March 4, 2012 Ericsson | Expires: March 18, 2012 Ericsson | |||
September 1, 2011 | September 15, 2011 | |||
Web Real-Time Communication Use-cases and Requirements | Web Real-Time Communication Use-cases and Requirements | |||
draft-ietf-rtcweb-use-cases-and-requirements-04.txt | draft-ietf-rtcweb-use-cases-and-requirements-05.txt | |||
Abstract | Abstract | |||
This document describes web based real-time communication use-cases. | This document describes web based real-time communication use-cases. | |||
Based on the use-cases, the document also derives requirements | Based on the use-cases, the document also derives requirements | |||
related to the browser, and the API used by web applications to | related to the browser, and the API used by web applications to | |||
request and control media stream services provided by the browser. | request and control media stream services provided by the browser. | |||
Status of this Memo | Status of this Memo | |||
skipping to change at page 1, line 34 | skipping to change at page 1, line 34 | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
Drafts is at http://datatracker.ietf.org/drafts/current/. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
This Internet-Draft will expire on March 4, 2012. | This Internet-Draft will expire on March 18, 2012. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2011 IETF Trust and the persons identified as the | Copyright (c) 2011 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
(http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
publication of this document. Please review these documents | publication of this document. Please review these documents | |||
skipping to change at page 2, line 22 | skipping to change at page 2, line 22 | |||
4.2. Browser-to-browser use-cases . . . . . . . . . . . . . . . 3 | 4.2. Browser-to-browser use-cases . . . . . . . . . . . . . . . 3 | |||
4.2.1. Simple Video Communication Service . . . . . . . . . . 3 | 4.2.1. Simple Video Communication Service . . . . . . . . . . 3 | |||
4.2.2. Simple Video Communication Service, NAT/FW that | 4.2.2. Simple Video Communication Service, NAT/FW that | |||
blocks UDP . . . . . . . . . . . . . . . . . . . . . . 4 | blocks UDP . . . . . . . . . . . . . . . . . . . . . . 4 | |||
4.2.3. Simple Video Communication Service, access change . . 4 | 4.2.3. Simple Video Communication Service, access change . . 4 | |||
4.2.4. Simple Video Communication Service, QoS . . . . . . . 5 | 4.2.4. Simple Video Communication Service, QoS . . . . . . . 5 | |||
4.2.5. Simple video communication service with | 4.2.5. Simple video communication service with | |||
inter-operator calling . . . . . . . . . . . . . . . . 5 | inter-operator calling . . . . . . . . . . . . . . . . 5 | |||
4.2.6. Hockey Game Viewer . . . . . . . . . . . . . . . . . . 6 | 4.2.6. Hockey Game Viewer . . . . . . . . . . . . . . . . . . 6 | |||
4.2.7. Multiparty video communication . . . . . . . . . . . . 7 | 4.2.7. Multiparty video communication . . . . . . . . . . . . 7 | |||
4.2.8. Multiparty on-line game with voice communication . . . 7 | 4.2.8. Multiparty on-line game with voice communication . . . 8 | |||
4.2.9. Distributed Music Band . . . . . . . . . . . . . . . . 8 | 4.2.9. Distributed Music Band . . . . . . . . . . . . . . . . 8 | |||
4.3. Browser - GW/Server use cases . . . . . . . . . . . . . . 9 | 4.3. Browser - GW/Server use cases . . . . . . . . . . . . . . 9 | |||
4.3.1. Telephony terminal . . . . . . . . . . . . . . . . . . 9 | 4.3.1. Telephony terminal . . . . . . . . . . . . . . . . . . 9 | |||
4.3.2. Fedex Call . . . . . . . . . . . . . . . . . . . . . . 9 | 4.3.2. Fedex Call . . . . . . . . . . . . . . . . . . . . . . 9 | |||
4.3.3. Video conferencing system with central server . . . . 9 | 4.3.3. Video conferencing system with central server . . . . 10 | |||
5. Requirements . . . . . . . . . . . . . . . . . . . . . . . . . 10 | 5. Requirements . . . . . . . . . . . . . . . . . . . . . . . . . 11 | |||
5.1. General . . . . . . . . . . . . . . . . . . . . . . . . . 11 | 5.1. General . . . . . . . . . . . . . . . . . . . . . . . . . 11 | |||
5.2. Browser requirements . . . . . . . . . . . . . . . . . . . 11 | 5.2. Browser requirements . . . . . . . . . . . . . . . . . . . 11 | |||
5.3. API requirements . . . . . . . . . . . . . . . . . . . . . 13 | 5.3. API requirements . . . . . . . . . . . . . . . . . . . . . 13 | |||
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 15 | 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 15 | |||
7. Security Considerations . . . . . . . . . . . . . . . . . . . 15 | 7. Security Considerations . . . . . . . . . . . . . . . . . . . 15 | |||
7.1. Introduction . . . . . . . . . . . . . . . . . . . . . . . 15 | 7.1. Introduction . . . . . . . . . . . . . . . . . . . . . . . 15 | |||
7.2. Browser Considerations . . . . . . . . . . . . . . . . . . 15 | 7.2. Browser Considerations . . . . . . . . . . . . . . . . . . 15 | |||
7.3. Web Application Considerations . . . . . . . . . . . . . . 15 | 7.3. Web Application Considerations . . . . . . . . . . . . . . 16 | |||
8. Additional use-cases . . . . . . . . . . . . . . . . . . . . . 16 | 8. Additional use-cases . . . . . . . . . . . . . . . . . . . . . 16 | |||
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 16 | 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 17 | |||
10. Change Log . . . . . . . . . . . . . . . . . . . . . . . . . . 17 | 10. Change Log . . . . . . . . . . . . . . . . . . . . . . . . . . 17 | |||
11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 18 | 11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 19 | |||
11.1. Normative References . . . . . . . . . . . . . . . . . . . 18 | 11.1. Normative References . . . . . . . . . . . . . . . . . . . 19 | |||
11.2. Informative References . . . . . . . . . . . . . . . . . . 18 | 11.2. Informative References . . . . . . . . . . . . . . . . . . 19 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 18 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 19 | |||
1. Introduction | 1. Introduction | |||
This document presents a few use-cases of web applications that are | This document presents a few use-cases of web applications that are | |||
executed in a browser and use real-time communication capabilities. | executed in a browser and use real-time communication capabilities. | |||
Based on the use-cases, the document derives requirements related to | Based on the use-cases, the document derives requirements related to | |||
the browser and the API used by web applications in the browser. | the browser and the API used by web applications in the browser. | |||
The requirements related to the browser are named "Fn" and are | The requirements related to the browser are named "Fn" and are | |||
described in Section 5.2 | described in Section 5.2 | |||
skipping to change at page 3, line 46 | skipping to change at page 3, line 46 | |||
This section describes web based real-time communication use-cases, | This section describes web based real-time communication use-cases, | |||
from which requirements are derived. | from which requirements are derived. | |||
4.2. Browser-to-browser use-cases | 4.2. Browser-to-browser use-cases | |||
4.2.1. Simple Video Communication Service | 4.2.1. Simple Video Communication Service | |||
4.2.1.1. Description | 4.2.1.1. Description | |||
In the service the users have loaded, and logged into, a video | Two or more users have loaded a video communication web application | |||
communication web application into their browsers, provided by the | into their browsers, provided by the same service provider, and | |||
same service provider. The web service publishes information about | logged into the service it provides. The web service publishes | |||
user login status, by pushing updates to the web application in the | information about user login status by pushing updates to the web | |||
browsers. By selecting an online peer user, a 1-1 video | application in the browsers. When one online user selects a peer | |||
communication session between the browsers of the peers is initiated. | online user, a 1-1 video communication session between the browsers | |||
The invited user might accept or reject the session. | of the two peers is initiated. The invited user might accept or | |||
reject the session. | ||||
During session establishment a self-view is displayed, and once the | During session establishment a self-view is displayed, and once the | |||
session has been established the video sent from the remote peer is | session has been established the video sent from the remote peer is | |||
displayed displayed in addition to the self-view. The users can | displayed in addition to the self-view. During the session, each | |||
during the session select to remove, and re-insert the self-view. | user can select to remove and re-insert the self-view as often as | |||
The users can change the sizes of the video displays during the | desired. Each user can also change the sizes of his/her two video | |||
session. The users can also pause sending of media (audio, video, or | displays during the session. Each user can also pause sending of | |||
both), and mute incoming media. | media (audio, video, or both) and mute incoming media | |||
It is essential that the communication can not be eavesdropped. | It is essential that the communication cannot be eavesdropped. | |||
Any session participant can end the session at any time. | Any session participant can end the session at any time. | |||
The users are using communication devices of different makes, with | The two users may be using communication devices of different makes, | |||
different operating systems and browsers from different vendors. | with different operating systems and browsers from different vendors. | |||
One user has an unreliable Internet connection. It sometimes has | One user has an unreliable Internet connection. It sometimes loses | |||
packet losses, and is sometimes goes down completely. | packets, and sometimes goes down completely. | |||
One user is located behind a Network Address Translator (NAT). | One user is located behind a Network Address Translator (NAT). | |||
4.2.1.2. Derived Requirements | 4.2.1.2. Derived Requirements | |||
F1, F2, F3, F4, F5, F6, F8, F9, F10, F17, F22, F25 | F1, F2, F3, F4, F5, F6, F8, F9, F10, F17, F22, F25 | |||
A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13 | A1, A2, A3, A4, A5, A6, A7, A9, A10, A11, A12, A13 | |||
4.2.2. Simple Video Communication Service, NAT/FW that blocks UDP | 4.2.2. Simple Video Communication Service, NAT/FW that blocks UDP | |||
4.2.2.1. Description | 4.2.2.1. Description | |||
This use-case is almost identical to the previos one. The difference | This use-case is almost identical to the previos one. The difference | |||
is that one of the users is behind a NAT that blocks UDP traffic. | is that one of the users is behind a NAT that blocks UDP traffic. | |||
4.2.2.2. Derived Requirements | 4.2.2.2. Derived Requirements | |||
F1, F2, F3, F4, F5, F6, F8, F9, F10, F17, F22, F23, F25, F26 | F1, F2, F3, F4, F5, F6, F8, F9, F10, F17, F22, F23, F25, F26 | |||
A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13 | A1, A2, A3, A4, A5, A6, A7, A9, A10, A11, A12, A13 | |||
4.2.3. Simple Video Communication Service, access change | 4.2.3. Simple Video Communication Service, access change | |||
4.2.3.1. Description | 4.2.3.1. Description | |||
This use-case is almost identical to "4.2.1 Simple Video | This use-case is almost identical to "4.2.1 Simple Video | |||
Communication Service". The difference is that the user changes | Communication Service". The difference is that the user changes | |||
network access during the session: | network access during the session: | |||
The communication device used by one of the users have several | The communication device used by one of the users have several | |||
network adapters (Ethernet, WiFi, Cellular). The communication | network adapters (Ethernet, WiFi, Cellular). The communication | |||
device is access the Internet using Ethernet, but the user has to | device is accessing the Internet using Ethernet, but the user has to | |||
start a trip during the session. The communication device | start a trip during the session. The communication device | |||
automatically changes to use WiFi when the Ethernet cable is removed | automatically changes to use WiFi when the Ethernet cable is removed | |||
and then moves to cellular access to the Internet when moving out of | and then moves to cellular access to the Internet when moving out of | |||
WiFi coverage. The session continues even though the access method | WiFi coverage. The session continues even though the access method | |||
changes. | changes. | |||
4.2.3.2. Derived Requirements | 4.2.3.2. Derived Requirements | |||
F1, F2, F3, F4, F5, F6, F8, F9, F10, F17, F22, F23, F25 | F1, F2, F3, F4, F5, F6, F8, F9, F10, F17, F22, F23, F25 | |||
A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13 | A1, A2, A3, A4, A5, A6, A7, A9, A10, A11, A12, A13 | |||
4.2.4. Simple Video Communication Service, QoS | 4.2.4. Simple Video Communication Service, QoS | |||
4.2.4.1. Description | 4.2.4.1. Description | |||
This use-case is almost identical to the previos one. The use of QoS | This use-case is almost identical to the previous one. The use of | |||
capabilities is added: | Quality of Service (QoS) capabilities is added: | |||
The user in the previous use case that starts a trip is behind a | The user in the previous use case that starts a trip is behind a | |||
common residential router that supports prioritization of traffic. | common residential router that supports prioritization of traffic. | |||
In addition, the user's provider of cellular access has QoS support | In addition, the user's provider of cellular access has QoS support | |||
enabled. The user is able to take advantage of the QoS support both | enabled. The user is able to take advantage of the QoS support both | |||
when accessing via the residential router and when using cellular. | when accessing via the residential router and when using cellular. | |||
4.2.4.2. Derived Requirements | 4.2.4.2. Derived Requirements | |||
F1, F2, F3, F4, F5, F6, F8, F9, F10, F17, F21, F22, F23, F25 | F1, F2, F3, F4, F5, F6, F8, F9, F10, F17, F21, F22, F23, F25 | |||
A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13 | A1, A2, A3, A4, A5, A6, A7, A9, A10, A11, A12, A13 | |||
4.2.5. Simple video communication service with inter-operator calling | 4.2.5. Simple video communication service with inter-operator calling | |||
4.2.5.1. Description | 4.2.5.1. Description | |||
Two users have logged into two different web applications, provided | Two users have logged into two different web applications, provided | |||
by different service providers. | by different service providers. | |||
The service providers are interconnected by some means, but exchange | The service providers are interconnected by some means, but exchange | |||
no more information about the users than what can be carried using | no more information about the users than what can be carried using | |||
SIP. | SIP. | |||
NOTE: More profiling of what this means may be needed. | NOTE: More profiling of what this means may be needed. | |||
Each web service publishes information about user login status for | For each user Alice who has authorized another user Bob to receive | |||
users that have a relationship with the other user; how this is | login status information, Alice's service publishes Alice's login | |||
status information to Bob. How this authorization is defined and | ||||
established is out of scope. | established is out of scope. | |||
The same functionality as in the "4.2.1 Simple Video Communication | The same functionality as in the "4.2.1 Simple Video Communication | |||
Service" is available. | Service" is available. | |||
The same issues with connectivity apply. | The same issues with connectivity apply. | |||
4.2.5.2. Derived requirements | 4.2.5.2. Derived requirements | |||
F1, F2, F3, F4, F5, F6, F8, F9, F10, F17, F22, F24, F25 | F1, F2, F3, F4, F5, F6, F8, F9, F10, F17, F22, F24, F25 | |||
A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13 | A1, A2, A3, A4, A5, A6, A7, A9, A10, A11, A12, A13 | |||
4.2.6. Hockey Game Viewer | 4.2.6. Hockey Game Viewer | |||
4.2.6.1. Description | 4.2.6.1. Description | |||
An ice-hockey club uses an application that enables talent scouts to, | An ice-hockey club uses an application that enables talent scouts to, | |||
in real-time, show and discuss games and players with the club | in real-time, show and discuss games and players with the club | |||
manager. The talent scouts use a mobile phone with two cameras, one | manager. The talent scouts use a mobile phone with two cameras, one | |||
front facing and one rear facing. | front facing and one rear facing. | |||
The club manager uses a desktop, equipped with one camera, for | The club manager uses a desktop, equipped with one camera, for | |||
viewing the game and discussing with the talent scout. | viewing the game and discussing with the talent scout. | |||
Before the game starts, and during game breaks, the talent scout and | Before the game starts, and during game breaks, the talent scout and | |||
the manager have a 1-1 video communication. Only the rear facing | the manager have a 1-1 video communication. Only the rear facing | |||
camera of the mobile phone is used. On the display of the mobile | camera of the mobile phone is used. On the display of the mobile | |||
phone, the video of the club manager is shown with a picture-in- | phone, the video of the club manager is shown with a picture-in- | |||
picture thumbnail of the rear facing camera (self-view). On the | picture thumbnail of the rear facing camera (self-view). On the | |||
display of the desktop, the video of the talent scout is shown with a | display of the desktop, the video of the talent scout is shown with a | |||
picture-in-picture thumbnail ot the desktop camera (self-view). | picture-in-picture thumbnail of the desktop camera (self-view). | |||
When the game is on-going, the talent scout activates the use of the | When the game is on-going, the talent scout activates the use of the | |||
front facing camera, and that stream is sent to the desktop (the | front facing camera, and that stream is sent to the desktop (the | |||
stream from the rear facing camera continues to be sent all the | stream from the rear facing camera continues to be sent all the | |||
time). The video stream captured by the front facing camera (that is | time). The video stream captured by the front facing camera (that is | |||
capturing the game) of the mobile phone is shown in a big window on | capturing the game) of the mobile phone is shown in a big window on | |||
the desktop screen, with picture-in-picture thumbnails of the rear | the desktop screen, with picture-in-picture thumbnails of the rear | |||
facing camera and the desktop camera (self-view). On the display of | facing camera and the desktop camera (self-view). On the display of | |||
the mobile phone the game is shown (front facing camera) with | the mobile phone the game is shown (front facing camera) with | |||
picture-in-picture thumbnails of the rear facing camera (self-view) | picture-in-picture thumbnails of the rear facing camera (self-view) | |||
and the desktop camera. | and the desktop camera. | |||
It is essential that the communication can not be eavesdropped. | It is essential that the communication cannot be eavesdropped. | |||
4.2.6.2. Derived Requirements | 4.2.6.2. Derived Requirements | |||
F1, F2, F3, F4, F5, F6, F8, F9, F10, F14, F17 | F1, F2, F3, F4, F5, F6, F8, F9, F10, F14, F17 | |||
A1, A2, A3, A4, A5, A7, A8, A9, A10, A11, A12, A13, A15 | A1, A2, A3, A4, A5, A7, A9, A10, A11, A12, A13, A15 | |||
4.2.7. Multiparty video communication | 4.2.7. Multiparty video communication | |||
4.2.7.1. Description | 4.2.7.1. Description | |||
In this use-case the simple video communication service is extended | In this use-case the simple video communication service | |||
by allowing multiparty sessions. No central server is involved - the | Section 4.2.1is extended by allowing multiparty sessions. No central | |||
browser of each participant sends and receives streams to and from | server is involved - the browser of each participant sends and | |||
all other session participants. The web application in the browser | receives streams to and from all other session participants. The web | |||
of each user is responsible for setting up streams to all receivers. | application in the browser of each user is responsible for setting up | |||
streams to all receivers. | ||||
In order to enhance intelligibility, the web application pans the | In order to enhance intelligibility, the web application pans the | |||
audio from different participants differently when rendering the | audio from different participants differently when rendering the | |||
audio. This is done automatically, but users can change how the | audio. This is done automatically, but users can change how the | |||
different participants are placed in the (virtual) room. | different participants are placed in the (virtual) room. | |||
Each video stream received is by default displayed in a thumbnail | Each video stream received is by default displayed in a thumbnail | |||
frame within the browser, but users can change the display size. | frame within the browser, but users can change the display size. | |||
It is essential that the communication can not be eavesdropped. | It is essential that the communication cannot be eavesdropped. | |||
Note: What this use-case adds in terms of requirements is | Note: What this use-case adds in terms of requirements is | |||
capabilities to send streams to and receive streams from several | capabilities to send streams to and receive streams from several | |||
peers concurrently, as well as the capabilities to render the video | peers concurrently, as well as the capabilities to render the video | |||
from all recevied streams and be able to spatialize and mix the audio | from all recevied streams and be able to spatialize and mix the audio | |||
from all received streams locally in the browser. | from all received streams locally in the browser. | |||
4.2.7.2. Derived Requirements | 4.2.7.2. Derived Requirements | |||
F1, F2, F3, F4, F5, F6, F8, F9, F10, F11, F12, F13, F14, F17, F22 | F1, F2, F3, F4, F5, F6, F8, F9, F10, F11, F12, F13, F14, F17, F22 | |||
A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15 | A1, A2, A3, A4, A5, A6, A7, A9, A10, A11, A12, A13, A14, A15 | |||
4.2.8. Multiparty on-line game with voice communication | 4.2.8. Multiparty on-line game with voice communication | |||
4.2.8.1. Description | 4.2.8.1. Description | |||
In this use-case, the voice part of the multiparty video | This use case is based on the previous one. In this use-case, the | |||
communication application is used in the context of an on-line game. | voice part of the multiparty video communication use case is used in | |||
The received voice audio media is rendered together with game sound | the context of an on-line game. The received voice audio media is | |||
objects. For example, the sound of a tank moving from left to right | rendered together with game sound objects. For example, the sound of | |||
over the screen must be rendered and played to the user together with | a tank moving from left to right over the screen must be rendered and | |||
the voice media. | played to the user together with the voice media. | |||
Quick updates of the game state is required. | Quick updates of the game state is required. | |||
It is essential that the communication can not be eavesdropped. | It is essential that the communication cannot be eavesdropped. | |||
Note: the difference regarding local audio processing compared to the | Note: the difference regarding local audio processing compared to the | |||
"Multiparty video communication" use-case is that other sound objects | "Multiparty video communication" use-case is that other sound objects | |||
than the streams must be possible to be included in the | than the streams must be possible to be included in the | |||
spatialization and mixing. "Other sound objects" could for example | spatialization and mixing. "Other sound objects" could for example | |||
be a file with the sound of the tank, that file could be stored | be a file with the sound of the tank; that file could be stored | |||
locally or remotely. | locally or remotely. | |||
4.2.8.2. Derived Requirements | 4.2.8.2. Derived Requirements | |||
F1, F2, F3, F4, F5, F6, F8, F9, F11, F12, F13, F15, F17, F20 | F1, F2, F3, F4, F5, F6, F8, F9, F11, F12, F13, F15, F17, F20 | |||
A1, A2, A3, A4, A5, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16 | A1, A2, A3, A4, A5, A7, A9, A10, A11, A12, A13, A14, A15, A16 | |||
4.2.9. Distributed Music Band | 4.2.9. Distributed Music Band | |||
4.2.9.1. Description | 4.2.9.1. Description | |||
In this use-case, a music band is playing music while the members are | In this use-case, a music band is playing music while the members are | |||
at different physical locations. No central server is used, instead | at different physical locations. No central server is used, instead | |||
all streams are set up in a mesh fashion. | all streams are set up in a mesh fashion. | |||
Discussion: This use-case was briefly discussed at the Quebec webrtc | Discussion: This use-case was briefly discussed at the Quebec webrtc | |||
meeting and it got support. So far the only concrete requirement | meeting and it got support. So far the only concrete requirement | |||
(A17) derived is that the application must be able to ask the browser | (A17) derived is that the application must be able to ask the browser | |||
to treat the audio signal as audio (in contrast to speech). However, | to treat the audio signal as audio (in contrast to speech). However, | |||
the use case should be further analysed to determine other | the use case should be further analysed to determine other | |||
requirements (could be e.g. on delay mic->speaker, level control of | requirements (could be e.g. on delay mic->speaker, level control of | |||
audio signals, etc.). | audio signals, etc.). | |||
4.2.9.2. Derived Requirements | 4.2.9.2. Derived Requirements | |||
F1, F2, F3, F4, F5, F6, F8, F9, F11, F12, F13 | F1, F2, F3, F4, F5, F6, F8, F9, F11, F12, F13 | |||
A1, A2, A3, A4, A5, A7, A9, A10, A11, A12, A13, A14, A15, A17 | ||||
A1, A2, A3, A4, A5, A7, A8, A9, A10, A11, A12, A13, A14, A15, A17 | ||||
4.3. Browser - GW/Server use cases | 4.3. Browser - GW/Server use cases | |||
4.3.1. Telephony terminal | 4.3.1. Telephony terminal | |||
4.3.1.1. Description | 4.3.1.1. Description | |||
A mobile telephony operator allows its customers to use a web browser | A mobile telephony operator allows its customers to use a web browser | |||
to access their services. After a simple log in the user can place | to access their services. After a simple log in the user can place | |||
and receive calls in the same way as when using a normal mobile | and receive calls in the same way as when using a normal mobile | |||
phone. When a call is received or placed, the identity is shown in | phone. When a call is received or placed, the identity is shown in | |||
the same manner as when a mobile phone used. | the same manner as when a mobile phone is used. | |||
It is essential that the communication can not be eavesdropped. | It is essential that the communication cannot be eavesdropped. | |||
Note: With "place and receive calls in the same way as when using a | ||||
normal mobile phone" it is meant that you can dial a number, and that | ||||
your mobile telephony operator has made available your phone contacts | ||||
on line, so they are available and can be clicked to call, and be | ||||
used to present the identity of an incoming call. If the callee is | ||||
not in your phone contacts the number is displayed. Furthermore, | ||||
your call logs are available, and updated with the calls made/ | ||||
received from the browser. And for people receiving calls made from | ||||
the web browser the usual identity (i.e. the phone number of the | ||||
mobile phone) will be presented. | ||||
4.3.1.2. Derived Requirements | 4.3.1.2. Derived Requirements | |||
F1, F2, F3, F4, F5, F6, F8, F9, F10, F17, F18 | F1, F2, F3, F4, F5, F6, F8, F9, F10, F17, F18 | |||
A1, A2, A3, A4, A7, A8, A9, A10, A11, A12, A13 | A1, A2, A3, A4, A7, A9, A10, A11, A12, A13 | |||
4.3.2. Fedex Call | 4.3.2. Fedex Call | |||
4.3.2.1. Description | 4.3.2.1. Description | |||
Alice uses her web browser with a service something like Skype to be | Alice uses her web browser with a service something like Skype to be | |||
able to phone PSTN numbers. Alice calls 1-800-gofedex. Alice should | able to phone PSTN numbers. Alice calls 1-800-gofedex. Alice should | |||
be able to hear the initial prompts from the fedex IVR and when the | be able to hear the initial prompts from the fedex IVR and when the | |||
IVR says press 1, there should be a way for Alice to navigate the | IVR says press 1, there should be a way for Alice to navigate the | |||
IVR. | IVR. | |||
4.3.2.2. Derived Requirements | 4.3.2.2. Derived Requirements | |||
F1, F2, F3, F4, F5, F6, F8, F9, F10, F18, F19 | F1, F2, F3, F4, F5, F6, F8, F9, F10, F18, F19 | |||
A1, A2, A3, A4, A7, A8, A9, A10, A11, A12, A13 | A1, A2, A3, A4, A7, A9, A10, A11, A12, A13 | |||
4.3.3. Video conferencing system with central server | 4.3.3. Video conferencing system with central server | |||
4.3.3.1. Description | 4.3.3.1. Description | |||
An organization uses a video communication system that supports the | An organization uses a video communication system that supports the | |||
establishment of multiparty video sessions using a central conference | establishment of multiparty video sessions using a central conference | |||
server. | server. | |||
The browsers of each participant send an audio stream (type in terms | The browser of each participant send an audio stream (type in terms | |||
of mono, stereo, 5.1, ... depending on the equipment of the | of mono, stereo, 5.1, ... depending on the equipment of the | |||
participant) to the central server. The central server mixes the | participant) to the central server. The central server mixes the | |||
audio streams (and can in the mixing process naturally add effects | audio streams (and can in the mixing process naturally add effects | |||
such as spatialization) and sends towards each participant a mixed | such as spatialization) and sends towards each participant a mixed | |||
audio stream which is played to the user. | audio stream which is played to the user. | |||
The browser of each participant sends video towards the server. For | The browser of each participant sends video towards the server. For | |||
each participant one high resolution video is displayed in a large | each participant one high resolution video is displayed in a large | |||
window, while a number of low resolution videos are displayed in | window, while a number of low resolution videos are displayed in | |||
smaller windows. The server selects what video streams to be | smaller windows. The server selects what video streams to be | |||
forwarded as main- and thumbnail videos respectively, based on speech | forwarded as main- and thumbnail videos respectively, based on speech | |||
activity. As the video streams to display can change quite | activity. As the video streams to display can change quite | |||
frequently (as the conversation flows) it is important that the delay | frequently (as the conversation flows) it is important that the delay | |||
from when a video stream is selected for display until the video can | from when a video stream is selected for display until the video can | |||
be displayed is short. | be displayed is short. | |||
The organization has an internal network set up with an aggressive | The organization has an internal network set up with an aggressive | |||
firewall handling access to the Internet. If users can not | firewall handling access to the Internet. If users cannot physically | |||
physically access the internal network, they can establish a Virtual | access the internal network, they can establish a Virtual Private | |||
Private Network (VPN). | Network (VPN). | |||
It is essential that the communication can not be eavesdropped. | It is essential that the communication cannot be eavesdropped. | |||
All participant are authenticated by the central server, and | All participants are authenticated by the central server, and | |||
authorized to connect to the central server. The participants are | authorized to connect to the central server. The participants are | |||
identified to each other by the central server, and the participants | identified to each other by the central server, and the participants | |||
do not have access to each others' credentials such as e-mail | do not have access to each others' credentials such as e-mail | |||
addresses or login IDs. | addresses or login IDs. | |||
Note: This use-case adds requirements on support for fast stream | Note: This use-case adds requirements on support for fast stream | |||
switches F7, on encryption of media and on ability to traverse very | switches F7, on encryption of media and on ability to traverse very | |||
restrictive FWs. There exists several solutions that enable the | restrictive FWs. There exist several solutions that enable the | |||
server to forward one high resolution and several low resolution | server to forward one high resolution and several low resolution | |||
video streams: a) each browser could send a high resolution, but | video streams: a) each browser could send a high resolution, but | |||
scalable stream, and the server could send just the base layer for | scalable stream, and the server could send just the base layer for | |||
the low resolution streams, b) each browser could in a simulcast | the low resolution streams, b) each browser could in a simulcast | |||
fashion send one high resolution and one low resolution stream, the | fashion send one high resolution and one low resolution stream, and | |||
server just selects, c) each browser sends just an high resolution | the server just selects or c) each browser sends just a high | |||
stream, the server trancodes into low reslution streams as required. | resolution stream, the server transcodes into low resolution streams | |||
as required. | ||||
4.3.3.2. Derived Requirements | 4.3.3.2. Derived Requirements | |||
F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F14, F16, F17 | F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F14, F16, F17 | |||
A1, A2, A3, A4, A5, A7, A8, A9, A10, A11, A12, A13, A15 | A1, A2, A3, A4, A5, A7, A9, A10, A11, A12, A13, A15 | |||
5. Requirements | 5. Requirements | |||
5.1. General | 5.1. General | |||
This section contains the requirements derived from the use-cases in | This section contains the requirements derived from the use-cases in | |||
section 4. | section 4. | |||
NOTE: It is assumed that the user applications are executed on a | NOTE: It is assumed that the user applications are executed on a | |||
browser. Whether the capabilities to implement specific browser | browser. Whether the capabilities to implement specific browser | |||
requirements are implemented by the browser application, or are | requirements are implemented by the browser application, or are | |||
provided to the browser application by the underlying operating | provided to the browser application by the underlying operating | |||
system, is outside the scope of this document. | system, is outside the scope of this document. | |||
skipping to change at page 11, line 23 | skipping to change at page 11, line 33 | |||
system, is outside the scope of this document. | system, is outside the scope of this document. | |||
5.2. Browser requirements | 5.2. Browser requirements | |||
REQ-ID DESCRIPTION | REQ-ID DESCRIPTION | |||
--------------------------------------------------------------- | --------------------------------------------------------------- | |||
F1 The browser MUST be able to use microphones and | F1 The browser MUST be able to use microphones and | |||
cameras as input devices to generate streams. | cameras as input devices to generate streams. | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
F2 The browser MUST be able to send streams to a | F2 The browser MUST be able to send streams to a | |||
peer in presence of NATs. | peer in the presence of NATs. | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
F3 Transmitted streams MUST be rate controlled. | F3 Transmitted streams MUST be rate controlled. | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
F4 The browser MUST be able to receive, process and | F4 The browser MUST be able to receive, process and | |||
render streams from peers. | render streams from peers. | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
F5 The browser MUST be able to render good quality | F5 The browser MUST be able to render good quality | |||
audio and video even in presence of reasonable | audio and video even in the presence of reasonable | |||
levels of jitter and packet losses. | levels of jitter and packet losses. | |||
TBD: What is a reasonable level? | TBD: What is a reasonable level? | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
F6 The browser MUST be able to handle high loss and | F6 The browser MUST be able to handle high loss and | |||
jitter levels in a graceful way. | jitter levels in a graceful way. | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
F7 The browser MUST support fast stream switches. | F7 The browser MUST support fast stream switches. | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
F8 The browser MUST detect when a stream from a | F8 The browser MUST detect when a stream from a | |||
peer is not received any more | peer is not received anymore | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
F9 When there are both incoming and outgoing audio | F9 When there are both incoming and outgoing audio | |||
streams, echo cancellation MUST be made available to | streams, echo cancellation MUST be made available to | |||
avoid disturbing echo during conversation. | avoid disturbing echo during conversation. | |||
QUESTION: How much control should be left to the | QUESTION: How much control should be left to the | |||
web application? | web application? | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
F10 The browser MUST support synchronization of | F10 The browser MUST support synchronization of | |||
audio and video. | audio and video. | |||
skipping to change at page 12, line 39 | skipping to change at page 12, line 51 | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
F17 It MUST be possible to protect streams from | F17 It MUST be possible to protect streams from | |||
eavesdropping. | eavesdropping. | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
F18 The browser MUST support an audio media format | F18 The browser MUST support an audio media format | |||
(codec) that is commonly supported by existing | (codec) that is commonly supported by existing | |||
telephony services. | telephony services. | |||
QUESTION: G.711? | QUESTION: G.711? | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
F19 there should be a way to navigate | F19 There should be a way to navigate | |||
the IVR | the IVR | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
F20 The browser must be able to send short | F20 The browser must be able to send short | |||
latency datagram traffic to a peer browser | latency datagram traffic to a peer browser | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
F21 The browser MUST be able to take advantage of | F21 The browser MUST be able to take advantage of | |||
capabilities to prioritize voice and video | capabilities to prioritize voice and video | |||
appropriately. | appropriately. | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
F22 The browser SHOULD use encoding of streams | F22 The browser SHOULD use encoding of streams | |||
skipping to change at page 13, line 19 | skipping to change at page 13, line 29 | |||
interface to another one | interface to another one | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
F24 The browser MUST be able to initiate and accept a | F24 The browser MUST be able to initiate and accept a | |||
media session where the data needed for establishment | media session where the data needed for establishment | |||
can be carried in SIP. | can be carried in SIP. | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
F25 The browser MUST support a baseline audio and | F25 The browser MUST support a baseline audio and | |||
video codec | video codec | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
F26 The browser MUST be able to send streams to a | F26 The browser MUST be able to send streams to a | |||
peer in presence of NATs that block UDP traffic. | peer in the presence of NATs that block UDP traffic. | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
5.3. API requirements | 5.3. API requirements | |||
REQ-ID DESCRIPTION | REQ-ID DESCRIPTION | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
A1 The web application MUST be able to ask the | A1 The Web API MUST provide means for the | |||
browser for permission to use cameras | application to ask the browser for permission | |||
and microphones as input devices. | to use cameras and microphones as input devices. | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
A2 The web application MUST be able to control how | A2 The Web API MUST provide means for the web | |||
streams generated by input devices are used. | application to control how streams generated | |||
by input devices are used. | ||||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
A3 The web application MUST be able to control the | A3 The Web API MUST provide means for the web | |||
local rendering of streams (locally generated streams | application to control the local rendering of | |||
and streams received from a peer). | streams (locally generated streams and streams | |||
received from a peer). | ||||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
A4 The web application MUST be able to initiate | A4 The Web API MUST provide means for the web | |||
sending of stream/stream components to a peer. | application to initiate sending of | |||
stream/stream components to a peer. | ||||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
A5 The web application MUST be able to control the | A5 The Web API MUST provide means for the web | |||
media format (codec) to be used for the streams | application to control the media format (codec) | |||
sent to a peer. | to be used for the streams sent to a peer. | |||
NOTE: The level of control depends on whether | NOTE: The level of control depends on whether | |||
the codec negotiation is handled by the browser | the codec negotiation is handled by the browser | |||
or the web application. | or the web application. | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
A6 After a media stream has been established, the | A6 The Web API MUST provide means for the web | |||
web application MUST be able to modify the media | application to modify the media format for | |||
format for streams sent to a peer. | streams sent to a peer after a media stream | |||
has been established. | ||||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
A7 The web application MUST be made aware of | A7 The Web API MUST provide means for | |||
whether the establishment of a stream with a | informing the web application of whether the | |||
peer was successful or not. | establishment of a stream with a peer was | |||
successful or not. | ||||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
A8 The web application MUST be able to | A8 Removed. | |||
pause/unpause the sending of a stream to a peer. | ||||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
A9 The web application MUST be able to mute/unmute | A9 The Web API MUST provide means for the web | |||
a stream received from a peer. | application to mute/unmute a stream or stream | |||
component(s). When a stream is sent to a peer | ||||
mute status must be preserved in the stream | ||||
received by the peer. | ||||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
A10 The web application MUST be able to cease the | A10 The Web API MUST provide means for the web | |||
sending of a stream to a peer. | application to cease the sending of a stream | |||
to a peer. | ||||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
A11 The web application MUST be able to cease | A11 The Web API MUST provide means for the web | |||
processing and rendering of a stream received | application to cease processing and rendering | |||
from a peer. | of a stream received from a peer. | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
A12 The web application MUST be informed when a | A12 The Web API MUST provide means for | |||
informing the web application when a | ||||
stream from a peer is no longer received. | stream from a peer is no longer received. | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
A13 The web application MUST be informed when high | A13 The Web API MUST provide means for | |||
informing the web application when high | ||||
loss rates occur. | loss rates occur. | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
A14 It MUST be possible for the web application to | A14 The Web API MUST provide means for the web | |||
control panning, mixing and other processing for | application to control panning, mixing and | |||
individual streams. | other processing for streams. | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
A15 The Web application must be provided with an | A15 For each stream generated, the Web API MUST provide | |||
identifier for the stream that can be communicated | an identifier that is accessible by the application. | |||
to the other party of the communication, and which | The identifier MUST be accessible also for a peer | |||
the other party can associate with its end of the | receiving that stream and MUST be unique relative | |||
same stream. | to all other stream identifiers in use by either party. | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
A16 It MUST be possible for the web application to | A16 In addition to the streams listed elsewhere, | |||
send and receive datagrams to/from peer | the Web API MUST provide a mechanism for sending | |||
and receiving isolated discrete chunks of data. | ||||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
A17 It MUST be possible for the web application to | A17 The Web API MUST provide means for the web | |||
indicate the type of audio signal (speech, audio) | application indicate the type of audio signal | |||
(speech, audio)for audio stream(s)/stream component(s). | ||||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
A18 It must be possible for an initiator or a | A18 It must be possible for an initiator or a | |||
responder Web application to indicate the types | responder Web application to indicate the types | |||
of media he's willing to accept incoming streams | of media he's willing to accept incoming streams | |||
for when setting up a connection (audio, video, | for when setting up a connection (audio, video, | |||
other). The types of media he's willing to accept | other). The types of media he's willing to accept | |||
can be a subset of the types of media the browser | can be a subset of the types of media the browser | |||
is able to accept. | is able to accept. | |||
---------------------------------------------------------------- | ---------------------------------------------------------------- | |||
skipping to change at page 15, line 30 | skipping to change at page 16, line 6 | |||
7.2. Browser Considerations | 7.2. Browser Considerations | |||
The browser is expected to provide mechanisms for getting user | The browser is expected to provide mechanisms for getting user | |||
consent to use device resources such as camera and microphone. | consent to use device resources such as camera and microphone. | |||
The browser is expected to provide mechanisms for informing the user | The browser is expected to provide mechanisms for informing the user | |||
that device resources such as camera and microphone are in use | that device resources such as camera and microphone are in use | |||
("hot"). | ("hot"). | |||
The browser is expected to provide mechanisms for users to revise | The browser is expected to provide mechanisms for users to revise and | |||
consent to use device resources such as camera and microphone. | even completely revoke consent to use device resources such as camera | |||
and microphone. | ||||
The browser is expected to provide mechanisms in order to assure that | The browser is expected to provide mechanisms in order to assure that | |||
streams are the ones the recipient intended to receive. | streams are the ones the recipient intended to receive. | |||
The browser is needs to ensure that media is not sent, and that | The browser needs to ensure that media is not sent, and that received | |||
received media is not rendered, until the associated stream | media is not rendered, until the associated stream establishment and | |||
establishment and handshake procedures with the remote peer have been | handshake procedures with the remote peer have been successfully | |||
successfully finished. | finished. | |||
The browser needs to ensure that the stream negotiation procedures | The browser needs to ensure that the stream negotiation procedures | |||
are not seen as Denial Of Service (DOS) by other entities. | are not seen as Denial Of Service (DOS) by other entities. | |||
7.3. Web Application Considerations | 7.3. Web Application Considerations | |||
The web application is expected to ensure user consent in sending and | The web application is expected to ensure user consent in sending and | |||
receiving media streams. | receiving media streams. | |||
8. Additional use-cases | 8. Additional use-cases | |||
skipping to change at page 16, line 17 | skipping to change at page 16, line 38 | |||
Several additional use-cases have been discussed. At this point | Several additional use-cases have been discussed. At this point | |||
these use-cases are not included as requirement deriving use-cases | these use-cases are not included as requirement deriving use-cases | |||
for different reasons (lack of documentation, overlap with existing | for different reasons (lack of documentation, overlap with existing | |||
use-cases, lack of consensus). For completeness these additional | use-cases, lack of consensus). For completeness these additional | |||
use-cases are listed below: | use-cases are listed below: | |||
1. Use-cases regarding different situations when being invited to a | 1. Use-cases regarding different situations when being invited to a | |||
"session", e.g. browser open, browser open but another tab | "session", e.g. browser open, browser open but another tab | |||
active, browser open but active in session, browser closed, .... | active, browser open but active in session, browser closed, .... | |||
(Matthew Kaufman); discussed at webrtc meeting | (Matthew Kaufman); discussed at webrtc meeting | |||
2. Different TURN provider scenarios (Cullen Jennings); discussed | 2. Different TURN provider scenarios (Cullen Jennings); discussed | |||
at the webrtc meeting | at the webrtc meeting. Proposed text in http://lists.w3.org/ | |||
Archives/Public/public-webrtc/2011Aug/0133.html | ||||
3. E911 (Paul Beaumont) http://www.ietf.org/mail-archive/web/ | 3. E911 (Paul Beaumont) http://www.ietf.org/mail-archive/web/ | |||
rtcweb/current/msg00525.html, followed up by Stephan Wenger | rtcweb/current/msg00525.html, followed up by Stephan Wenger | |||
4. Local Recording and Remote recording (John): Discussed a _lot_ | 4. Local Recording and Remote recording (John): Discussed a _lot_ | |||
on the mail lists (rtcweb as well as public-webrtc) late August | on the mail lists (rtcweb as well as public-webrtc) lAugust and | |||
2011. Not concluded at time of writing. | September 2011. Concrete proposal: http://www.ietf.org/ | |||
mail-archive/web/rtcweb/current/msg01006.html (remote) and http: | ||||
//www.ietf.org/mail-archive/web/rtcweb/current/msg00734.html | ||||
(local) | ||||
5. Emergency access for disabled (Bernard Aboba) http:// | 5. Emergency access for disabled (Bernard Aboba) http:// | |||
www.ietf.org/mail-archive/web/rtcweb/current/msg00478.html | www.ietf.org/mail-archive/web/rtcweb/current/msg00478.html | |||
6. Clue use-cases (Roni Even) http://tools.ietf.org/html/ | 6. Clue use-cases (Roni Even) http://tools.ietf.org/html/ | |||
draft-ietf-clue-telepresence-use-cases-01 | draft-ietf-clue-telepresence-use-cases-01 | |||
7. Rohan red cross (Cullen Jennings); http://www.ietf.org/ | 7. Rohan red cross (Cullen Jennings); http://www.ietf.org/ | |||
mail-archive/web/rtcweb/current/msg00323.html | mail-archive/web/rtcweb/current/msg00323.html | |||
8. Remote assistance (ala VNC or RDP) - User is helping another | 8. Remote assistance (ala VNC or RDP) - User is helping another | |||
user on their computer with either view-only or view-with- | user on their computer with either view-only or view-with- | |||
control, either of just the browser of the the entire screen. ht | control, either of just the browser of the the entire screen. ht | |||
tp://www.ietf.org/mail-archive/web/rtcweb/current/msg00543.html | tp://www.ietf.org/mail-archive/web/rtcweb/current/msg00543.html | |||
9. Security camera/baby monitor usage http://www.ietf.org/ | 9. Security camera/baby monitor usage http://www.ietf.org/ | |||
mail-archive/web/rtcweb/current/msg00543.html | mail-archive/web/rtcweb/current/msg00543.html | |||
skipping to change at page 16, line 40 | skipping to change at page 17, line 20 | |||
user on their computer with either view-only or view-with- | user on their computer with either view-only or view-with- | |||
control, either of just the browser of the the entire screen. ht | control, either of just the browser of the the entire screen. ht | |||
tp://www.ietf.org/mail-archive/web/rtcweb/current/msg00543.html | tp://www.ietf.org/mail-archive/web/rtcweb/current/msg00543.html | |||
9. Security camera/baby monitor usage http://www.ietf.org/ | 9. Security camera/baby monitor usage http://www.ietf.org/ | |||
mail-archive/web/rtcweb/current/msg00543.html | mail-archive/web/rtcweb/current/msg00543.html | |||
10. Large multiparty session http://www.ietf.org/mail-archive/web/ | 10. Large multiparty session http://www.ietf.org/mail-archive/web/ | |||
rtcweb/current/msg00530.html | rtcweb/current/msg00530.html | |||
9. Acknowledgements | 9. Acknowledgements | |||
Dan Burnett has reviewed and proposed a lot of things that enhances | ||||
the document. Most of this has been incorporated in rev -05. | ||||
Stephan Wenger has provided a lot of useful input and feedback, as | Stephan Wenger has provided a lot of useful input and feedback, as | |||
well as editorial comments. | well as editorial comments. | |||
Harald Alvestrand and Ted Hardie have provided comments and feedback | Harald Alvestrand and Ted Hardie have provided comments and feedback | |||
on the draft. | on the draft. | |||
Harald Alvestrand and Cullen Jennings have provided additional use- | Harald Alvestrand and Cullen Jennings have provided additional use- | |||
cases. | cases. | |||
Thank You to everyone in the RTCWEB community that have provided | Thank You to everyone in the RTCWEB community that have provided | |||
comments, feedback and improvement proposals on the draft content. | comments, feedback and improvement proposals on the draft content. | |||
10. Change Log | 10. Change Log | |||
[RFC EDITOR NOTE: Please remove this section when publishing] | [RFC EDITOR NOTE: Please remove this section when publishing] | |||
Changes from draft-ietf-rtcweb-use-cases-and-requirements-04 | ||||
o Most changes based on the input from Dan Burnett | ||||
http://www.ietf.org/mail-archive/web/rtcweb/current/msg00948.html | ||||
o Many editorial changes | ||||
o 4.2.1.1 Clarified | ||||
o Some clarification added to 4.3.1.1 as a note | ||||
o F-requirements updated (see reply to Dan's mail). | ||||
o Almost all A-requirements updated to start "The Web API MUST | ||||
provide ..." | ||||
o A8 removed, A9 rephrased to cover A8 and old A9 | ||||
o A15 rephrased | ||||
o For more details, and discussion, look att the response to Dan's | ||||
http://www.ietf.org/mail-archive/web/rtcweb/current/msg01177.html | ||||
Changes from draft-ietf-rtcweb-use-cases-and-requirements-03 | Changes from draft-ietf-rtcweb-use-cases-and-requirements-03 | |||
o Editorials | o Editorials | |||
o Changed when the self-view is displayed in 4.2.1.1, and added | o Changed when the self-view is displayed in 4.2.1.1, and added | |||
words about allowing users to remove and re-insert it. | words about allowing users to remove and re-insert it. | |||
o Clarified 4.2.6.1 | o Clarified 4.2.6.1 | |||
o Removed the "mono" stuff from 4.2.7.1 | o Removed the "mono" stuff from 4.2.7.1 | |||
o Added that communication should not be possible to eavesdrop to | o Added that communication should not be possible to eavesdrop to | |||
most use cases - and req. F17 | most use cases - and req. F17 | |||
o Re-phrased 4.3.3.1 to not describe the technical solution so much, | o Re-phrased 4.3.3.1 to not describe the technical solution so much, | |||
End of changes. 75 change blocks. | ||||
132 lines changed or deleted | 187 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |