-
rom1dep
> A space is a organisational unit that is usually managed by a single group or entity, they can choose a server where the host this space, and all MUCs should be on that server Maybe that deserves another concept/terminology, but it would be a shame for this effort not to result with the ability to collect rooms under one umbrella that's easily discoverable and subscribeable to. It's nice to have spaces as "cohesive silo under one the supervision of one admin team on a single server instance" It's also nice for people to be able to interact with "collections" of topically-related rooms (e.g. "electronics": Collection = Set("open hardware": muc, "embedded software dev": muc, "3D printing": muc, …) ↺
-
MattJ
I agree, I think it would be feasible to have a "related rooms" feature
-
Kev
I did write up Related Enties a little while ago. I should clean it and submit it maybe.
-
Kev
https://github.com/swift/protoxeps/blob/master/related-entities.md
-
lovetox
And who says what is related? The MUC owner?
-
lovetox
Or is this like a blog kind publishing situation, I publish a list of related things somewhere, and somebody van download it and join it? Kind of like a bookmark group?
-
lovetox
I feel like something like this could be achieved by defining some kind of bookmark group sharing mechanism
-
lovetox
I would add a group element to bookmarks and define a group share xmpp uri
-
lovetox
This way everyone can build related stuff and share it? There could be also a well defined node on a home server where an admin can publish the groups
-
lovetox
But hard to call that a space .. its a collection of bookmarks
-
devel
Hello. Has anyone come up against this error recently when trying to send a message to a user on quicksy.im? "Authentication failed: Peer responded with error: unsupported certificate purpose (not-authorized)"
-
devel
The issue appears to be the latest Letsencrypt (i.e., Google) attempt at making the web a closed ecosystem where only oligopolists get to play while everyone else is relegated to being a mere consumer. Details explained here: https://blog.prosody.im/2026-letsencrypt-changes/
-
devel
My own server is ejabberd 25.10 which I believe should be able to cope with this breakage by accepting "TLS Web Server Authentication" (OID 1.3.6.1.5.5.7.3.1) as sufficient for S2S purposes. Not sure what Quicksy is using at the moment.
-
Guus
quicksy seems to be using ejabberd 24.12-3
-
devel
So that's probably expecting my server's certificates to have both "TLS Web Server Authentication" and "TLS Web Client Authentication" flags, right? Sadly, upon certificate renewal a day or two ago, the latter claim is no longer present in Letsencrypt certs.
-
Guus
LetsEncrypt announced phasing out a specific flags a while ago. I believe that comes into effect ... now-ish, so it tracks.
-
Guus
I've poked the quicksy.im admins
-
devel
https://letsencrypt.org/2025/05/14/ending-tls-client-authentication
-
Guus
Is dialback still working for you? That may prove to be a workaround to get around s2s authentication issues.
-
devel
I've managed to coerce a server+client certificate out of Letsencrypt with `getssl` for now (add `PROFILE="tlsclient"` in the configuration file) but that'll stop working by mid-May.
-
devel
> Is dialback still working for you? No it did not seem to work, although I did not fully validate my server's configuration. But at first sight, it looks like quicksy.im does not do dialback.
-
devel
> I've poked the quicksy.im admins Poking Daniel seems like a good move, in case he's not aware of the issue. Thanks @Guus!
-
lol
I'm building my own xmpp client and I wanted to add support for server-side search. I ran some tests against a local ejabberd instance but apparently nothing in the wild supports it - I couldn't find a single alive MUC which would advertise it. The server I'm using, draugr.de, advertises support for it, but when I try to search one of the dead but not empty MUCs always returns zero results if you specify {urn:xmpp:fulltext:0}fulltext (that is, with a string that I can see in the chat history for that MUC). So essentially server side message search is non-existant.
-
lol
Also, mongoose advertises support for it, but in reality ignores that field altogether.
-
moparisthebest
maybe report the bug to ejabberd?
-
lol
it's not an ejabberd bug - I tested it against a local ejabberd and it works fine. probably misconfigured.
-
moparisthebest
seems like an ejabberd bug if it allows such a config to advertise the feature and return nothing when it's used?
-
lol
yeah.it works for one on one chats though
-
lol
and for mongoose it is indeed a bug - but I don't think anyone uses it anyway
-
lol
and it's not like anyone uses server side search in general - so I don't think ejabberd devs would rush to fix this configuration, etc
-
lol
so yeah I should've probably checked if this a generally supported feature before beginning to design support for it as a core part of the client
-
TheCoffeMaker
Report it anyways
-
lol
it does work for private chats though, maybe I could poke around that... if only all my private chats weren't omemo'd lol
-
singpolyma
I bet it's not too hard to write a prosody module also if the right storage system is in use
-
lol
that's not something I can undertake.
-
wgreenhouse
a little surprising that it doesn't work for MUC MAM on ejabberd. feels like the sort of feature that would be sought especially in closed office deployments
-
wgreenhouse
where there is a tendency to use the group chat as a knowledgebase
-
lol
if only such deployments existed that were actually in use
-
singpolyma
I got the impression they say it does work on ejabberd but no volunteer run server has it enabled?
-
lol
draugr.de has it enabled and it seems to work for private chats
-
lol
but yes group chat search was the #1 thing that inspired me to try this. I think it would be very cool. Matrix has this feature.
-
lol
yep just double checked it does work for private chats on draugr
-
singpolyma
But not for MUC. Does it work for MUC in an ejabberd you control?
-
lol
didn't try
-
wgreenhouse
I wonder if this is a thing where both the regular MAM storage and the MUC MAM storage need to be configured a way for it to work
-
lol
wait, actually it does work on draugr.de for mucs! it was just a particular muc which it didn't work for
-
lol
so I guess good news is it tends to work, and the bad news is it only tends to
-
singpolyma
Well maybe that one MUC has it disabled
-
wgreenhouse
lol: maybe some aspect of MUC configuration would allow owners to opt out of it
-
wgreenhouse
yeah
-
lol
is there a way this setting could possibly be visible to the user other than trying to search
-
moparisthebest
still a bug to advertise the feature then return empty result instead of an error ?
-
lol
right
-
wgreenhouse
it sounds like the whole component advertises the feature, not the one MUC. or idk
-
wgreenhouse
lol: any different disco#info returned for the MUC where it works vs doesn't?
-
lol
by advertise I mean: when you send an iq type="get" to an MAM entity (your server or an MUC jid) it return an empty form with the fields it supposedly supports. I didn't try or even implement disco yet
-
singpolyma
> still a bug to advertise the feature then return empty result instead of an error ? Yes ↺
-
singpolyma
> by advertise I mean: when you send an iq type="get" to an MAM entity (your server or an MUC jid) it return an empty form with the fields it supposedly supports. I didn't try or even implement disco yet Right. If the field is there it should work. So some bug maybe still ↺
-
lol
would anyone happen to know any alive group chats running on ejabberd that might support server-side search, which I could test again?
-
lol
even for those group chats that server side search on draugr.de works - it doesn't work with chinese characters
-
singpolyma
That's possible. Worth reporting the bug
-
lol
hm, india@conference.a3.pm has a field `withtext`
-
lol
that server claims to run ejabberd 23.04 . I guess the field had a different name in older versions
-
lol
I guess I'm gonna implement at least server side search by date for now. At least that is claimed to be supported by most.
-
badlop
and where exactly is fulltext support advertised?
-
lol
<query xmlns='urn:xmpp:mam:2'> <x xmlns='jabber:x:data' type='form'> <field var='FORM_TYPE' type='hidden'> <value>urn:xmpp:mam:2</value> </field> <field var='with' type='jid-single' label='User JID'/> <field var='start' type='text-single' label='Search from the date'/> <field var='end' type='text-single' label='Search until the date'/> <field var='withtext' type='text-single' label='Search the text'/> </x> </query>
-
badlop
and in what XEP section is that described as "support advertised"?
-
lovetox
badlop: what are you saying? You add fields to a form that then are not supported when filled out?
-
lovetox
How would that make sense
-
badlop
the origin of my questions is this sentence: « I'm using, draugr.de, advertises support for it, but when I try to search one of the dead but not empty MUCs always returns zero results if you specify {urn:xmpp:fulltext:0}fulltext»
-
lovetox
In order for the client find out about additional fields the server might support, it can send an iq stanza of type 'get' addressed to the archive
-
lovetox
That's what the xep says
-
lovetox
I request a form and of course it's expected that every field in this form serve a purpose
-
rom1dep
> But hard to call that a space .. its a collection of bookmarks implementation may end-up being vastly different, I'm not sure the UX should be, though ↺
-
badlop
i thought that the feature support is advertised as specified in the XEP, that is: https://xmpp.org/extensions/xep-0431.html#feature
-
lovetox
That's a different xep
-
badlop
ok, then which one are you talking about, that describes the usage of "withtext"?
-
lovetox
313
-
badlop
and where is "withtext" described?
-
lovetox
It is not, but that's not relevant, ejabberd describes it I'm it's form that it submits to the client
-
lovetox
So maybe enlighten us, what functionality is behind "with text"
-
badlop
that's exactly what i want to know
-
badlop
a client is implementing a feature, but the server doesn't work "as expected"... so I want to know where is described what is expected :) I'm asking for the corresponding XEP section, but apparently there is none, apparently neither 431 or 313 are relevant to describe the expected behaviour
-
lovetox
the expected behavior should be in ejabberds MAM documentation
-
lovetox
the XEP defines that any server can add any form field they want and can define it however they want
-
lovetox
seems some developer on ejabberd made a choice to include such a field, from the label "withtext" a developer can assume its a text search, but we will never know if ejabberd has no documentation for it
-
badlop
ah, then this case falls in this sentence "Other fields may be used, but are not defined in this document" https://xmpp.org/extensions/xep-0313.html#filter
-
lovetox
and https://xmpp.org/extensions/xep-0313.html#query-form
-
badlop
ok, and "withtext" is such a field: custom added in ejabberd... let's see if i find some clue
-
lol
It has a different name in newer versions.
-
lol
Ejabberd is painfully slow to start locally btw. Sometimes it takes like 20 seconds. Mongoose is faster but it's buggy, I wonder if it is even used anywhere.
-
badlop
what was the old name, and the new name, and in what version approx do you think it may changed?
-
lol
{urn:xmpp:fulltext:0}fulltext is what draugr.de has
-
lol
draugr.de is at 25.10.0
-
badlop
ok, btw, withtext was implemented in mod_mam since the very first commit in 22 June 2015, when XEP-0313 was v0.2
-
badlop
summary of what I found: ejabberd 15.06 added support for MAM, including withtext ejabberd 25.07 added support for fulltext (XEP-0431) You can fill fields withtext and/or fulltext. If you provide boths, then fulltext is used and withtext is discarded. The form shows those fields only when using mysql storage, otherwise fields are not provided and are not read. you must provide the exact text to search in the body, there are no wildcards or partial sentences.