Problem: On each client start it necessary to send to disco info to each service to determine where is upload, muc, socks5 and other useful stuff. This slowdowns the startup and adds some load to the network and server. Depending on implementation and service type this is not obligatory should happen on start but anyway the info is not cached.
XEP-0390 describes caching of disco#info for server/stream itself and for caps from presences which usually come from contacts. There is nothing about caps of specific services. Proposal: There are many ways to add caps hashes for services but it's hard to say which one is the most appropriate. I see next ways 1. Add <c/> element to each item of disco#items. At least the XEP-0030 doesn't forbid it. 2. During computation of caps included in <stream:stream> consider also caps of services and maybe just xor them. 3. Add caps of services to <stream:stream> as a separate <hash/> elements with "jid" attribute This will also allow to avoid disco#items in some cases. 4. Invent special disco#caps request similar to disco#items I personally prefer 1 since together with similar updates to XEP-0230 it will also provide caps update notifications. Thanks, Sergey
_______________________________________________ Standards mailing list Info: https://mail.jabber.org/mailman/listinfo/standards Unsubscribe: standards-unsubscr...@xmpp.org _______________________________________________