Przeglądaj źródła

Handles two domains one for anonymous users, and one for authorized one, where only authorized users can create chat rooms.

j8
Damian Minkov 11 lat temu
rodzic
commit
aeaa70ca0c
3 zmienionych plików z 13 dodań i 1 usunięć
  1. 1
    1
      app.js
  2. 1
    0
      config.js
  3. 11
    0
      muc.js

+ 1
- 1
app.js Wyświetl plik

@@ -66,7 +66,7 @@ function init() {
66 66
         return;
67 67
     }
68 68
 
69
-    var jid = document.getElementById('jid').value || config.hosts.domain || window.location.hostname;
69
+    var jid = document.getElementById('jid').value || config.hosts.anonymousdomain || config.hosts.domain || window.location.hostname;
70 70
     connect(jid);
71 71
 }
72 72
 

+ 1
- 0
config.js Wyświetl plik

@@ -1,6 +1,7 @@
1 1
 var config = {
2 2
     hosts: {
3 3
         domain: 'jitsi-meet.example.com',
4
+        //anonymousdomain: 'guest.example.com',
4 5
         muc: 'conference.jitsi-meet.example.com', // FIXME: use XEP-0030
5 6
         bridge: 'jitsi-videobridge.jitsi-meet.example.com', // FIXME: use XEP-0030
6 7
         //call_control: 'callcontrol.jitsi-meet.example.com'

+ 11
- 0
muc.js Wyświetl plik

@@ -157,6 +157,17 @@ Strophe.addConnectionPlugin('emuc', {
157 157
         var from = pres.getAttribute('from');
158 158
         if ($(pres).find('>error[type="auth"]>not-authorized[xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"]').length) {
159 159
             $(document).trigger('passwordrequired.muc', [from]);
160
+        } else if ($(pres).find(
161
+                '>error[type="cancel"]>not-allowed[xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"]').length) {
162
+            var toDomain = Strophe.getDomainFromJid(pres.getAttribute('to'));
163
+            if(toDomain === config.hosts.anonymousdomain) {
164
+                // we are connected with anonymous domain and only non anonymous users can create rooms
165
+                // we must authorize the user
166
+                $(document).trigger('passwordrequired.main');
167
+            }
168
+            else
169
+                console.warn('onPresError ', pres);
170
+
160 171
         } else {
161 172
             console.warn('onPresError ', pres);
162 173
         }

Ładowanie…
Anuluj
Zapisz