Kim Alvefur
dc1690029d
MUC: Fix traceback on muc#admin query with missing <item> child ( #1242 )
...
Caused by a missing return statement introduced in 494938dec5d8
7 years ago
Matthew Wild
38c120dafe
MUC: Use defaults from config in create_room() if no config provided
7 years ago
Kim Alvefur
4dcb48996d
MUC: Allow anyone read access to all affiliation lists in non-anonymous rooms ( fixes #1230 )
7 years ago
Kim Alvefur
ffff93c343
MUC: Clarify condition with parenthesis
7 years ago
Matthew Wild
4a756fa1fa
MUC: Add luacheck annotation for unused parameter in filter function
7 years ago
Matthew Wild
c19a8ef9ff
MUC: Announce affiliation changes for JIDs that are not in the room
7 years ago
Matthew Wild
5b895a2d9f
MUC: Remove debug log
7 years ago
Matthew Wild
c952045eb6
MUC: Add function to retrieve affiliation data for a given JID
7 years ago
Matthew Wild
2e417768dc
MUC: Include affiliation data when iterating over affiliations with a room
7 years ago
Matthew Wild
7b7f153a80
MUC: Use the bare JID when performing a lookup for COMPAT with clients that don't set it ( fixes #1224 )
...
The full JID is never meant to be the target of affiliation changes.
7 years ago
Michel Le Bihan
5111187c2e
MUC: Check that a room password is set before verifying password supplied by user
7 years ago
Kim Alvefur
7f563615fd
MUC: Respond to ping per XEP-0410: MUC Self-Ping server optimization ( closes #1220 )
7 years ago
Matthew Wild
fdb852fbbb
MUC: Don't kick user of a reserved nick if it's theirs (thanks pep.)
7 years ago
Kim Alvefur
d71189a4a6
Backed out changeset b8c3dbf76a2e ( fixes #1162 )
...
This is not required by the XEP and has privacy issues.
8 years ago
Matthew Wild
0fd614dbab
MUC: Revert unstable MUC commits since 0.10.1
...
These have caused too many issue reports to be included in
the stable branch at this time.
Affected issues: #345 , #397
Reverted commits:
dcd53a565c01
6d4b0895f76d
1b10802a770e
564e897f0790
a7221ada9368
aaff40ec7001
05a3275b6873
c2b99fa134b3
8da11142fabf
8 years ago
Matthew Wild
6186bd57f4
MUC: Fix error logged when no persistent rooms present
8 years ago
Kim Alvefur
0caeb4940e
MUC: Handle setting default history messages when history length is unset (thanks tmolitor)
8 years ago
Jonas Wielicki
b6a654fdfc
MUC: ensure that x/item/@jid is always a bare JID
8 years ago
Jonas Wielicki
5865da2406
MUC: correctly emit <status/> tags
8 years ago
Jonas Wielicki
10dac8879e
MUC: reject non-bare JIDs in set_affiliation requests with not-acceptable
8 years ago
Jonas Wielicki
c1f51c6f13
MUC: fix set_role invocation
8 years ago
Matthew Wild
380e51758c
MUC: Restore status codes on presence sent to occupant when their affiliation changes (thanks jonasw)
8 years ago
Matthew Wild
889612dd5a
MUC: Include 'nick' attribute in affiliation lists (thanks jc)
7 years ago
Matthew Wild
d795c3994a
MUC: Fix to correctly return 'node' in disco#info responses (thanks jc)
7 years ago
Matthew Wild
69ef24b16a
MUC: If a user with an existing affiliation registers, preserve that affiliation (thanks jc)
7 years ago
Matthew Wild
bb23075a86
MUC: Initialize room with empty affiliation_data if none stored
8 years ago
Kim Alvefur
08e97e608a
MUC: Allow vCard4 requests trough
8 years ago
Matthew Wild
9c080c9631
MUC: Allow admins to include a registered nick when setting affiliation
...
This is defined by XEP-0045 section 9.3 "Granting Membership"
8 years ago
Matthew Wild
7f0bca31d1
MUC: Move comment for clarity
8 years ago
Matthew Wild
9ddd7d489e
MUC: Allow the number of messages sent by default to be configured ( fixes #397 )
8 years ago
Matthew Wild
98148f5e63
MUC: Import revised, more comprehensive patch for 8da11142fabf ( #345 )
8 years ago
Matthew Wild
b16c2dac44
MUC: Add support for registering with a MUC, including reserving a nickname as per XEP-0045
8 years ago
Matthew Wild
d7c86f2e6f
MUC: Add some comments for clarity
8 years ago
Matthew Wild
0da19da4a6
MUC: Add support for separate events for disco#info queries with a 'node'
...
Reserved nickname discovery uses this
8 years ago
Matthew Wild
293efa61df
MUC: Add support for storing additional data with MUC affiliations
...
XEP-0045 registration provides examples of registering a nickname
and various other details. This also allows modules to store arbitrary
private data about an affiliated entity.
8 years ago
Kim Alvefur
9aa86079aa
MUC: Normalize indentation
8 years ago
Kim Alvefur
6ba3049a78
MUC: Direct PubSub queries to occupants to their real bare JID
...
This allows accessing PEP nodes of participants without knowing their
real JIDs.
8 years ago
Matthew Wild
b31ffd4a55
MUC: Fix traceback when failing to restore a room
...
When a room exists in the DB but cannot be loaded (e.g. due to max_rooms
or a pre-restore handler) restore_room()/get_room_from_jid() returns false.
8 years ago
Kim Alvefur
305e161bc0
MUC: Pass missing argument to log message
8 years ago
Kim Alvefur
173196f076
MUC: Rename variable to make it clearer that it is the room JID and not the MUC host
8 years ago
Jonas Wielicki
79465f809f
MUC: Ensure that <delay/> elements which match our from are stripped ( fixes #1055 )
8 years ago
Jonas Wielicki
f0a0a5aad7
MUC: fix the @from on <delay/> in history replay ( fixes #1054 )
8 years ago
Kim Alvefur
ac1e878844
MUC: Always send subject message, even if it is empty ( fixes #1053 )
8 years ago
Lennart Sauerbeck
9fa6dd939e
muc: Allow clients to change multiple affiliations or roles at once ( #345 )
...
According to XEP-0045 sections 9.2, 9.5 and 9.8 affiliation lists and role
lists should allow mass-modification. Prosody however would just use the
first entry of the list and ignore the rest. This is fixed by introducing
a `for` loop to `set` stanzas of the respective `muc#admin` namespace.
In order for this loop to work, the error handling was changed a little.
Prosody no longer returns after the first error. Instead, an error reply
is sent for each malformed or otherwise wrong entry, but the loop keeps
going over the other entries. This may lead to multiple error messages
being sent for one client request. A notable exception from this is when
the XML Schema for `muc#admin` requests is violated. In that case the loop
is aborted with an error message to the client.
The change is a bit bigger than that in order to have the loop only for
`set` stanzas without changing the behaviour of the `get` stanzas. This is
now more in line with trunk, where there are separate methods for each
stanza type.
References: #345
9 years ago
Kim Alvefur
d28da6dd6c
MUC: Don't reply to errors with more errors ( fixes #1122 )
8 years ago
Kim Alvefur
2ab7d55007
MUC: Say something about storage failure before aborting (see #1091 )
8 years ago
Kim Alvefur
035cc595b9
MUC: Prevent creation of room that could not be loaded from storage (see #1091 )
8 years ago
Kim Alvefur
89f519b0a5
MUC: Abort module loading if unable to get list of persistent rooms from storage ( fixes #1091 )
8 years ago
Jonas Wielicki
19ceef8658
MUC: send muc#stanza_id feature as per XEP-0045 v1.31 ( fixes #1097 )
8 years ago
Jonas Wielicki
f6cab5c6d2
MUC: send muc#stanza_id feature as per XEP-0045 v1.31 ( fixes #1097 )
8 years ago