Commit Graph

2111 Commits

Author SHA1 Message Date
Anton Georgiev
4806e71fe8
ConnectionStatus - log info on 'warning'
Until now we only logged for `normal`, `danger` and `critical` leading to some ambiguity in log analysis
2021-07-23 14:18:23 -04:00
Anton Georgiev
a37843d2a7 Merge branch 'v2.3.x-release' of github.com:bigbluebutton/bigbluebutton into merge238-into-24 2021-07-23 17:09:18 +00:00
prlanzarin
168f66310e fix(listen-only): avoid leaving a dangling HTMLMediaElement in paused state 2021-07-23 02:35:47 +00:00
prlanzarin
e20fe6d4ad fix(screenshare): avoid leaving a dangling HTMLMediaElement in paused state 2021-07-23 02:27:02 +00:00
Gustavo Trott
e4ef1582f2
Merge branch 'develop' into activity-report 2021-07-22 11:33:47 -03:00
Gustavo Trott
3c6155a73e Creates config activityReportTracking to enable Activity Report 2021-07-22 11:09:44 -03:00
Mario Jr
2f75f6107e fix(audio): prevent false positive alerts of 1005 error
After reconnecting (with 1007 or 1005), user may gets 1005 when meeting
is ended by moderator.
2021-07-22 09:28:14 -03:00
Anton Georgiev
1abedcc698
Merge pull request #12789 from jfsiebel/implement-default-layout-config
Allow default layout config in bbb-web
2021-07-21 16:11:08 -04:00
Gustavo Trott
b0f9835ffd Merge branch 'develop' into activity-report 2021-07-21 14:20:27 -03:00
Anton Georgiev
472c9a6107 Merge branch 'v2.3.x-release' of github.com:bigbluebutton/bigbluebutton into 237-into-develop 2021-07-20 15:21:21 +00:00
Mario Jr
6db69c39d8 fix(audio): prevent duplicated error logging
We now let audio-manager log errors, using the specified error code.
These errors are still logged in bridge layer, but as a warning.
This commit doens't change error codes behavior, they are still being
logged as errors and with the same code numbers.
2021-07-20 11:10:04 -03:00
Ramon Souza
1be7fd28ce Merge remote-tracking branch 'upstream/v2.3.x-release' into issue-12665 2021-07-19 14:30:45 -03:00
Joao Siebel
8462465a5f Allow default layout config in bbb-web. close #12668 2021-07-19 11:02:58 -03:00
Mario Jr
431a6c7c3b chore(audio): add secondsToGatherIce as extraInfo in server log 2021-07-16 11:16:24 -03:00
Gustavo Trott
c70967e7f1 Adds UI buttons to moderators open Activity Report 2021-07-15 21:23:16 -03:00
Mario Jr
f5713869bf fix(audio): correct log the time needed for ice gathering 2021-07-15 11:15:53 -03:00
Gustavo Trott
45d4c310c2 Merge branch 'develop' into activity-report 2021-07-13 11:12:45 -03:00
Ramon Souza
604ae9cf6f change default layout to smart 2021-07-13 09:25:53 -03:00
Anton Georgiev
37c6175f09
Merge pull request #12704 from jfsiebel/hide-poll-response-viewers
Filter anonymous poll data for presenter, moderators and viewers
2021-07-12 08:51:29 -04:00
Ramon Souza
8fe8a0ac6b display endWhenNoModerator message 2021-07-08 11:51:00 -03:00
prlanzarin
67fca54d76 fix(screenshare): fix client crash on presenter change
Scenario: presenter`s client could crash when the presenter changed while they were sharing their screen

That is due to a race condition on the stop procedure in the bridge: two stops can be triggered (one from the server-side websocket tear off and another from the client itself detecting the presenter change)

That could create a scenario where the broker was cleaned in one stop procedure after the second had checked its availability, causing an attribute access of a null member
2021-07-07 19:29:17 +00:00
prlanzarin
e5aec7beab refactor(screenshare): append error message to failure log 2021-07-07 19:29:11 +00:00
Anton Georgiev
6cf863ff3d
Merge pull request #12604 from KDSBrowne/bbb-api-unit-tests
test: Add Unit Tests For Meteor Polls API
2021-07-06 16:56:46 -04:00
Anton Georgiev
b9cc633286 Merge branch 'v2.3.x-release' of github.com:bigbluebutton/bigbluebutton into merge-2.3.5-into-develop 2021-07-06 19:36:19 +00:00
Joao Siebel
2cda889d51 Previne loggedOut property to be undefined. close #12656 2021-07-05 16:04:26 -03:00
Anton Georgiev
0150862eb1
Merge pull request #12705 from mariogasparoni/feat-trickle-ice-mic
feat(audio): use kurento's trickle-ice to improve mic negotiation
2021-07-02 17:44:05 -04:00
Anton Georgiev
0457868e4b
Merge pull request #12703 from jfsiebel/hide-poll-response-for-viewers
fix: Filter poll data for moderator and viewers
2021-07-02 16:06:06 -04:00
Joao Siebel
7e46f31bf8 Remove responses fields from minimongo when the poll is anonymous 2021-07-02 16:58:33 -03:00
Joao Siebel
65ff7bca6c Hide poll responses and number of votes for viewers in minimongo 2021-07-02 16:47:00 -03:00
Anton Georgiev
2d0e31cce4
Merge pull request #12702 from jfsiebel/prevent-add-connection-status-spam
Prevent addConnectionStatus log spam when not authenticated
2021-07-02 15:01:56 -04:00
Anton Georgiev
213e0e4b3b
Merge pull request #12691 from ramonlsouza/reconnect-fix
fix: reconnection crash
2021-07-02 14:17:40 -04:00
Joao Siebel
14abe5c278 Prevent addConnectionStatus log spam 2021-07-02 11:51:01 -03:00
Mario Jr
287c4eb682 feat(audio): use kurento's trickle-ice to improve mic negotiation
Here's what we do when user activates mic:
1 - When we do something similar to listenonly's joining process
until we find a valid candidate-pair. The information about this
local candidate is store.
2 - We then start a new userAgent, and as soon as browser finds
a candidate with the same local ip address, we leave only this
candidate in the SDP and send this to FreeSWITCH. SDP should
contain only a single candidate.
3 - The rest of signaling process is basically the same.
2021-07-01 16:26:44 -03:00
Anton Georgiev
b5851aa152 removeUser: handle connections in frontends, db changes in backend 2021-06-30 20:08:00 +00:00
Ramon Souza
094ecfbbfd fix reconnection crash 2021-06-30 14:50:15 -03:00
Gustavo Trott
0417cbb03f Adds Activity Dashboard initial version and generate activityReportAccessToken 2021-06-30 00:01:46 -03:00
Ramon Souza
efc15d89ae remove unused code 2021-06-23 16:52:52 -03:00
Ramon Souza
ae49d7a9c6 remove layoutManager from meeting collection 2021-06-22 09:48:48 -03:00
Ramon Souza
174f17bcb4 fix log message 2021-06-21 15:16:01 -03:00
Anton Georgiev
0c0eb8a4d5
Merge pull request #12548 from ramonlsouza/layout-meeting-collection
feat: layout manager in meeting collection
2021-06-18 18:03:19 -04:00
Ramon Souza
381207cb5a set legacy as default layout manager 2021-06-18 17:05:29 -03:00
germanocaumo
4f06b1fbf8 feat(poll): add option to disable poll chat message 2021-06-18 14:13:20 +00:00
germanocaumo
1fb9870cf7
Apply suggestions from code review
Code style fixes and remove translations other than en to avoid conflicts with transifex.

Co-authored-by: Pedro Beschorner Marin <pedrobmarin@gmail.com>
2021-06-17 10:25:03 -03:00
KDSBrowne
cf6672b1c9 Add unit tests for poll api modifiers | 2x handlers 2021-06-17 02:20:49 +00:00
germanocaumo
92af5c789b refactor: remove unused imports 2021-06-16 22:53:35 +00:00
germanocaumo
85f77442b7 fix(poll): chat result publish error
The poll is already removed with stopPoll that is called together with pollPublished
2021-06-16 22:31:09 +00:00
germanocaumo
349af23f0a Merge branch 'develop' of https://github.com/bigbluebutton/bigbluebutton into anonymous-polls 2021-06-16 21:54:28 +00:00
Anton Georgiev
5ee5ed1970 Merge branch 'v2.3.x-release' of github.com:bigbluebutton/bigbluebutton into merge-june16 2021-06-16 19:54:28 +00:00
Anton Georgiev
3e5214234b
Merge pull request #12469 from jfsiebel/allow-tags-meeting-user-name
Allow tags in meeting and user name
2021-06-15 10:28:58 -04:00
Pedro Beschorner Marin
068b82b1fa refactor(connection status): remove legacy monitor
Remove parts of a previous connection monitor.

To add some context (as far as my memory goes) to the multiple connection
monitor features the product has, `stats` (currently named `connection status`)
was introduced at the Flash client back in ~2016. @fcecagno and I did it
as a BigBlueButton's Summit activity. Our work was squashed into a single
commit in 92554f8b3e :).

I'm not sure about the whole story behind `network information` (the late
connection monitor added to the HTML5 client) but I assume it should work
as a collector for a bunch of different connectivity monitors. I remember
when it was introduced but I don't know why it wasn't adopted. My best guess
would be because of some performance issues the `user list` had back then.

To follow on why `connection status` replaced `network information` at the
HTML5 client, when I did the `multiple webcams` feature I had to refactor
a big chunk of the `video provider` (#8374). Something that wasn't really
helping there was the adaptation of `stats` that was made to show local
feedback for each webcam connection. Although this feature wasn't being
used anymore, `network information` did rely on that to build up data. With
this monitor gone I assumed it was my responsibility to provide an alternative
so I promoted Mconf's port of the Flash `stats` monitor to BigBlueButton's
HTML5 client (#8579).

Well, that's my perspective on how things went for those features. If
anyone would like to correct me on something or add something else on
that history I would appreciate to know.
2021-06-13 14:02:46 -03:00
Anton Georgiev
1369cb2269
Merge pull request #12505 from gustavotrott/breakoutroom-inscrease-time
Add 'Extend duration' option for breakout rooms
2021-06-11 16:33:15 -04:00
germanocaumo
7bedcb08e5 fix(poll): don't translate user/presenter typed answers
When the answer is not default (Custom or UserResponse), don't translate the answers.
2021-06-11 16:55:53 +00:00
Ramon Souza
da924234d3 store layout manager in meeting collection 2021-06-09 15:30:08 -03:00
Ramon Souza
1ac3767ed4 store layout type in meeting collection 2021-06-09 14:08:11 -03:00
tibroc
13ae19bc3d Use currentPoll instead of state to determine if live results should be rendered
To avoid re-rendering of the poll answers when the poll panel is opened and closed,
this commit uses the currentPoll object to determine wether results should be rendered.
2021-06-07 10:56:14 +02:00
tibroc
828cf60cb2 Add option to hide individual answers in polls
This patch adds a new option to hide the individual answers to the presenter
when starting a poll. This includes hiding the answers for the presenter and
informing the other users that the current poll is anonymous.

See #9524
2021-06-07 10:56:14 +02:00
Pedro Beschorner Marin
72cfc9f86c refactor(external videos): data check
Add missing data check and move the existing ones inside the try-catch
blocks.
2021-06-06 13:13:16 -03:00
Gustavo Trott
a312557461 Adds extend breakout room time functionality 2021-06-02 15:29:40 -03:00
Pedro Beschorner Marin
4a5b92445a refactor(external videos): system stop
Move all external video's system stop control events to akka-apps:
- on presenter change
- on presenter leave
- on screenshare start
2021-06-02 15:06:17 -03:00
Pedro Beschorner Marin
6c84a3295b refactor(external videos): frontend permissions
Revoked extra frontend permission checks and removed dependency from
external video stop Meteor's system call.
2021-06-02 13:03:04 -03:00
Arthur B. Grossi
e606df6031 feat(external video): permission check
Checks permission of start, stop and update external video messages
and only broadcast it if the sender is presenter (unless it's system
messages).
2021-06-02 12:54:37 -03:00
Max Franke
7f926edfcc refactor(external videos): add own collection
Refactor the external videos collection, moving the logic and functionalities
outside of /imports/api/meetings to a new location in /external-videos/server/modifiers
in order to decrease the coupling between the functionalities, favoring
the maintenance.
2021-06-02 12:50:40 -03:00
Anton Georgiev
8868e84e9f
Merge pull request #12395 from gustavotrott/end-when-no-moderator
Implements endWhenNoModerator
2021-05-31 10:59:55 -04:00
Joao Siebel
f16700a8c4 Allow tags in meeting and user name. close #10221 close #12370 2021-05-31 09:59:15 -03:00
germanocaumo
4d347be53b refactor: use questionText instead of title for poll question 2021-05-27 21:04:15 +00:00
Pedro Beschorner Marin
b3c698a2a9
Merge pull request #12422 from germanocaumo/poll-chat-refactor
refactor: redo how poll result chat message is done
2021-05-26 14:49:19 -03:00
Ramon Souza
5d6c9cbb18 removing unused imports/exports 2021-05-21 09:50:31 -03:00
germanocaumo
3a9e9c1358 refactor: redo how poll result chat message is done +
Fix prolems with ":" char in answers.
Respect poll question formatting (lineBreaks/spaces) in other fields of UI
2021-05-20 14:53:52 +00:00
Ramon Souza
9592ca44fe remove useless conditionals in validateAutoToken handler 2021-05-19 09:22:30 -03:00
Gustavo Trott
00240c925e Implements endWhenNoModerator 2021-05-17 17:52:59 -03:00
Pedro Beschorner Marin
e4a98f3680 fix(closed captions): fetch padId on dictation update
BigBlueButton v2.3 uses an instance prefix while generating padIds. Closed
captions was missing this information when updating pad's content for dictation
mode.
2021-05-16 10:45:17 -03:00
Pedro Beschorner Marin
d65c19c60b fix(closed captions): avoid meetingId from credentials
This interaction occurs between Etherpad and Meteor.
2021-05-16 10:08:24 -03:00
Anton Georgiev
1bc324b657
Merge pull request #12353 from germanocaumo/poll-record-improvs
Recorded polling events improvements
2021-05-13 13:43:36 -04:00
germanocaumo
ca2ad30e12 fix(record): add missing info to polling events
Add PollPublishedRecordEvent with all infos (also fix duplicated handlePollStoppedEvtMsg)
Add answer text to UserRespondedToPollRecordEvent (useful for custom answers)
Add type in PollStartedRecordEvent
2021-05-11 18:37:23 +00:00
Joao Siebel
79c9cd33f2 Merge remote-tracking branch 'upstream/develop' into add-try-catch-on-methods 2021-05-10 12:03:58 -03:00
Anton Georgiev
5e11fb314b
Merge pull request #12256 from Tainan404/filter-bymeetingId
Add filter by meetingId in server queries
2021-05-07 10:36:20 -04:00
Ramon Souza
93d41f3f91 remove unused variables 2021-05-07 08:54:01 -03:00
Joao Siebel
3eea7db9a1 Add try/catch on whiteboard-multi-user methods 2021-05-05 15:53:13 -03:00
Joao Siebel
2e7731ab59 Add try/catch on voice-users methods 2021-05-05 15:05:59 -03:00
Joao Siebel
a8c989645f Add try/catch on video-streams methods 2021-05-05 14:52:50 -03:00
Joao Siebel
bebe218a43 Add try/catch on users-settings methods 2021-05-05 14:22:12 -03:00
Joao Siebel
0643df68cd Add try/catch on users-infos methods 2021-05-05 13:53:28 -03:00
Joao Siebel
519872cf97 Add try/catch on users methods 2021-05-05 13:47:43 -03:00
Joao Siebel
c60ff23c67 Add try/catch on slides methods 2021-05-05 13:17:26 -03:00
Joao Siebel
9f39e119fd Add try/catch on presentations methods 2021-05-05 11:34:36 -03:00
Joao Siebel
e7647ec4ae Add try/catch on presentation-upload-token methods 2021-05-05 11:25:13 -03:00
Joao Siebel
b80a9b177b Add try/catch on polls methods 2021-05-05 11:12:36 -03:00
Joao Siebel
84e1656bce Add try/catch on note methods 2021-05-05 10:41:56 -03:00
Joao Siebel
ed4018149b Add try/catch on meetings methods 2021-05-05 09:58:17 -03:00
Joao Siebel
434408c28c Add try/catch on local-settings methods 2021-05-05 09:27:56 -03:00
Joao Siebel
1f9d6735a0 Add try/catch on guest-users methods 2021-05-05 09:26:21 -03:00
Joao Siebel
169e5abe10 Add try/catch on group-chat-msg methods 2021-05-05 09:13:48 -03:00
Joao Siebel
e352b0913e Add try/catch on group-chat methods 2021-05-04 16:52:05 -03:00
Joao Siebel
ba9c9a8682 Add try/catch on external-videos methods 2021-05-04 16:33:29 -03:00
prlanzarin
d27badcf53 fix(video): annotate ALL streams from an user on floor updates 2021-05-04 18:24:19 +00:00
Joao Siebel
aa0831f9ad Add try/catch on connection-status methods 2021-05-04 15:01:09 -03:00
Joao Siebel
a42d4a9f5d Add try/catch on captions methods 2021-05-04 14:34:31 -03:00
Joao Siebel
8bd9d056f2 Add try/catch on breakouts methods 2021-05-04 13:25:02 -03:00
Joao Siebel
2b21a75007 Add try/catch on annotations methods 2021-05-04 11:38:56 -03:00
Tainan Felipe
20d934a953 Add filter by meetingId in server queries 2021-05-03 09:49:33 -03:00