-
jonas’
17:28:38 lovetox> but i now think its safer to make it a occupant-id / room-jid tuple it's always safer to do so, you could be dealing with malicious MUC servers trying to trick you.
-
jonas’
always scope IDs to the issuer.
-
lovetox
👍️
-
Laura
Hello guys, do you know if it's possible to run 2 servers ejabberd. One in my house and one in a vps. That's for me to be able to send message through the same jid when i'm home and internet is down.
-
Laura
If yes. Do you have any url that explain.
-
moparisthebest
In theory ejabberd supports clustering, but as I understand it you need a reliable low latency connection between servers so that still wouldn't work for what you want
-
moparisthebest
I run my XMPP server at home and have a backup LTE connection instead, maybe that could work for you?
-
Zash
You want a High Availabilty cluster, but most things instead do Load Balancing types of clustering. From what I've understood, doing both kinds of clustering at the same time is Very Hard.
-
Laura
It's something workable. But how does it works for bigger ejabberd setup ? One with world wide users ?
-
Zash
You could also try asking in xmpp:ejabberd@conference.process-one.net?join
-
Guus
Does ejabberd clustering recover cleanly from prolonged network unavailability? If so, doing something with DNS SRV priorities might work, but meh. Is it worth considering this to be an infrastructure problem instead, and arrange for a hot-standby site to take over when the primary side becomes unavailable?
-
Zash
Myeah, some sort of standby and use some sort of database wide-area clustering to sync the data, is the approach I would go for. Should work with any XMPP server even.
-
Guus
If 'home' is disconnected from the internet, is there a high dependency on retaining XMPP connectivity in the first place? Your client will still connect, but none of the remote-domain XMPP entities will be reachable.
-
Guus
You'll basically be able to interact with people that are physically in the same house - assuming standard instant-messaging functionality.
-
Laura
Yup but my home is big
-
Guus
or is this to keep available resources on your server to the outside world (in which case this has merit)
-
Laura
It actually span several house
-
Guus
Shouting instead of IM'ing isn't an option? ;)
-
Laura
And i ha e a preference to keep things local if possible
-
Laura
Sharing a link or call is better by IM
-
Guus
Sure, there are plenty of reasons to want this. I'm happy for anyone weighing the cost/benefit different than me.
-
moparisthebest
> That's for me to be able to send message through the same jid when i'm home and internet is down. If that's the use case then just running one at home is enough no?
-
Guus
as an aside: for audio/video, it might be sufficient to run STUN/TURN server locally, and have your XMPP server outside, to have decent performance.
-
moparisthebest
If your internet is down and you are at home everything still works
-
Zash
Shouldn't need STUN/TURN _inside_ your local network I would hope
-
Guus
Zash: if the XMPP connection flows over NATs to the outside world, and clients are isolated in the LAN, maybe?
-
Guus
but yeah, that's stretching things
-
Guus
unless _conferencing_ maybe, but at this point, I'm mostly trying to invent problems...
-
moparisthebest
TURN doesn't help with conferencing
-
Laura
So having 2 servers with 2 account is easy. Just not transparent for users
-
Guus
No, you'd have to run something more elaborate.
-
Zash
You could also have two separate servers with separate domains and use s2s to talk between them
-
Guus
If you prefer to run things locally for privacy reasons, then having two domains, like Zash suggest, might be preferable to keeping a remote hot-standby site up-to-date: you'd still be pumping all of your data online, which kind of negates the privacy reason for using a local server.
-
moparisthebest
Laura: I'm unclear why you don't just run a server at home which is usable from anywhere when your home internet connection works, and from home when it doesn't?
-
Laura
My connection is not really reliable. It shut once every 2 weeks
-
Laura
I need to be present to restart the box
-
moparisthebest
Laura: I solved that problem by connecting one of these to my server: https://pikvm.org/
-
Laura
My internet provider's box is shit. I need to protect it with ups. Because every time electricity cut for less than a second it goes into half state not on nor off
-
Laura
Thanks for the link
-
lovetox
biboumi replies to a disco info on the irc server with
-
lovetox
<identity type="irc" name="IRC server irc.libera.chat over Biboumi" category="conference" />
-
lovetox
and on a channel
-
lovetox
<identity type="irc" name="#asterisk on irc.libera.chat" category="conference" />
-
lovetox
how can a client know that the first one is not a groupchat
-
lovetox
and the second one is
-
singpolyma
No @ means muc service rather than muc
-
singpolyma
It's the only way to tell per current specs
-
Ge0rG
some people run MUCs on the same domain as user accounts.
-
Link Mauve
singpolyma, there is a third level with gateways, #foo%bar@baz, bar@baz and baz.
-
lovetox
ok i think i remember now, its a gap in the spec
-
lovetox
and there is no way to see the difference
-
lovetox
really sad :/ so much good UX out of the window
-
Ge0rG
lovetox: just beat up everybody who runs a channel on a domain JID and you're done
-
singpolyma
I really wish spec did not say much service should advertise it supports muc protocol. Or be required to exist at all reall9✎ -
singpolyma
I really wish spec did not say much service should advertise it supports muc protocol. Or be required to exist at all really ✏
-
singpolyma
IMO channel on domain jid is a spec violation. I don't like that this is true, but it seems to be
-
lovetox
not seeing what that has to do with it Ge0rG
-
lovetox
if someone wants to run a channel on the domain, thats fine by me, he should just be able to say so in his disco info
-
lovetox
infact there is no way to communicate that a address is in fact a groupchat, which is mind boggling how this could go unnoticed into the spec
-
Ge0rG
lovetox: well, category=conference is meant for both in https://xmpp.org/registrar/disco-categories.html
-
Ge0rG
in retrospect, <identity category='component' type='conference'/> would've been great
-
singpolyma
> if someone wants to run a channel on the domain, thats fine by me, he should just be able to say so in his disco info Except the MUC xep says this is not allowed. And also there is no way to say this in disco info ↺
-
Ge0rG
singpolyma: I've been in rooms that were hosted directly on a domain component
-
Ge0rG
I'm not even sure if 0045 actually forbids that
-
singpolyma
Ge0rG: yes, doesn't prevent it being a xep violation
-
Ge0rG
> Each room is identified as a "room JID" <room@service> (e.g., <jdev@conference.jabber.org>), where "room" is the name of the room and "service" is the hostname at which the multi-user chat service is running.
-
Ge0rG
🤔
-
Zash
This is a silly restriction FWIW
-
singpolyma
0045 requires that a MUC have a muc id which is the localpart and a service which is the domain part
-
singpolyma
Yup
-
Zash
About as silly as mandating that e.g. HTTP Upload be on a subdomain.
-
singpolyma
Silly, but present and currently necessary
-
lovetox
does not help with bridges
-
lovetox
as room@service on a bridge is as demonstrated, not a groupchat
-
Ge0rG
> As explicitly stated in RFC 6122, both the Room ID (node) and Room Nickname (resource) portions of an Occupant JID MUST be of non-zero length.
-
moparisthebest
> About as silly as mandating that e.g. HTTP Upload be on a subdomain. Wait what ↺
-
singpolyma
lovetox: well, IRC.libera.chat@whatever should not have a conference identity of muc var since it is neither a room nor a service
-
Zash
moparisthebest, not an explicit spec thing, but certain client(s?) require it
-
lovetox
but nothing hinders biboumi to simply add a second identity with "component" or?
-
Zash
but it's also not explicitly stated anywhere that you can have http upload on the domain itself, all the examples show a subdomain, and we all know only examples count :)
-
lovetox
singpolyma, yes its a service
-
lovetox
its the IRC console
-
moparisthebest
> moparisthebest, not an explicit spec thing, but certain client(s?) require it This is absolutely disgusting which ones do that? :P ↺
-
lovetox
its the IRC server
-
singpolyma
lovetox: it can't be a MUC service because it's not a domain
-
moparisthebest
That sounds literally harder to implement and for no reason at all
-
singpolyma
Per MUC xep
-
Zash
Siskin (unless fixed recently?) and Snikket-iOS at least
-
lovetox
singpolyma, how does that help me?
-
lovetox
im not saying it needs to be a MUC service
-
lovetox
but its definitly not a groupchat
-
lovetox
and i need to know that its not a groupchat
-
singpolyma
Is it advertising that it is? If so that's a bug in biboumi
-
lovetox
or are you saying biboumi is wrong in adding the identity
-
singpolyma
Yes
-
lovetox
yes i could follow that argument
-
Zash
```xml <iq from="muc.xmpp.org" type="result" id="SpNocoftZ_VfjYk0sLtB_2WT"> <query xmlns="http://jabber.org/protocol/disco#info"> <identity category="conference" name="XSF Chatrooms" type="text"/> ``` and ```xml <iq from="xsf@muc.xmpp.org" type="result" xml:lang="en" to="zash@zash.se/T_aCs-Yca3Kk" id="RlBWpuwcQQWD1lFK5JjzVT82"> <query xmlns="http://jabber.org/protocol/disco#info"> <identity category="conference" name="XSF Discussion" type="text"/> ``` ...✎ -
Zash
```xml <iq from="muc.xmpp.org" type="result" id="SpNocoftZ_VfjYk0sLtB_2WT"> <query xmlns="http://jabber.org/protocol/disco#info"> <identity category="conference" name="XSF Chatrooms" type="text"/> ``` and ```xml <iq from="xsf@muc.xmpp.org" type="result" id="RlBWpuwcQQWD1lFK5JjzVT82"> <query xmlns="http://jabber.org/protocol/disco#info"> <identity category="conference" name="XSF Discussion" type="text"/> ``` ... ✏
-
lovetox
what do you want us to see here?
-
Zash
Same identity on both here too?
-
lovetox
its everywhere, its because the MUC XEPs demands it
-
lovetox
as said, you cannot differenciate a service from a room, except you follow the argument that a domain cannot be a room
-
singpolyma
Yup. It's a bad thing in the xep imo but since it's there you have to filter out domain JIDs as not a channel.
-
singpolyma
Which is what I had to implement
-
lovetox
yes i will do that
-
lovetox
and add a bug report for biboumi, that it should remove the identity
-
lovetox
or change it to something useful
-
singpolyma
Does biboumi also advertise muc feature on that jid?
-
singpolyma
I look for conference identity and muc feature both
-
singpolyma
(as in must have both and not be domain do be a muc I can join)
-
lovetox
biboumi announces almost nothing
-
lovetox
but on the room it has <feature var="muc_nonanonymous" />
-
lovetox
thats not on the service
-
lovetox
ah you mean the muc feature
-
lovetox
yes its on both
-
singpolyma
I mean the muc protocol feature
-
singpolyma
Yeah
-
singpolyma
Is it on the weird third thing?
-
singpolyma
The IRC service
-
lovetox
yes its on the irc service
-
lovetox
yeah biboumi follows the logic that the irc service is a muc service
-
Zash
Heh, what does it say about user@service jids? :)
-
Zash
not implemented? pfft
-
singpolyma
Right, ok, so at least that must be removed IMO since it literally doesn't speak that protocol. Then you can argue about the conference identity as well
-
lovetox
hm they disabled registration at their tracker
-
lovetox
probably because of spam
-
pep.
biboumi moved to codeberg btw, same as poezio/*
-
pep.
Ah well it's poezio/biboumi, https://codeberg.org/poezio/biboumi
-
lovetox
ok why is this not mentioned on the gitlab instance
-
pep.
Because it's recent
-
pep.
That should be done I agree
-
Link Mauve
The GitLab is meant to go away any day now.
-
lovetox
and is irc.jabberfr.org
-
lovetox
not clearly a gateway to a non-xmpp service?
-
lovetox
why does it not add a corresponding gateway identity
-
lovetox
where can i report that again, is this also in biboumi code?
-
singpolyma
Yeah, I think s;✎ -
singpolyma
Yeah, I think so ✏
-
lovetox
what exactly makes a service a MUC service?
-
lovetox
to my knowledge there is no command or anything that interacts directly with the MUC domain?
-
lovetox
singpolyma, you said prviously it clearly speaks not the MUC protocol
-
lovetox
what makes you say that?
-
singpolyma
The IRC service ? It's neither a room nor a muc service so what muc protocol would it speak?
-
singpolyma
A MUC service is such because it to the domain of a MUC
-
lovetox
ok issue created, lets way 2 years✎ -
lovetox
ok issue created, lets wait 2 years ✏
-
sagaracharya
> ok issue created, lets wait 2 years Lol :P
-
Link Mauve
lovetox, could you also add that to the registrar?
-
Link Mauve
I’d rather not add non-standard identities, and make sure every gateway is at the same page.
-
Link Mauve
nicoco, how do you solve this issue?
-
lovetox
he probably dont, the thing is with irc bridges which makes them unique
-
lovetox
that they want you to interact with ircserver@gateway
-
singpolyma
It's just a bug, nothing unique here ;)
-
Link Mauve
I remember old Gajim was using the leftmost label in the domain to determine which kind of component it was, but that was disgusting.
-
lovetox
i would not care what ircserver@gateway announces at all
-
singpolyma
Link Mauve: even older gajim supported identity as well. Back before 1.0
-
lovetox
if this thing would not send me 100 messages
-
Link Mauve
goffi also, what do you do for AP domains?
-
singpolyma
Link Mauve: that is unlikely to have this bug since there are no MUCs involved
-
Link Mauve
singpolyma, I wouldn’t consider that a bug, and there is no MUC here either as the IRC server’s JID will send you chat messages IIRC.
-
lovetox
> I remember old Gajim was using the leftmost label in the domain to determine which kind of component it was, but that was disgusting. funny thing is that this works still better then looking at disco
-
nicoco
Link Mauve: not sure what issue we're talking about but these are the disco features of slidge: https://git.sr.ht/~nicoco/slidge/tree/master/item/tests/test_shakespeare.py#L658✎ -
singpolyma
Link Mauve: the bug is that it advertises it is a muc when it is not
-
nicoco
Link Mauve: not sure what issue we're talking about but this is the disco info of slidge: https://git.sr.ht/~nicoco/slidge/tree/master/item/tests/test_shakespeare.py#L658 ✏
-
goffi
Link Mauve: I don't have the context and too busy to catch up or follow right now, but the AP gateway doesn't do MUC. It's pubsub and one to one messages.
-
nicoco
singpolyma: let me know if slidge behaves in a bad way, one way or another, I'm happy to fix things :-)
-
singpolyma
I don't think slidge really has a place this bug would come up, but if I notice anything funky I have your number ;)