From 7b2a2fd4b7ff0b7a42118f1bd22a30e43df63b6e Mon Sep 17 00:00:00 2001
From: Guillaume Desmottes While this seems redundant, since the scheme is included in
A GSM connection might advertise the following channel class for
@@ -366,7 +366,7 @@
This property SHOULD be requestable, and appear in the allowed
properties in
The
Connections that support contact search channels SHOULD have an entry
- in
Requests for channels of this type need only
optionally specify the
Before searching, the
For each supported hash type, implementations SHOULD include an entry
in
Mapping representing a class of channels that can be requested + from a connection manager, can be handled by a user interface, + are supported by a contact, etc.
+ +Classes of channel are identified by the fixed values of + a subset of their properties.
+ +Channel classes SHOULD always include the keys
+
Structure representing a class of channels that can be requested, + identified by a set of properties that identify that class of + channel.
+ +This will often just be the channel type and the handle type, + but can include other properties of the channel - for instance, + encrypted channels might require properties that + unencrypted channels do not, like an encryption key.
+In some cases, these classes of channel may overlap, in the sense + that one class fixes all the properties that another class does, + plus some more properties.
+ +For older clients to still be able to understand how to request + channels in the presence of a hypothetical "encryption" interface, + we'd need to represent it like this:
+ +The property values that identify this requestable channel class. + These properties MUST be included in requests for a channel of this + class, and MUST take these values.
+ +Clients that do not understand the semantics of all the + Fixed_Properties MUST NOT request channels of this class, since + they would be unable to avoid making an incorrect request.
+ +This implies that connection managers wishing to make channels + available to old or minimal clients SHOULD have a channel class + with the minimum number of Fixed_Properties, and MAY additionally + have channel classes with extra Fixed_Properties.
+ +Interface designers SHOULD avoid introducing fixed properties
+ whose types are not serializable in a .manager
+ file.
Connection managers with a fixed property that is not
+ serializable cannot have a complete .manager
+ file.
Properties that MAY be set when requesting a channel of this + channel type and handle type.
+ +This array MUST NOT include properties that are in the + Fixed_Properties mapping.
+ +Properties in this array may either be required or optional, + according to their documented semantics.
+ +For instance, if + TargetHandleType takes a value that is not Handle_Type_None, + one or the other of TargetHandle and TargetID is required. + Clients are expected to understand the documented relationship + between the properties, so we do not have separate arrays + of required and optional properties.
+The classes of channel that are expected to be available on this
+ connection, i.e. those for which
+
This property cannot change after the connection has gone to + state Connection_Status_Connected, so there is no change + notification (if the connection has context-dependent capabilities, + it SHOULD advertise support for all classes of channel that it might + support during its lifetime). Before this state has been reached, + the value of this property is undefined.
+ +This is not on an optional interface, because connection + managers can always offer some sort of clue about the channel + classes they expect to support (at worst, they can announce + support for everything for which they have code).
+This models a connection to a single user account on a communication
service. Its basic capability is to provide the facility to request and
diff --git a/spec/Connection_Interface_Contact_Capabilities1.xml b/spec/Connection_Interface_Contact_Capabilities1.xml
index 51400cb..d390a67 100644
--- a/spec/Connection_Interface_Contact_Capabilities1.xml
+++ b/spec/Connection_Interface_Contact_Capabilities1.xml
@@ -194,8 +194,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
The contact's capabilities. These should be represented
in the same way as in Mapping representing a class of channels that can be requested
- from a connection manager, can be handled by a user interface,
- are supported by a contact, etc. Classes of channel are identified by the fixed values of
- a subset of their properties. Channel classes SHOULD always include the keys
- Structure representing a class of channels that can be requested,
- identified by a set of properties that identify that class of
- channel. This will often just be the channel type and the handle type,
- but can include other properties of the channel - for instance,
- encrypted channels might require properties that
- unencrypted channels do not, like an encryption key. In some cases, these classes of channel may overlap, in the sense
- that one class fixes all the properties that another class does,
- plus some more properties. For older clients to still be able to understand how to request
- channels in the presence of a hypothetical "encryption" interface,
- we'd need to represent it like this: The property values that identify this requestable channel class.
- These properties MUST be included in requests for a channel of this
- class, and MUST take these values. Clients that do not understand the semantics of all the
- Fixed_Properties MUST NOT request channels of this class, since
- they would be unable to avoid making an incorrect request. This implies that connection managers wishing to make channels
- available to old or minimal clients SHOULD have a channel class
- with the minimum number of Fixed_Properties, and MAY additionally
- have channel classes with extra Fixed_Properties. Interface designers SHOULD avoid introducing fixed properties
- whose types are not serializable in a Connection managers with a fixed property that is not
- serializable cannot have a complete Properties that MAY be set when requesting a channel of this
- channel type and handle type. This array MUST NOT include properties that are in the
- Fixed_Properties mapping. Properties in this array may either be required or optional,
- according to their documented semantics. For instance, if
- TargetHandleType takes a value that is not Handle_Type_None,
- one or the other of TargetHandle and TargetID is required.
- Clients are expected to understand the documented relationship
- between the properties, so we do not have separate arrays
- of required and optional properties. The classes of channel that are expected to be available on this
- connection, i.e. those for which
- This property cannot change after the connection has gone to
- state Connection_Status_Connected, so there is no change
- notification (if the connection has context-dependent capabilities,
- it SHOULD advertise support for all classes of channel that it might
- support during its lifetime). Before this state has been reached,
- the value of this property is undefined. This is not on an optional interface, because connection
- managers can always offer some sort of clue about the channel
- classes they expect to support (at worst, they can announce
- support for everything for which they have code).
-
- .manager
- file..manager
- file.
Whether a Connection will have all, some or none of these
requestable channel classes depends on server capabilities;
diff --git a/spec/Protocol_Interface_Addressing1.xml b/spec/Protocol_Interface_Addressing1.xml
index f42770f..939c13d 100644
--- a/spec/Protocol_Interface_Addressing1.xml
+++ b/spec/Protocol_Interface_Addressing1.xml
@@ -116,7 +116,7 @@ AddressableURISchemes=tel;sip;
offline. When it is connected the addressable URI schemes should be
retrieved from the
Connection managers with a .manager
file
--
1.8.4.2