[Standards] MIX use of type=groupchat?
steve.kille at isode.com
Mon Jan 23 07:09:35 UTC 2017
> -----Original Message-----
> From: Standards [mailto:standards-bounces at xmpp.org] On Behalf Of
> Stephen Paul Weber
> Sent: 22 January 2017 19:32
> To: standards at xmpp.org
> Subject: [Standards] MIX use of type=groupchat?
> I have a question about
> Doesn't using <message type="groupchat"> defeat the purpose of building
> on / re-using PubSub? Why have this extra special case as a way to
> items, instead of using normal publish? And using type=groupchat seems to
> also necessitate a custom <jid xmlns="xmlns='urn:xmpp:mix:0"> to indicate
> the item publisher.
This is a minor tweak for messages reflected back to originator, which I do
not see as a big deal. A simple implementation could ignore this.
> <https://xmpp.org/extensions/xep-0369.html#concepts-pubsub> says " MIX
> uses standard presence and groupchat messages to provide an interface to
> the MIX service that does not expose PubSub protocol for many of the more
> common functions" -- but wouldn't "exposing PubSub" simplify everything
> (only one protocol to support instead of more)? If MIX were backwards-
> compatible with MUC at either client or server level, I would understand
> keeping some warts, but since both client and server support is required
> use it at all, why not clean up everything while we're at it?
> Stephen Paul Weber, @singpolyma
There would be a definite elegance in "using PubSub" everywhere, and an
early MIX version was written this way.
A key decision at the summit 12 months back was to switch use groupchat and
presence encodings for core messages.
There was a strong consensus on this, and I don't think this is something
that will be reversed. We can review again in Brussels if there is desire.
To me, the key issue is that MIX/MUC/Groupchat is a pretty fundamental
service for real time messaging. I think that it makes sense to use
special/optimized encoding for core traffic. To me, type=groupchat really
belongs in XMPP and is not something that should die with MUC. It feels a
fundamental capability. Clearly type=presence is fundamental and I think
it makes sense for MIX to use this and not wrap messages in PubSub.
Using type=groupchat will help a lot with writing a client that does both
MUC and MIX (which many client writers will want to). The core traffic
will use essentially the same encoding, which I believe will help. I also
note that it should be possible to write a pretty reasonable end user
MIX/MUC client without use of PubSub (you will not be able to skip MAM in
the same was, as MAM is vital for an end user client to retrieve history).
More information about the Standards