Instant Messaging and Video Calling
Application Videre allows users to exchange instant messages via WebSockets, make audio and video calls via WebRTC, and be notified via Web Push.
To call each other, users must register in the application and add each other to their contact list from among registered users.
When adding a user to your contacts list, the app will ask for permission to send notifications and subscribe to the push notification service.
The app uses the browser's push notification service to notify the callee of an incoming video or audio call.
By accepting the call, a peer-to-peer encrypted video/audio session will start between the caller and the callee as described by the WebRTC protocol.
- Username
$YESOD_SUPERUSER_USERNAME
- Password
$YESOD_SUPERUSER_PASSWORD
A superuser account is defined at deployment time. The superuser manages other users and grants or revokes administrator privileges to specific users.
-
Email: Gmail API
- Client id
$YESOD_GOOGLE_CLIENT_ID
- Client secret
$YESOD_GOOGLE_CLIENT_SECRET
- Client id
-
Web Real-Time Communication: WebRTC API
-
Configuration
$YESOD_RTC_PEER_CONNECTION_CONFIG
The configuration can be provided as a textual representation of a JSON object as described in RTCPeerConnection() constructor.
Mainly used to specify STUN and TURN servers.
-
-
$YESOD_GOOGLE_SITE_VERIFICATION
-
$YESOD_MS_VALIDATE
-
$YESOD_YANDEX_VERIFICATION
A new user can sign up using an existing Google account or using a verified email address. Gmail API is used as an intermediary to send verification links to the user's inbox.
A user can be grated the administrator role by a superuser or by another administrator. Only users with the administrator role have access to administrative data.
A contact is created when a user adds another user to their contact list. If each user has each other in their contact list, then they can call each other.
A push subscription is created when the user is added to the contact list, or it can be deferred until later.
The subscription can be checked or renewed from the “View contact” menu item.
Web Push Notifications are used to notify a callee of an incoming video/audio call. It is also used to end the video/audio session.
The entity Call represents outgoing and incoming calls to the currently logged in user.
The Chat entity represents messages exchanged between two users. By default, chat messages are exchanged and stored using the WebSockets protocol. Peer-to-peer messaging without intermediate storage is planned for future releases.
New ringtones can be added by an administrator in the "Ringtones" section of the "Data" menu.
An administrator can also set default ringtones for each call type, outgoing or incoming call.
Users can change their preferred ringtones in their account settings.