Joachim Bauch
d4929b7525
Change "inCall" state to contain bit flags
The flags encode if a user is in the call and whether he is publishing
audio and/or video.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joas Schilling
b35460e5d9
Make ESlint happy
Signed-off-by: Joas Schilling <coding@schilljs.com>
7 years ago
Joas Schilling
3e326172f7
Remove useless ping call and "ping" with the signaling fetch instead
Signed-off-by: Joas Schilling <coding@schilljs.com>
7 years ago
Joachim Bauch
db5861e390
Fixes after rebase.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
e738a7a98c
Make sure to always pass a list in the "usersChanged" event.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
314b450774
Re-join call if connection to MCU is interrupted.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
1a50021f4e
Support both variants of "sessionid" parameter.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
a4cfe49745
Add API to force signaling reconnects, optionally with a new session id.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
0224b0bc37
Added new standalone signaling API methods.
- sendRoomMessage
- requestOffer
- sendOffer
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
890e42e0a0
Load potentially missed chat messages after reconnect.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
a5b899c8ba
Use standalone signaling server to notify about new chat messages.
This removes the long-polling against the PHP backend and instead sends an
event to all users in a room through the standalone signaling server to
notify that new chat messages exist.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
91f2c90176
Join call after user has joined the room on the standalone signaling server.
Otherwise there is a race condition of the Nextcloud server notifying the
signaling server about the user in the call before the user has joined the
room.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
f6c32a309f
Move loading of chat messages to signaling class.
No functional changes yet, but this will allow later to use the standalone
signaling backend to notify clients about new chat messages without having
to poll (see #624 ).
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joas Schilling
391f32f3f0
Stop ping and signaling when the room was deleted
Signed-off-by: Joas Schilling <coding@schilljs.com>
8 years ago
Joachim Bauch
b1ee96b5e4
Use dedicated event name to trigger when refreshing the participant list.
This avoids a conflict (introduced by #864 ) with the existing ´usersChanged`
event which is triggered when the `inCall` status of a user has changed.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
0321133f11
Defer joining rooms until signaling server is connected.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
3f31e02786
Load participant list if users left/joined through standalone signaling.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joas Schilling
867b5f94b3
Make sure the token is not a reserved word
Signed-off-by: Joas Schilling <coding@schilljs.com>
8 years ago
Ivan Sein
0c963c227b
Change endpoints to /{token}/messages.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
8 years ago
Ivan Sein
34b52f852c
Fix new multi-session signaling endpoints.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
8 years ago
Joas Schilling
04e2b8f303
Fix js handling of joining a room
Signed-off-by: Joas Schilling <coding@schilljs.com>
8 years ago
Joas Schilling
3ec66a2044
Abstract away the session handling
Signed-off-by: Joas Schilling <coding@schilljs.com>
8 years ago
Joas Schilling
085e516f5b
For guests stop to ping the room when it is deleted
Signed-off-by: Joas Schilling <coding@schilljs.com>
8 years ago
Joas Schilling
30287e0d41
Disconnect media when leaving call
Signed-off-by: Joas Schilling <coding@schilljs.com>
8 years ago
Joas Schilling
bdc71859bb
Don't use deprecated oc_current_user
Signed-off-by: Joas Schilling <coding@schilljs.com>
8 years ago
Joas Schilling
bca17ab381
Fix constructors
Signed-off-by: Joas Schilling <coding@schilljs.com>
8 years ago
Joas Schilling
d592c1d3e8
Join room/call connection > signaling > webrtc aswell
Signed-off-by: Joas Schilling <coding@schilljs.com>
8 years ago
Joas Schilling
90da1a0dae
Handle leaving call/room connection > signaling > webrtc
Signed-off-by: Joas Schilling <coding@schilljs.com>
8 years ago
Joas Schilling
fe04d506fa
Rename calls to connection and remove static-ness
Signed-off-by: Joas Schilling <coding@schilljs.com>
8 years ago
Joas Schilling
a2d8c24f2b
Setup signaling outside of webrtc
Signed-off-by: Joas Schilling <coding@schilljs.com>
8 years ago
Joachim Bauch
f54e9de17b
Fix link to OCS signaling backend.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
3f4f0b1ee1
Update room list on "room" events.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
b3c601a8cb
Split "room" from "call" when using the standalone signaling server.
Clients use the regular joinRoom/-Call API and get a Nextcloud session
id. No special handling for sessions from the standalone signaling
server are required.
The signaling server regularly "pings" active sessions to prevent them
from timing out (in case of guest users).
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Ivan Sein
51f26f93b2
Avoid multiple pull messages requests at the same time.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
8 years ago
Joas Schilling
fc83c6a33f
Ping should work when you joined a room
Otherwise your session times out while chatting and you can not
receive and post new messages after the 30 second timeout on your
session
Signed-off-by: Joas Schilling <coding@schilljs.com>
8 years ago
Joas Schilling
d5ea8734cf
also leave the room when the user navigates away
Signed-off-by: Joas Schilling <coding@schilljs.com>
8 years ago
Joas Schilling
88b639ac2a
Fix the UI to correctly join the room and the call
Signed-off-by: Joas Schilling <coding@schilljs.com>
8 years ago
Joachim Bauch
769793f6f7
Trigger "usersLeft" event for remaining users when leaving room.
This fixes a UI issue with the standalone signaling where the interface
didn't switch back to the "Looking good" view when leaving a room.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
6d137227d1
Fix eslint error.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
40f6cfeb41
Update room list after reconnect.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
7980e88865
Update UI for participants if room is deleted by another user.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
51889d5376
Fix passing of configured servers to the UI and wrong own URL to validate users.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
d84a8c9cf6
Only use standalone server if a non-empty list of URLs is configured.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
e3139fe172
Detect and handle case where sessions no longer exist after a reconnect.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
51ba92cb03
Remove duplicate method.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
917b4f49f9
Added method to check for features provided by the server.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
5aaecc9845
Switch to new "resumeid" for resuming sessions.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
5cb56b5659
Allow setting up multiple signaling servers.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
6ee066ab08
Set STUN/TURN server through settings instead of performing requests.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago
Joachim Bauch
e083e72256
Pass all signaling-related settings as JSON object to frontend.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
8 years ago