-
jonas’
07:10:43 pollo> TIL jitsi meet is mainly an XMPP frontend 07:11:01 pollo> I find it very amusing, since I felt XMPP was kinda dead
-
jonas’
am I seeing this correctly that we don’t actually have a spec for multi-user A/V calls?
-
jonas’
if so: does anyone have contacts to the Jitsi Meet folks so that we can get them to spec their stuff?
-
Link Mauve
jonas’, Jitsi people wrote CoLiBri, which is what Jitsi Meet is using, AFAIK.
-
jonas’
Link Mauve, where is that?
-
Link Mauve
In some XEP I don’t remember the number.
-
jonas’
ah!
-
jonas’
340
-
Link Mauve
It describes jicofo.
-
Link Mauve
As well as COIN.
-
jonas’
that’s it, yes
-
jonas’
thanks
-
Link Mauve
Another XEP.
-
jonas’
https://xmpp.org/extensions/xep-0340.html
-
jonas’
https://xmpp.org/extensions/xep-0298.html
-
Link Mauve
Those.
-
jonas’
thanks
-
Link Mauve
I don’t know how different the implementation is nowadays, though.
-
Link Mauve
It may have significantly diverged, or not.
-
MattJ
I believe it has diverged a lot and there was not much interest in fixing that
-
flow
that is my understanding too
-
flow
Is muc 333 supposed to be alone in an unsubscribe message?
-
flow
https://xmpp.org/extensions/xep-0045.html#service-error-kick
-
flow
I have somehow the feeling that this was the intention, to keep backwards compatiblity
-
flow
but then I saw this: https://github.com/igniterealtime/Smack/pull/374
-
flow
xep45 is not really clear on that (beside the examples showing 333 never alone)
-
flow
jonas’, ^
-
Zash
s/unsubscribe/unavailable/ ?
-
jonas’
flow, hmmmm?
-
jonas’
flow, 333 is an additional code which specifies which type of kick it was, using it alone doesn’t make much sense IMO.
-
MattJ
Agreed
-
flow
Zash, correct
-
flow
jonas’, but is it required to never appear allone?
-
flow
IMHO, if so, xep45 should spell it out explicitly
-
jonas’
I wouldn’t say it’s required
-
jonas’
I would say currently there is no specified case where that happens
-
flow
well allowing 333 standalone has backwards compatiblity issues
-
flow
Zash, MattJ, since the bug report come from the jitsi folks, I'd assumed that it was potentially prosody producing those unavailable presence stanzas. Is this the case?
-
MattJ
Ah, now I remember
-
MattJ
this whole discussion
-
MattJ
I'm confused, what's the bug on the Smack side?
-
MattJ
Not treating unavailable presence as "client left the room"?
-
MattJ
status codes are colour on top of that
-
jonas’
yup, 333 without anything should be treated as "client left normally" by any entity not knowing 333
-
MattJ
There was some discussion about whether 333-type leaves should be parts or kicks
-
MattJ
The argument is that they are kicks because the user didn't request to leave
-
flow
I totally aggree that status codes are additional metainformatino and that unvaialble presence means that a participant has left the room
-
Zash
I distinctly remember some client having a bug with multiple status codes
-
MattJ
While the inverse argument is that it's not a moderation thing, and kicks are noisy
-
flow
The question is about allowing 333 standalone in an unavailble presence
-
flow
I think allowing 333 standalone causes backwards compatiblity issues and hence should not be allowed
-
MattJ
What problems does it cause?
-
flow
MattJ, basically smack assumes that if the unavailable presence contains any status codes, one of those codes it at least one that has been there from the very beginning of xep45
-
jonas’
flow, I think that assumption is flawed
-
MattJ
I think that's definitely a flawed assumption
-
jonas’
status codes are a registry
-
flow
jonas’, potentially, but I could imagine that other libs do the same
-
jonas’
then other libs are also flawed
-
MattJ
Well so far we haven't found any
-
MattJ
Also this is why the status codes likely aim to follow the HTTP style of buckets
-
flow
I am also not convinced that this assumption is really flawed
-
MattJ
all the 3xx status codes are about an occupant leaving, afaik
-
flow
I mean I see your point
-
MattJ
This would have been done initially to make status codes extensible
-
MattJ
Not that I see much point in this case
-
flow
but adding additional causes that do not refine existing causes seems like a bad approach
-
jonas’
flow, unless you can find a piece of text in XEP 0045 which says that on an unavailable presence, there must be no status code or one of these X status codes, your assumption is flawed
-
flow
and in this case 333 seems to simply refine an existing cause ('kicked')
-
MattJ
Actually no, in this stanza before Prosody added 333 there would have been no status codes
-
jonas’
flow, a future status code could be refining the voluntary client leave, for example "leaving forever not going to come back"
-
MattJ
So we went from nothing -> 333
-
jonas’
the library still needs to be able to deal with that
-
MattJ
333 was just additional colour for the leave
-
MattJ
(iirc trunk nightly builds may have used a kick status code for a while, before 333 was introduced - but I don't think that was ever in a released version)
-
flow
Either way, it should be explicitly spelled out in xep45 what clients to can expect
-
jonas’
flow, I think it’s already pretty clear
-
jonas’
there are some requirements about status codes which MUST be present
-
jonas’
but there’s no wording on which are not going to be present
-
jonas’
so you’ve got to deal with that
-
jonas’
(just like there’s no wording on the order of status codes, you need to deal with any ordre)
-
flow
I would at least suggest to add an example where 333 appears standalone
-
jonas’
why?
-
jonas’
there’s currently no defined use-case for that
-
flow
then why does prosody do it?
-
MattJ
https://issues.prosody.im/939#comment-14
-
flow
MattJ, thanks for the link :)
-
MattJ
(and discussion before/after)
-
jonas’
fun
-
jonas’
MattJ, make a PR against '45 then, because 45 clearly states that there MUST be 307 at this time
-
MattJ
So I see, that's news to me
-
jonas’
only in the GC1.0 case though wtf
-
jonas’
https://xmpp.org/extensions/xep-0045.html#enter-gc
-
MattJ
Basically the fallback behaviour we want (for UX reasons) is a normal leave, not a kick
-
jonas’
weird
-
MattJ
because kicks were making users "wtf"
-
jonas’
here it’s not clearly spelt out: https://xmpp.org/extensions/xep-0045.html#service-error-kick
-
flow
yep, users don't like to get kicked
-
jonas’
so it can go either way
-
jonas’
MattJ, I suggest someone makes a PR which states that and fixes the wording then.
-
flow
jonas’, for clarification: states what?
-
jonas’
https://xmpp.org/extensions/xep-0045.html#service-error-kick shouldn’t use 307✎ -
jonas’
flow, that https://xmpp.org/extensions/xep-0045.html#service-error-kick shouldn’t use 307 ✏
-
Ge0rG
something something somebody suggested a specific error condition just for that
-
flow
Ge0rG, what is it, that you want to tell us?
-
Ge0rG
flow: IIRC jonas’ had interesting ideas for a new error condition that's neither kicked nor access denied, in the context of 0410
-
jonas’
Ge0rG, irrelevant, because MUC leaves don’t have stanza errors
-
Ge0rG
Also we abandoned that idea because nobody had time to pursuit it
-
moparisthebest
so much for the military using XMPP https://www.theregister.co.uk/2020/03/18/army_adopts_whatsapp_orders_coronavirus
-
Zash
There's more than one army
-
Zash
and more than one branch of military
-
mbt
hi all, im trying to develop an messaging app with React-Native. I have Prosody server installed and i can send/recieve messages but cant complete in-band registration. i couldnt find a package for that. Does anyone know how to do it in RN environment? Thanks
-
Ge0rG
mbt: are you using xmpp.js?
-
Ge0rG
looks like it's a lonstanding wish... https://github.com/xmppjs/xmpp.js/issues/783
-
mbt
yes i use xmpp.js for connection and messaging, in those topics 'https://xmpp.org/extensions/xep-0389.html' is offered but i cant understand how can do these instructions
-
Zash
XEP-0389 is not really ready yet
-
Zash
https://xmpp.org/extensions/xep-0077.html is what you would use
-
mbt
okay thanks, i can send iq stanzas with xmpp.js. Then should i use 0077s iq examples?
-
Zash
If you can do that before you're fully connected, then I guess that'll work
-
mbt
okay then i will try this thank you very much Zash, Ge0rG
-
Jeybe
Just disovered Kontalk. Somebody knows if they federate?
-
moparisthebest
last I looked they do yes
-
Daniel
But you have to manually hash the phone number to talk to someone on kontalk. With Quicksy.im you can just write +12345...@quicksy.im #shamelessPlug
-
moparisthebest
quicksy is ever so slightly easier to un-hash into a plain phone number though :)
-
Zash
JIDs like sha1(phone number)@beta.kontalk.net from what I could find on some wiki
-
MattJ
But SHA1 is broken! ;)
-
moparisthebest
yep, where phone number is +12223334455
-
moparisthebest
https://www.moparisthebest.com/phonehash/ this doesn't work anymore because I no longer have 500gb to spare but it "unhashed" kontalk numbers instantly
-
MattJ
500GB? I feel like you could get away with far less than that
-
Zash
Rainbow tables aren't known for being small
-
MattJ
I guess
-
Zash
I guess you could cheat and only store the shortest prefix or something
-
Daniel
Iirc it wasn't a rainbow table but just all hashes
-
Zash
Have I misunderstood what a rainbow table is?
-
Daniel
I always wanted to make it a nice weekend project to learn how to build rainbow tables and actual have all possible numbers
-
Daniel
Rainbow tables only store a subset of hashes
-
moparisthebest
rainbow tables could maybe be smaller, but still are computationally expensive
-
moparisthebest
500gb was all numbers, stored as 5 byte integers, sorted by hash, so I could binary search them and do at most like 5 sha1 operations to find any number instantly
-
jonas’
ah, I knew it was something clever
-
moparisthebest
all the technical details here https://github.com/moparisthebest/phonehash it's actually not clear to me if rainbow tables would actually be smaller or not
-
Ge0rG
moparisthebest: why didn't you upload the 500GB to github? :D
-
moparisthebest
I don't think it supports that haha, but the code to generate it is there
-
Ge0rG
In Germany, phone numbers are 12 or sometimes even 13 digits.
-
moparisthebest
yep, doesn't support any of that nonsense either :)
-
moparisthebest
I guess it'd still fit in a 5 byte number but you'd need significantly more than 500gb to store them all, unless you just went for a subset
-
moparisthebest
don't really feel like doing the math to figure out how much data that is right now :)
-
Ge0rG
the fixed prefix is +49, leaving 10 or 11 useful digits
-
Ge0rG
you'd have to cut the prefix off or go for six-byte indexes
-
moparisthebest
ah ok that changes things, I'm storing 11 digits there, so you'd just do the same except prefix +49 instead of +
-
rion
looks like there is something wrong with s2s with this new xmpp.org. I checked two Russian servers with quite old ejabberds. none of them allowed me to connect here.
-
Zash
How old is old?
-
rion
3.2
-
rion
and 2.1.13
-
rion
oh. it's not s2s. I see myself in the web logs joining here
-
rion
hm or s2s.. well muc sent me nothing back
-
rion
but obviously received and handled my presence
-
Zash
So the connectivity problem is in the other direction
-
moparisthebest
won't connect to TLS 1.0 or something?
-
rion
ok jabber.ru admin say s2s is connected. there is something upper-level
-
Zash
I vaguely recall there being all sorts of s2s issues between prosody and ejabberd back in those dark ages
-
Zash
MattJ: poke? ↑
-
Zash
I don't have access to the new box
-
MattJ
Uh, can get you access in a bit
-
MattJ
No idea what would cause this
-
Zash
rion: Did this that work before the crash?
-
rion
yep
-
Zash
All I can think of is some kind of network or DNS issue on the new box
-
flow
hmm Dele also reported that his openfire (?) instances could no longer connect to xmpp.org
-
flow
I was speculating TLS
-
Zash
No TLS 1.2?
-
Zash
I'd say 'try xmpp.net' but that's not up yet
-
MattJ
Ah, it's Debian buster so it could indeed be TLS
-
Ge0rG
Old software still attempting SSL 3?
-
pep.
Who doesn't do TLS1.3 yet? /s
-
Zash
If I'm guessing their domain correctly then that's not the problem. I get a Dialback error instead.
-
rion
does s2s uses 2 connections between 2 particular servers?
-
jonas’
sometimes
-
Kev
Usually at least 2, yes.
-
jonas’
(most of the time actually)
-
Ge0rG
Yes, for hysterical raisins
-
jonas’
there’s s2s bidirectional mode, but it’s not too widely deployed
-
rion
so usually 2 uno-directional
-
rion
jabber.ru guys looking into the problem too.
-
rion
[23:15:45] *** rion2 заходит как участник [23:15:46] *** rion2 удален из комнаты по техническим причинам that was me from jabber.ru
-
Zash
what looks like this here? 18:14:44 ---> rion joined the room 18:14:45 <--- rion has left the room due to an error (Kicked: remote server not found) 18:15:25 ---> rion joined the room 18:15:26 <--- rion has left the room due to an error (Kicked: remote server not found)
-
Zash
Oh, rion_2_?
-
rion
yep
-
Zash
s2s with jabber.ru seems to work everywhere else I try
-
rion
Psi writes: removed by technical reasons. I don't remember what's this in xml log
-
Zash
Pretty sure it's the 333 code discussed earlier
-
Zash
It's what Prosody uses if you send an error to the room, which is what it sees if the s2s connection in the other direction fails
-
MattJ
rion, Zash: from the log: Mar 24 20:47:28 server_epoll debug TLS handshake error on FD 231 (172.104.234.182, 5269, 104.248.10.4, 33976): dh key too small
-
jonas’
ah, yeah, jabber.ru
-
pep.
What was the result of the discussion around Inbox again at Summit. The "ordered list" of tabs doesn't seem mentioned in the minutes, I assume that's supposed to be something separate
-
oxpa
took me awhile how to figure this out. I'm curious why p256 is 'short' though
-
Zash
If you get that message then it's not using ECDHE
-
Zash
That's plain old DHE
-
Zash
probably with 1024bit parameters
-
oxpa
:~$ openssl s_client -connect jabber.ru:5269 -starttls xmpp-server 2>/dev/null | grep Temp Server Temp Key: ECDH, P-256, 256 bits
-
oxpa
Or may be it's because it's not ephemeral though
-
oxpa
not sure how to force that through s_client to check
-
Zash
~$ wrapsrv _xmpp-server._tcp.jabber.ru openssl s_client -connect %h:%p -starttls xmpp-server -cipher 'HIGH+kEDH:HIGH+kEECDH:HIGH:!PSK:!SRP:!3DES:!aNULL' this would be closer to what prosody 0.11 does
-
Zash
Server Temp Key: DH, 4096 bits
-
Zash
Odd. Recently changed?
-
oxpa
i tend to answer 'no' in a most sarcastic way, usually. But I guess sarcasm is difficult to transfer through xmpp. So, yes, minutes ago
-
oxpa
but what's curious is that DHE is used only when I try a longer EC curve
-
oxpa
that's why I was asking about P256
-
oxpa
openssl s_client -connect jabber.ru:5269 -starttls xmpp-server -curves secp384r1 this is a curve my openssl doesn't yet support so this results in using DH instead of ECDH
-
Zash
Oh no, I didn't want to be reminded of how OpenSSl handles curve
-
oxpa
/sigh
-
oxpa
but I have to change dh param default length due to this handling >_<
-
Neustradamus
pep.: Jabber.org has this problem since several years ;)