Ge0rG, I don’t have my github credentials with me, but this wording needs fixing (re #787):
> <p>This behavior can not be distinguished from a presence update from a MUC-supporting client that was desynchronized from the room. Treating this as a groupchat 1.0 join will mask the error and leave the client in a partially-synchronized state. Therefore, starting with version 1.32 of this specification, it is RECOMMENDED that a service receiving a <presence> without an <x> element responds with an explicit kick to that client.</p>
I suggest:
> <p>This behavior can not be distinguished from a presence update from a MUC-supporting client that was desynchronized from the room. Treating this as a groupchat 1.0 join will mask the error and leave the client in a partially-synchronized state. Therefore, starting with version 1.32 of this specification, it is RECOMMENDED that a service receiving a <presence> without an <x> element from a non-occupant full JID responds with an explicit kick to that client.</p>
Ge0rG: How do you feel about adding a new status code for 'you were kicked because you're not in the room'? Then 'new' clients could receive this and know that they need to autorejoin (which you shouldn't normally do on a kick).
Kev
Otherwise, that PR LGTM, thanks.
pep.
I was wondering if 333 couldn't be of use here, but maybe it's a bit different
Kev
333 probably works actually, yeah.
Kev
Although equally, creating a new code specifically for this seems fine too, and possibly clearer.
jonas’
maybe defer this to the magic MUC application-specific-error-conditions XEP which flow volunteered to write? :)
andyhas left
andyhas joined
Kev
I think this one we may as well just do Right Now, while merging Georg's PR, as it's such a simple change. Even if we choose 333.
alacerhas joined
yvohas joined
andyhas left
debaclehas joined
alacerhas left
andyhas joined
Ge0rG
Kev: a code or a condition or a 333?
Ge0rG
Wait. Not 0333 the XEP but 333 the status code.
pep.
Yes the status code
Ge0rG
Yes, 333 is a logical addition there.
Kev
I'd just like a sign to a post-1.32 client that it's allowed to rejoin after this kick.
Ge0rG
`urn:xmpp:muc:1.32`
Kev
And then I think we've got 'gc1 joins' providing full resyncs for a client that understands them, and still letting the user know they're not in the room any more for those that don't.
Ge0rG
Kev: I can't parse that statement
Andrew Nenakhovhas joined
Andrew Nenakhovhas left
pep.
anybody ever thought about advertising "up to what version a client supports"? :-°
Kev
If we have a mechanism (such as 333) such that a client written after this text knows that the kick was because of a desync, it means that sending a presence when not in the room (i.e. gc1 join) will give us a full resync mechanism. While clients written before this text (so not understanding that 333 or whatever means they can rejoin) will still be telling the user they're not in the room any more.
Kev
Ge0rG: See if that parses better.
Andrew Nenakhovhas joined
Kev
I think I'd prefer a new code with unique semantics, rather than 333, but I think 333 also works.
Ge0rG
Kev: yes. But please avoid using "gc1 join" if you actually mean "desync occupant presence update"
Ge0rG
Kev: why not a new error condition, one that could be added to Self Ping.
Kev
Not sure I entirely understand the suggestion, but as long as it's something that can annotate a kick, I expect I'm ok with it.
frainzhas left
Andrew Nenakhovhas left
frainzhas joined
Andrew Nenakhovhas joined
Andrew Nenakhovhas left
alacerhas joined
Andrew Nenakhovhas joined
Andrew Nenakhovhas left
404.cityhas joined
andyhas left
andyhas joined
Ge0rG
Kev: we had an idea of creating a custom error condition of `<not-an-occupant xmlns="http://jabber.org/protocol/muc"/>` for Self-Ping, but then we realized it would be a good extension to 0045, and I think it would be a perfect match for the "kick"
Kev
So you're suggesting putting that alongside the kick element?
Kev
(As well as using it in self-ping)
Kev
I see no reason that wouldn't work.
Ge0rG
Kev: I'm pretty sure you can't have a kick that's also an error.
Kev
It doesn't need to be an error for a kick does it?
Ge0rG
Does it make sense to put an error condition into a non-error?
Kev
I thought you were suggesting something like:
<presence
from='harfleur@chat.shakespeare.lit/pistol'
to='pistol@shakespeare.lit/harfleur'
type='unavailable'>
<x xmlns='http://jabber.org/protocol/muc#user'>
<item affiliation='none' role='none'>
<actor nick='Fluellen'/>
<reason>Avaunt, you cullion!</reason>
</item>
<status code='110'/>
<status code='307'/>
<not-an-occupant xmlns="http://jabber.org/protocol/muc"/>
</x>
</presence>
or
I thought you were suggesting something like:
<presence
from='harfleur@chat.shakespeare.lit/pistol'
to='pistol@shakespeare.lit/harfleur'
type='unavailable'>
<x xmlns='http://jabber.org/protocol/muc#user'>
<item affiliation='none' role='none'>
<actor nick='Fluellen'/>
<reason>Avaunt, you cullion!</reason>
</item>
<status code='110'/>
<status code='307'/>
</x>
<not-an-occupant xmlns="http://jabber.org/protocol/muc"/>
</presence>
Ge0rG
Kev: I hadn't thought through what I was actually suggesting.
Ge0rG
In retrospect, it doesn't make much sense. But maybe it's because MUC is a _bad_ spec and not because it's inherently a bad idea to have that condition code.
Ge0rG
> A MUC service MAY support adding the 333 status code to presences when a user gets removed by the service due to a technical problem (e.g. s2s link failure).
This is OPTIONAL.
I don't pretend the situation is perfect, but I think this is the best option we've currently thought of.
Kev
Thanks Ge0rG
Andrew Nenakhovhas left
Andrew Nenakhovhas joined
Ge0rG
Kev: I suppose 333 makes more sense than stuffing a condition into a non-error.
Andrew Nenakhovhas left
yvohas left
flow
why not both?
flow
Or at least put a human readable string into it
404.cityhas left
Ge0rG
flow: like... `<reason>You are not in the room.</reason>`
Ge0rG
flow: can you please clarify "both" in terms of XML?
flow
Anything which helps the recipient looking at the raw stanza to understand why he received it
404.cityhas joined
flow
Ge0rG, similar to what key wrote above + 333
Ge0rG
flow:
> I suppose 333 makes more sense than stuffing a condition into a non-error.
flow
Right, but why not also add the condition (or alternative another text)?
Ge0rG
flow: have a look at https://op-co.de/tmp/xep-0045.html#example-44
Ge0rG
flow: an application-specific error condition is supposed to be inside of an <error/>. Putting it into <x/> doesn't quite make sense. It would be just yet another MUC presence element.
flow
I don't see an issue with that. But again, I am mostly concerenced that the protocol is throwing around with numbers when it could also use strings which would be much more accessible regarding what is going on when looking at the raw stanzas
Ge0rG
flow: let's reinvent MUC.
flow
but if there is always supposed to be a </reason> then that is fine I guess
Ge0rG
flow: you need to i18nize reasons.
metkamhas joined
metkamhas left
mr.fisterhas left
debaclehas left
rtq3has left
rtq3has joined
alameyohas joined
jubalhhas joined
kokonoehas joined
Andrew Nenakhovhas joined
jubalhhas left
jubalhhas joined
Andrew Nenakhovhas left
alacerhas left
!xsf_Martinhas left
Andrew Nenakhovhas joined
Andrew Nenakhovhas left
Andrew Nenakhovhas joined
Tobiashas left
Tobiashas joined
Andrew Nenakhovhas left
jubalhhas left
andyhas left
andyhas joined
alacerhas joined
alacerhas left
typikolhas joined
typikolhas left
valohas left
valohas joined
matlaghas left
intosi
The rendered XEPs in the attic fail to load the navigation after the CSS update :(
jonas’
intosi, yes, that is an open issue
jonas’
we need to do some file shuffling
intosi
By that, you mean make the CSS and files available in /attic as well?
intosi
* and support files
jonas’
I am in a meeting right now, I don’t know off the top of my head what’s needed
intosi
Okay.
Andrew Nenakhovhas joined
Andrew Nenakhovhas left
Andrew Nenakhovhas joined
Andrew Nenakhovhas left
alameyohas left
alameyohas joined
Andrew Nenakhovhas joined
matlaghas joined
Andrew Nenakhovhas left
alameyohas left
Andrew Nenakhovhas joined
Andrew Nenakhovhas left
alameyohas joined
Andrew Nenakhovhas joined
alacerhas joined
Andrew Nenakhovhas left
Guus
board o'clock.
Sevesays hi
Guus
MattJ ralphm ?
Guus
Nyco excused himself.
Guus
uh-oh.
Sevehas a "What do we do?" face.
Guus
While we wait: Seve, if I recall correctly, we agreed to volunteer you to create a job board proposal, right?
Guus
can we remove that from 'awaiting feedback' until a proposal is ready?
Seve
Guus, yes :), I don't have something yet unfortunately, but I've been looking at what the guys at opensourcedesign and I think we could follow something similar (at least the way of posting a job)
Seve
Guus, yes, completely
Guus
No problem, I'm not rushing you - but I don't think that there's anything for Board to discuss on that, that's why I'm asking.
Seve
We also don't have it as an item yet, but I think we could consider the following suggestion for the badges: https://opensourcedesign.net/jobs/jobs/2019-03-19-design-of-badges-for-different-xmpp-compliance-levels
Seve
I will add it
Seve
Well, actually, what I want to discuss is how do we want to proceed on this :)
Guus
oh, I didn't see those badge proposals. Ge0rG cc ^^
Guus
"this" being the badges?
Guus
or the job board?
alameyohas left
alameyohas joined
alameyohas left
Seve
Guus, sorry, the badges. I added a card there, to talk about it.
Seve
Cool, looks like we kind of did something anyway, Guus :)
Guus
indeed 🙂
Guus
lacking others, I shall now resume doing somethings that actually earn me money though 🙂
Guus
I can't make it next week (I already sent an email about that)
Seve
I'm +1 on that! :)
Seve
Yes
Seve
We are on a holidays period, so it was quite expected anyway.
Guus
I archived the job board card
Guus
let's bring it up again after we've something to show.