pub type AppserviceProtocol = Protocol<AppserviceProtocolInstance>;
Available on crate feature
api
and (crate features appservice-api-c
or appservice-api-s
) only.Expand description
Metadata about a third party protocol, as returned by an appservice to a homeserver.
To create an instance of this type, first create a ProtocolInit
and convert it via
AppserviceProtocol::from
/ .into()
.
Aliased Type§
struct AppserviceProtocol {
pub user_fields: Vec<String>,
pub location_fields: Vec<String>,
pub icon: String,
pub field_types: BTreeMap<String, FieldType>,
pub instances: Vec<AppserviceProtocolInstance>,
}
Fields§
§user_fields: Vec<String>
Fields which may be used to identify a third party user.
location_fields: Vec<String>
Fields which may be used to identify a third party location.
icon: String
A content URI representing an icon for the third party protocol.
If the compat-optional
feature is enabled, this field being absent in JSON will result
in an empty string instead of an error when deserializing.
field_types: BTreeMap<String, FieldType>
The type definitions for the fields defined in user_fields
and location_fields
.
instances: Vec<AppserviceProtocolInstance>
A list of objects representing independent instances of configuration.