-
ubq323_
rfc6120 seems to define <presence/> as a general 'publish-subscribe' mechanism, and <iq/> as a 'request-response' mechanism. so why do pep/pubsub (xep-0163/0060) use <iq> instead of <presence>?
-
MattJ
Because they have different semantics. I remember at one XMPP summit someone said "well, pretty much every protocol boils down to either pubsub or search"
-
MattJ
But the reality is that the details do matter, not every pubsub protocol has the same properties, depending on design decisions
-
Zash
Individual actions in PubSub, e.g. "publish", maps well enough to <iq>
-
MattJ
MQTT did not have any error handling until a very recent version
-
MattJ
<presence> does not have an acknowledgement
-
MattJ
<iq> does
-
MattJ
<presence> has additional semantics related to connectivity, which isn't what most pubsub applications want
-
Zash
So partially because most things also follow RFC 6121
-
edhelas
Somehow we should rewrite MUC on Pubsub one day
-
MattJ
Sounds like a great idea
-
singpolyma
Heh
-
moparisthebest
Plain XMPP is pubsub
-
moparisthebest
When you log in, you are subscribing to the "node" of your JID, then you can subscribe to other "nodes" by joining MUCs, you and others can publish to them
-
moparisthebest
As you can see, IRC is also PubSub
-
moparisthebest
https://burtrum.org/up/18f89623-7fd7-4cd2-b721-ef4d61ae8b35/91842w.jpg
-
edhelas
> New chat protocol just dropped > Looks inside > It's just pubsub
-
edhelas
https://upload.movim.eu/files/9d94237298995552fa13436420195fbca436dce7/ipO3M8Di3B56/image.png.jpg
-
moparisthebest
Accurate
-
moparisthebest
Redis: PubSub Kafka: PubSub Nostr: PubSub
-
edhelas
We need to do more XMMeMe
-
moparisthebest
Wait... That's not what we've been doing this whole time?