You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: gc3.md
+110Lines changed: 110 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -81,6 +81,8 @@ Client sends an iq set, optionally including the form. Not including the form is
81
81
82
82
#### Channel responds with result containing join details
83
83
84
+
This includes the subscription-jid (occupant JID), and also the membership configuration (which could contain fields not part of the join and is in the member-form rather than join-form (QUESTION: do we want to merge these?))
@@ -234,6 +246,10 @@ If a user's server does not support gc3pam, a client supporting the fallback mec
234
246
235
247
### Channel roles and affiliations
236
248
249
+
GC3 uses ACL.md for access control, and hats for roles. Perform Hats/ACL queries against the channel JID.
250
+
251
+
When dual-stacking with MUC (which it's assumed almost all implementations will), Hats of Owner, Admin, Member should exist to map onto the MUC affiliations.
252
+
237
253
### Channel configuration
238
254
239
255
### Inviting to a channel
@@ -242,6 +258,100 @@ If a user's server does not support gc3pam, a client supporting the fallback mec
242
258
243
259
### Configuring a user's membership of the channel (changing nick, xep4 form)
244
260
261
+
Users can configure their membership of a room (particularly their nickname, but also whatever else the service exposes).
262
+
263
+
#### Client requests membership form from channel
264
+
265
+
A client can the membership configuration form from a channel they're in by sending an iq get
<instructions>Fill out this form to configure your membership</instructions>
289
+
<fieldtype='hidden'
290
+
var='FORM_TYPE'>
291
+
<value>urn:xmpp:gc3:member-form</value>
292
+
</field>
293
+
<fieldtype='text-single'
294
+
label='Nickname'
295
+
var='urn:xmpp:gc3:fields:nickname'>
296
+
<required/>
297
+
</field>
298
+
</member-form>
299
+
</iq>
300
+
```
301
+
302
+
A field whose var is `urn:xmpp:gc3:fields:nickname` is always the user's nickname in the room, and clients might wish to special-case presentation of this field.
303
+
304
+
#### Client sends iq to channel with membership details
305
+
306
+
Client sends an iq set, including the form. Not including a field is an instruction to use the existing value for that field.
0 commit comments