Service Profiles are intended to describe variants of the basic protocols
supported by telepathy CMs (Connection Managers): An example of this would
be Google Talk vs Jabber/XMPP - Google Talk is a specific case of XMPP with
well-known capabilities, quirks and settings.
Since there is a lot of common content/use overlap between Telepathy
profiles and libaccounts services, the intention is to describe a single
file format that can and will be shared by both.
<service id="google-talk">
<type>IM</type>
<provider>google</provider>
<name>GoogleTalk</name>
<icon>base-name-of-icon</icon>
<manager name="gabble">
<protocol>jabber</protocol>
<setting name="some-non-parameter-setting" type="i">-29</setting>
<parameters>
<setting name="server" type="s" mandatory="1">talk.google.com</setting>
<setting name="port" type="u" mandatory="1">5223</setting>
<setting name="old-ssl" type="b" mandatory="1">1</setting>
<setting name="fallback-conference-server">conference.jabber.org</setting>
</parameters>
<presences apply="modify">
<presence id="offline" label="Offline"/>
<presence id="available" label="Available"
icon="gtalk-online"/>
<presence id="away" label="Away"
message="1">Asleep at my desk</presence>
<presence id="hidden" label="Invisible" default="1"/>
<presence id="busy" label="Busy"
icon="gtalk-hold-my-calls"/>
<presence id="xa" label="" disabled="1"/>
</presences>
<channel-types apply="modify">
<channel disable="1" type="StreamedMedia"/>
<channel type="text">
<handle-type>contact</handle-type>
<handle-type>list</handle-type>
<handle-type disable="1">room</handle-type>
</channel>
</channel-types>
</manager>
<manager name="alt-xmpp-cm">
<protocol>jabber</protocol>
⋮
<channel-types apply="replace">
<channel type="Text">
<handle-type>contact</handle-type>
</channel>
</channel-types>
<presences apply="replace">
<presence id="offline" label="Offline"/>
<presence id="available" label="Online"/>
</presences>
</manager>
</service>