[Standards] XEP-0215: External Service Discovery

Holger Weiß holger at zedat.fu-berlin.de
Sat Apr 11 18:01:31 UTC 2020

I stumbled over two things while adding XEP-0215 support to ejabberd:

1. The "type" attribute specifies the "service type as registered with
   the XMPP Registrar".  As far as I can see, no types are registered so
   far; and at least to me, it's not completely obvious how (STUN and)
   TURN over TLS services should be specified.  I see two ways:

   	<service type='turns' protocol='tcp' [...]/>
   	<service type='turn' protocol='tls' [...]/>

   Personally I'd opt for the first one (to be consistent with e.g.
   <https://tools.ietf.org/html/rfc5389#section-9>), but I don't care
   much.  Either way, I guess this should be clearly defined.

2. The XEP allows clients to either request the list of <services/>
   (optionally limited by the desired service "type"), or to request
   <credentials/> (limited by the desired "host", "type", and optionally
   "port"; but not e.g. by the "protocol").  As credentials can be
   included with the <services/> response, I don't quite see the point
   of having a seperate <credentials/> request.  Wouldn't it make more
   sense to allow the client to specify arbitrary <service/> attributes
   (except maybe "username" and "password") with the <services/> request
   for filtering the response, e.g.

   	<services type='turn' protocol='udp'/>

   and then drop the <credentials/> thing?


More information about the Standards mailing list