i have question, can a muc relay and IQ query to all the occupants in the room?
Lance
it can, but how it does so, and how it handles the results isn't specified
Jef
how about instead of the room itself, maybe a service does it
Lance
?
Kev
Or, to put it another way, no it doesn't :)
Jef
it can't be done?
Kev
Not with standard MUC.
Lance
if you implemented your own muc component, and decided how to deal with all of the responses, sure
Jef
Lance, by component you mean service?
Jef
which can be discovered by disco
Lance
right, I mean the service providing the muc rooms
Jef
hmmm...
Jef
thanks i will check it out
Lance
but you would most likely be better off just sending the queries to the room occupants instead
Jef
if i have one query and 100 occupants it would be troublesome
Jef
more so, i don't know which occupants can handle the query
Kev
Well, that, at least, you should know.
Jef
if they join the attached muc service, i could know that
Jef
so i just send the query to the service
Kev
They'll have caps in their presence.
Jef
oh
Jef
i haven't considered that
Kev
It would break the iq model if you started getting multiple responses to a single query.
Jef
ha.... i see
Jef
so that's an absolute no
Lancehas left
Lancehas joined
Jef
still, i find that sending a new IQ for each and every occupant is rather inefficient
Lance
sounds like you need might need mep
Jef
mep?
Lance
http://xmpp.org/extensions/inbox/mep.html
Kev
PEP for MUCs.
Jef
looks it it could solve the problem, yes... but it is a proto xep
Jef
i have no other choice then, but wait until it is ready
Lance
Jef: how much control do you have in this setup? Are these arbitrary clients joining the muc, or ones that you control?
Lance
because you could make your muc service do the initial query and then do a message broadcast with the results
Jef
no, they are arbitrary
Jef
Lance, it is for the FIS
Lance
ooh
Lance
I see
Jef
i want to send a search query
Lance
and search across all room occupants
Jef
yes
Lance
ok, then MEP wouldn't help in that case
Jef
:S
Lance
so, you'd need to do this like how MAM works
Lance
send the iq to the muc, muc queries occupants, muc forwards results via message wrappers to the requester, muc sends result iq
Jef
Message Archive Management?
Lance
yes
Lance
the pattern of send iq, receive series of result message stanzas, receive single result iq
Kev
I think I missed what you're trying to do.
Jef
Kev, it is about searching files
Kev
Ah.
Jef
Lance, then the muc would have to wait for every occupant to send the results?
Kev
It would, yes.
Lance
to send the final iq, yes
Jef
not optimal, but i guess that's the best we can do
Jef
maybe send a timeout with the query
Lance
hrm
Lance
we can't really solve the waiting issue without caching/versioning/etc, but we can make this look a bit nicer and not have all of these response stanzas
Lance
by declaring that a muc room's FIS root directory contains a directory for each occupant
Lance
and then the room proxies any requests for data in those directories to those occupants
Jef
and what about with you want to search all across with a single keyword
Jef
and what about when* you want to search all across with a single keyword
Lance
it would look exactly like doing it with another user. in this case the muc service knows how to mux all of the search results together into a single result
Lance
RSM goes out the window though :/
Jef
result set?
Lance
right, how do you reliably limit/page results from a search across multiple sources?
Lance
its doable if the muc caches the directory tree and metadata for its occupants
Jef
how about every result have an attribute with the jid of the occupant
Jef
i don't understand well how RSM becomes difficult
Lance
well, idk. i'd have to think some more. it may work just fine
Ashleyhas joined
Ashleyhas left
Lance
ok, chat based voting works with the new memberbot. It just needs to write output files like the old one
Lanceponders how to integrate last message correction with voting