service
Click on the red underlined text to get to the source
... 10]), there is a need to
provide basic network media services. Such services include playing
announcements, initiating a media mixing session ...
... provide basic network media services. Such services include playing
announcements, initiating a media mixing session (conference), and
...
... prompting and collecting information with a user.
These services are basic in nature, are few in number, and
fundamentally have not changed in 25 years of enhanced telephony
services. Moreover, given their elemental nature, one would not
...
... These services are basic in nature, are few in number, and
fundamentally have not changed in 25 years of enhanced telephony
services. Moreover, given their elemental nature, one would not
expect them to change in the future.
...
... Multifunction media servers provide network media services to clients
using server protocols such as SIP ...
... in RFC 3550std64 [13]. Note that the service described here suffices for
simple mixing of media for a basic conferencing service. This
...
... 13]. Note that the service described here suffices for
simple mixing of media for a basic conferencing service. This
service does not address ...
... simple mixing of media for a basic conferencing service. This
service does not address enhanced conferencing services, such as
...
... service does not address enhanced conferencing services, such as
floor control, gain control, muting, subconferences, etc. MSCML [21 ...
... media server.
Note that the set of services is small, well defined, and well
contained. The section The User Part (Section 7) discusses the
...
... issues with using a fixed set of user-space names.
For per-service security, the media server SHOULD use the security
protocols ...
... media server SHOULD support the sips: scheme for the announcement
service. The media server MUST support the sips: scheme for the
dialog and conference services ...
... service. The media server MUST support the sips: scheme for the
dialog and conference services. The level of authentication to
require for each service ...
... services. The level of authentication to
require for each service is a matter of local policy.
The media server ...
... media server, upon receiving an INVITE, notes the service
indicator. Depending on the service indicator, the media server will
...
... receiving an INVITE, notes the service
indicator. Depending on the service indicator, the media server will
either honor the request or return a failure response code ...
... The service indicator is the concatenation of the service name and an
optional service instance identifier ...
... concatenation of the service name and an
optional service instance identifier, separated by an equal sign.
...
... Per RFC 3261prop [10], the service indicator is case insensitive. The
service name MUST be from the set alphanumeric characters plus dash
...
... 10], the service indicator is case insensitive. The
service name MUST be from the set alphanumeric characters plus dash
(US-ASCII %2C). The service name ...
... service name MUST be from the set alphanumeric characters plus dash
(US-ASCII %2C). The service name MUST NOT include an equal sign
(US-ASCII %3D).
...
... headers.
A given service indicator MAY have an associated set of parameters.
Such parameters MUST follow the convention set out for SIP URI
parameters. That is, a semi-colon separated list of keyword=value
...
... Certain services may have an association with a unique service
instance on the media server. For example, a given media server ...
... host multiple, separate conference sessions. To identify unique
service instances, a unique identifier modifies the service name.
...
... SIP URI. An equal sign, US-ASCII %3D, MUST separate the service
indicator from the unique identifier.
...
... unique identifier.
Note that since the service indicator is case insensitive, the
service instance identifier ...
... Note that since the service indicator is case insensitive, the
service instance identifier is also case insensitive.
...
... INVITE to the media server,
specifying the requested service and any appropriate parameters.
If the media server ...
...
If the media server can perform the requested service, it does so,
following the processing steps described in the service definition
...
... media server can perform the requested service, it does so,
following the processing steps described in the service definition
document.
...
...
If the media server cannot perform the requested service or does not
recognize the service indicator, it MUST respond with the response
code ...
... media server cannot perform the requested service or does not
recognize the service indicator, it MUST respond with the response
code 488 NOT ACCEPTABLE HERE. This is appropriate, as 488 refers to
a problem with the user part ...
... services
automatically create a service instance upon the first INVITE with
the given identifier ...
... INVITE with
the given identifier. However, if a service requires an existing
service instance, and no such service ...
... identifier. However, if a service requires an existing
service instance, and no such service instance exists on the media
server, the media server ...
... service requires an existing
service instance, and no such service instance exists on the media
server, the media server MUST respond with the response code ...
... media server MUST respond with the response code 404 NOT
FOUND. This is appropriate as the service itself exists on the media
server, but the particular service instance does not. It is as if
...
... FOUND. This is appropriate as the service itself exists on the media
server, but the particular service instance does not. It is as if
the user was not home.
...
... Announcement Service ...
... may be any multimedia object that the media server supports. This
service can play a single object with multiple streams, such as a
video and audio prompt. However, this service ...
... service can play a single object with multiple streams, such as a
video and audio prompt. However, this service cannot play multiple
objects on the same SIP dialog.
...
... INVITE to the media server requesting
the announcement service. The media server negotiates the SDP and
...
... If the media server receives an INVITE for the announcement service
without a "play=" parameter, it MUST respond with the response code
...
...
The Request URI fully describes the announcement service through the
use of the user part of the address ...
... The user portion of the address, "annc", specifies the announcement
service on the media server. The service has several associated URI
parameters ...
... service on the media server. The service has several associated URI
parameters that control the content and delivery of the announcement.
...
... parameters is the last proxy before the media server. If the service
provider deploys a proxy for load balancing or service ...
... service
provider deploys a proxy for load balancing or service location
purposes, the service provider should ensure that its choice of proxy ...
... load balancing or service location
purposes, the service provider should ensure that its choice of proxy
preserves parameters.
...
... caller and the media server.
However, the announcement service works as described below even if
the caller invokes the service ...
... service works as described below even if
the caller invokes the service directly. We chose to discuss the
proxy case, as it will be the most common case.
...
... SIP interface for the
announcement service and, as such, does not detail how announcement
sequences are provisioned or defined.
...
... file formats, or
URI lists. See the Prompt and Collect Service (Section 4) section
for more on this topic.
...
... Prompt and Collect Service ...
... aural dialog with the user.
The dialog service follows the model of the announcement service.
However, the service indicator ...
...
The dialog service follows the model of the announcement service.
However, the service indicator is "dialog". The dialog service ...
... service follows the model of the announcement service.
However, the service indicator is "dialog". The dialog service takes
a parameter, voicexml ...
... service.
However, the service indicator is "dialog". The dialog service takes
a parameter, voicexml=, indicating the URI ...
... Formal Syntax for Prompt and Collect Service ...
... Conference Service ...
... conveys to the media server that this is a request for the mixing
service. The uniqueIdentifier can be any value that is compliant
with the SIP URI specification. It is the responsibility of the
...
... namespace for an organization. For example, let us take the
case where a network offers services for "Ann Charles". She likes to
use the name "annc", and thus she would like to use
"sip:annc@example.net". We offer there is ABSOLUTELY NO ...
... SIP Proxy Server
resolves sip:annc@example.net to annc@anns-phone.example.net.
Conversely, one directs requests for the media service annc directly
to the Media Server, e.g., sip:annc@ms21.ap.example.net. Moreover,
...
... Media Server, e.g., sip:annc@ms21.ap.example.net. Moreover,
by definition, requests for Ann Charles, or anything other than the
announcement service, will NEVER be directly sent to the Media
Server. If that were not true, no phone in the world could use the
user part ...
... user name. For example, if a
domain wishes to offer services for the above mentioned Ann Charles
at sip:annc@example.com, they can offer the announcement service at
...
... domain wishes to offer services for the above mentioned Ann Charles
at sip:annc@example.com, they can offer the announcement service at
sip:my-special-announcement-service@example.com. The former address ...
... at sip:annc@example.com, they can offer the announcement service at
sip:my-special-announcement-service@example.com. The former address,
sip:annc@example.com, would resolve to the actual device where annc
...
... client. Even proxies doing mapping resolution, as in the
example above for public announcement services, do not need to be
aware of the convention. The convention is purely a matter of
provisioning.
...
... 3087 [17] is that you can address services using a request URI.
However, some have taken the examples in the document to an extreme.
...
... However, some have taken the examples in the document to an extreme.
Namely, that the only way to address services is via arbitrary,
opaque, long user parts ...
... opaque, long user parts. Clearly, it is possible to provision the
service names, rather than fixed names. While this can work in a
closed network, where the Application Servers ...
... Internet. This is because the client of the media
service has to know the local name for each service / domain pair.
...
... client of the media
service has to know the local name for each service / domain pair.
This is particularly onerous for situations where there is an ad hoc
...
... domain pair.
This is particularly onerous for situations where there is an ad hoc
relationship between the application and the media service. Without
a well-known relationship between service ...
... address, how
would the client locate the service?
One very important result of using the user part ...
...
One very important result of using the user part as the service
descriptor is that we can use all of the standard SIP machinery,
...
... redirect server or proxy server to
provide high-available services. For example, two Media Servers can
register ...
... Media Servers fails, the registration will expire and all requests
for the announcement service ("calls to the annc user") will get sent
to the surviving Media Server.
...
... Media Server MUST implement the
sips: scheme. In addition, application developers are RECOMMENDED to
use the security services offered by the Media Server to ensure the
integrity ...
... Untrusted network elements could use the convention described here
for providing information services. Many extant billing arrangements
are for completed calls. Successful call completion occurs with a
2xx result code ...
... result code. This can be an issue for the early media
announcement service. This is one of the reasons why the early media
announcement service ...
... service. This is one of the reasons why the early media
announcement service is deprecated.
Services ...
... service is deprecated.
Services such as repeating an announcement forever create the
possibility for denial of service attacks ...
... Services such as repeating an announcement forever create the
possibility for denial of service attacks. The media server SHOULD
have local policies to deal with this, such as time-limiting how long
...
... have local policies to deal with this, such as time-limiting how long
"forever" is, analyzing where multiple requests come from,
implementing white-lists for such a service, and so on.
...
... conjunction with many application
developers, media server manufacturers, and service providers, some
of whom are listed in the Acknowledgements section. All I did was do
the theory and write it up. That also means all of the mistakes are
...
... URI. Christer Holmberg
helped tune the language of the multimedia announcement service.
Orit Levin from Radvision gave a close read on the most recent
version ...
