FirebaseExtended / firechat

Real-time Chat powered by Firebase
https://firechat.firebaseapp.com
MIT License
2.42k stars 1.04k forks source link

Tracking invitations #105

Open smoothquark opened 6 years ago

smoothquark commented 6 years ago

First of all, thank you for Firechat -very powerful! I am using firechat.js but have modified firechat-ui.js quite extensively. Essentially, I have implemented public and private rooms with the public rooms available for viewing only by non-authenticated users.

As for private rooms, the authenticated owner (User_Owner) can invite other authenticated users (User1, User2, etc) to the private rooms. The invitations (both accept and decline) are working fine as far as the invited users are concerned. However, how do I let the owner (User-Owner) track which users have accepted or declined the invitations? I have noted that in the database, messaging/room-metadata/roomID/authorizedUsers/userID is set to 'true' for ALL invited users regardless whether they have accepted or declined the invitations, which is surely incorrect? messaging/users/userID/invites/invitationID/status works as expected with 'accepted' or 'declined' set correctly.

I would appreciate it if someone could point me in the right direction to keep track of invites so that I can create a page listing whether an invited user has accepted or declined an invite for a particular room. I did think of something along the lines of messaging/invitations/roomID/userID true/false which will also allow the user to leave a private if so desired, but wonder if there is a better way?

Thank you.