-
Dave Cridland
Morning. Quick question - has anyone ever implemented POSH (RFC 7711)?
-
jonasw
not me
-
fippo
dwd: i think tobias had a prototype at least. I did as well but... its probably lost
-
daniel
Dave Cridland: yes
-
daniel
On the client side
-
Dave Cridland
daniel, Conversations does it? ANy idea if servers ever do it?
-
Dave Cridland
daniel, I mean, do servers have POSH setup for them?
-
daniel
It's one of the 3 possible verification methods we offer the users of our domain hosting (among just ignoring the self signed cert and uploading a cert)
-
daniel
Most users opt to give us a cert though
-
daniel
And by offering I mean we generate the json file an provide short instructions on where to copy the file to
-
Tobias
Dave Cridland, yeah..i implemented a prototype for prosody during IETF 87
-
winfried
0-192hcvjgt?
-
jonasw
catropy?
-
winfried
jonasw: you got it!
-
jonasw
the 192 got me for a while, that’s 128+64 and thus suspicious (also a common kilo-bits-per-second rate for compressed audio)
-
winfried
jonasw: yeah, the youngest generation cats grew up in a digital world and know more about it then we! ;-)
-
jonasw
ping
-
MattJ
.
-
Maranda
¡
-
jonasw
⁉
-
Maranda
-pong
-
Maranda
Bad Bunneh
-
jonasw
12:52:43 Zash> jonasw: Wanna forward to Dave that I have a working version of Tobias' POSH implementation? (But being anti-web, not sure I like the idea of it becoming popular)
-
jonasw
Dave Cridland, ^
-
Seve/SouL
Uoooh
-
Anu
Does anyone have a write up for the proposed lite muc?
-
Kev
Doing a clean implementation of MUC at the moment, and I'd forgotten just how *horrible* it is on the server.
-
Dave Cridland
Kev, Especially the nick-share stuff.
-
Maranda
🐮
-
Tobias
Dave Cridland, but it's so convinient
-
Maranda
I always pondered about removing that completely, that's at least almost 300 lines of code going away
-
Dave Cridland
Tobias, Oh, for sure. Just that implementing it is a pain.
-
Kev
I wonder how many times the size of 369 45 would grow if we actually specified everything in it and didn't rely on folklore.
-
Maranda
(because most of iq routing junk is for that)
-
jonasw
Maranda, seems like a good way to push MIX adaption.
-
edhelas
jonasw not sure if serious ¬¬
-
jonasw
edhelas, I am
-
jonasw
edhelas, essentially breaking MUC by breaking multi-client usage will push MIX adaption :)
-
jonasw
*adoption
-
Maranda
"Multi-client usage" was never provisioned by the xep though
-
Ge0rG
jonasw: breaking MUC will push WhatsApp adoption.
-
Holger
I'd prefer fixing MIX over breaking MUC.
-
jonasw
Ge0rG, ssssh
-
Ge0rG
Maranda: yes, but we made it work.
-
Kev
Maranda: Yes, it was. Just entirely unspecified.
-
Kev
+almost
-
Maranda
Essentially *it's a hack* 😘
-
Holger
What in XMPP isn't ...
-
Maranda
Touché
-
moparisthebest
isn't *everything* a hack?
-
edhelas
are we not all hacks in the end
-
UsL
hacks and hoes
-
marmistrz
ChatSecure iOS has gotten an unofficial MUC. chatsecure@conference.magicbroccoli.de
-
Maranda
Magic 🥦 I wonder how they taste
-
edhelas
magical
-
Kev
Example of great bits of XEP-0045: A user always gets a room subject when they join the room, right? Fairly clear, it's a MUST (well, a SHALL). But when you get to room creation it's elided and it's not clear if that's just because it's not worth repeating, or it's expected that on creation you don't get one.
-
Maranda
🤔
-
Ge0rG
Kev: and it's not quite clear how to tell the client about an empty subject.
-
Kev
That bit is clear isn't it? Empty elemet, it says it right next to the SHALL IIRC.
-
Maranda
Hmmm
-
Maranda
Hmmmmmm
-
Maranda
https://pastebin.com/Js6RptFe
- Maranda sends it on creation
-
pep.
with a newline inside?
-
Kev
That's not creation. Or, at least, you're not including 201
-
Maranda
Kev, no I'm not including 201, but that's another issue I suppose (yay?)
-
jonasw
yeah, I filed bugs against servers for not sending the empty subject
-
jonasw
because it’s the only way to be sure that MUC join is over
-
jonasw
(and history replay)
-
Ge0rG
jonasw: with GC1, MUC join is never over
-
Maranda
Ohhh I missed the 201, yay for new bug
-
Maranda
\o/
-
pep.
jonasw, if 201 then no muc history right? and no subject
-
jonasw
Ge0rG, I heard that’s going to be burned anyways
-
pep.
aiui
-
jonasw
pep., dunno, actually
-
Maranda
XEP doesn't say
-
Maranda
I'm just at that bit
-
Ge0rG
jonasw: that's not ensured yet
-
Maranda
there we go.
-
Maranda
Ohess
-
Maranda
Gajim acts funny to status 201
-
Maranda
I guess not sending it prevented that.
-
pep.
Maybe fixing gajim would be better, if it's doing it wrong
-
Maranda
pep., hmm I don't think it's wrong it just auto-requests the configuration form.
-
Maranda
pep., https://pastebin.com/8knbN8KT
-
Maranda
(and in the UI [17:19:35] A new room has been created -> which never appeared before)
-
Maranda
I wonder if Prosody also avoids sending 201 currently (didn't touch that bit of MUC code much)
-
MattJ
Maranda, it's behind a configuration option in Prosody
-
Maranda
MattJ, hmm hmm
-
Maranda
MattJ, suppose not in pre-0.9 though
-
MattJ
Correct
-
daniel
MattJ, whats the reason for not sending 201?
-
MattJ
daniel, because Prosody didn't lock the room by default
-
MattJ
and 201 implies the room is locked until configuration
-
daniel
what does 'locked' mean in this context?
-
MattJ
Nobody can join the room
-
daniel
members only? not able to send any messages?
-
daniel
nobody else i assume? since the creator is still in the room?
-
MattJ
The creator is in the room, yes
-
Kev
No, when you create a room it's initially locked an the creator MUST choose to either make an instant room (default config) or reserved room (manual config)
-
Kev
So it's not quite members-only, although the result is kinda the same.
-
daniel
so there are clients that don't configure the room and expect it to 'just work'?
-
MattJ
Potentially
-
MattJ
But they're broken if so
-
daniel
I see. I'm just curious about prosodys decision to not lock them
-
Kev
OTOH, there are clients that do rely on servers doing the right thing :)
-
MattJ
Most clients didn't/don't implement instant room creation, and the locking thing was annoying and unintuitive
-
Kev
(I note that for gc1 join-creates, the server doesn't lock and just sets an instant room)
-
Lance
dwd: for bookmarks2, can we also get an account disco feature if the server does compatibility conversion?
-
Lance
Kev: when using References, what's the expectation if there are multiple body languages? A reference per lang?
-
Kev
That seems reasonable.
-
Lance
ta
-
Ge0rG
Shouldn't that be one reference with multiple range elements? Or do we want to support i18nalized images?
-
Kev
Sorry, yes, with each range specifying a different body lang, I guess. Not thinking.
-
Ge0rG
The second part of my question was serious though. There might be use cases for that. Eg On Google play, you can have localized screenshots.
-
Lance
There isn't a range element though? Just a pair of begin/end attributes?
-
Ge0rG
I'm sure we can create a range element if needed
-
Ge0rG
But I'm still not quite sure which use cases References is supposed to cover, and at which complexity cost
-
Lance
Yeah, the case I care about is mentions
-
Kev
Tobi and I have been having a discussion about References for Images, and I think the rough concensus is to use SIMS, and follow that model for other References - so if you want to refer to something you add a new payload type into References.
-
Kev
And just have it as a wrapper.
-
Ge0rG
There are multiple unsolved problems with mentions.
-
Ge0rG
Kev: aren't payload types an attribute value, and thus carved in stone?
-
Kev
No?
-
Ge0rG
Maybe we should rather have the "type" be a sub element, like <reaction>🤦♂️</reaction>
-
Kev
I mean, yes it's an attribute, but there's nothing that says that attributes can't be extended.
-
Kev
And has the advantage of being clear that you don't support the type.
-
Ge0rG
Kev: implementations will end up with an enum type and vomit stack traces all over the user
-
Kev
Not if the XEP says that you must expect unexpected values :)
-
Ge0rG
Unless we bump the namespace with each new element type, breaking backward compatibility
-
Ge0rG
Nobody expects the Unexpected Values!
-
Maranda
<<If the service receives a cancellation, it MUST destroy the room.>>
-
Maranda
Well If I cancel Gajim sends nothing
-
Maranda
so that will end with an idefinitely locked room?
-
Maranda
or until it's configured (tm)
- Maranda also removed all legacy errors from muc.
- Maranda also removed all legacy error codes from muc.
-
Maranda
I can't seem to find on the xep, but is there a specific error to send to bounce joins when a room is locked?
- Maranda went with <forbidden />
-
Maranda
oh wait
-
Maranda
item-not-found, nm
- Maranda found it now.
-
Maranda
Ge0rG, that throttle thing you have on yax.im is severely annoying :P
-
Ge0rG
Maranda: tell the developers. I think there is a ticket for that somewhere
-
Maranda
Ge0rG, hehe was trying to use it as guinea pig https://muc.metronome.im:5280/pastebin/43e8c3c7-af46-45a7-8541-17edb26c0797 but keept blocking messages
- Maranda had to send 51.
-
Maranda
:P
-
Ge0rG
Maranda: I'm not quite sure what you are trying to tell me.
-
Maranda
Ge0rG, nothing that I was getting a lot of service-unavailable while poking with messages because of the throttling.
-
Ge0rG
Maranda: I don't think my throttling would cause any errors.
-
Maranda
Ge0rG, well it did.... I was typing one letter and sending it repeatedly to test and started getting "there was an error sending the message (service-unavailable)" after a a bit more than dozen or so
-
Ge0rG
Maranda: to a MUC?
-
Maranda
Nope
-
Maranda
was to a bare jid.
-
Maranda
(normal user)
-
Ge0rG
Maranda: mod_throttle_unsolicited then.
-
Ge0rG
https://modules.prosody.im/mod_throttle_unsolicited.html