Commit Graph

196 Commits

Author SHA1 Message Date
Mario Jr
ca6b020f82 fix(audio): prevent dial-in waiting / guest users to speak/listen to the room
Based on the strategy proposed by @schrd in #15163
Also thanks to @jacotec and @maximilianhoecker for the help on investigating

Closes #15163
2022-07-14 13:56:17 -03:00
Anton Georgiev
8a6c5628bd
fix: set target to jvm-1.11 in akka-bbb-fsesl 2022-05-20 13:09:33 -04:00
Anton Georgiev
13bed65baf chore: drop obsolete Dockerfile from BBB 2022-04-12 20:34:28 +00:00
Anton Georgiev
7501c2788a Merge branch 'java11-2' of github.com:zhem0004/bigbluebutton into java11-2 2022-03-16 18:04:06 +00:00
Bohdan Zhemelinskyi
c76ab27d8e update for fsesl 2022-03-16 17:46:18 +00:00
Pedro Beschorner Marin
6d80a413cf refactor(screenshare): FreeSWITCH partial removal
Remove part of the old FreeSWITCH dependent WebRTC screenshare feature.
2022-02-23 13:03:51 -03:00
Himanshu Goyal
905b650b3d removing obselete resolvers 2022-02-15 14:57:24 +00:00
root
9dbb5a0406 changing java arguments to 11 2022-02-11 09:58:55 +00:00
root
dfba414ff5 upgrading dependencies for akka-bbb-fsesl 2021-12-04 17:56:09 +00:00
root
8c04fbfa8f updating akka-bbb-fsesl 2021-11-29 16:40:52 +00:00
Anton Georgiev
3ebb2cf46d
Merge pull request #12004 from prlanzarin/u23-isitcoldinthewater
video: voice activity video sorting
2021-04-20 09:47:43 -04:00
znerol
4d3abf6857 Remove spurious FreeSWITCH config from akka-bbb-fsesl 2021-04-15 20:25:16 +02:00
prlanzarin
172e31b78e Rework of the floor event
Now it`s called AudioFloorChanged* to properly reflect its role

Add fields to carry the floor state (boolean) along with the uID and vID to be able to send events for a floor takeover and a floor surrender
2021-04-12 18:25:58 +00:00
Marcel Waldvogel
9140613a96 Services run as starting PID
The starting scripts now `exec` the main service instead of starting
it as a subprocess. Also in line with docker-entrypoint recommendations.
2021-04-05 12:24:29 +02:00
prlanzarin
7eb91f9273 Merge branch 'u22-screenshare18102020' of https://github.com/prlanzarin/bigbluebutton-1 into u23-ilgiardino 2021-03-11 18:49:14 +00:00
Brent Baccala
60734e0f65 on installation of akka-bbb-fsesl, update ESL password in /etc/bigbluebutton, where we're starting to
put the configuration stuff, instead of /usr/share/bbb-fsesl-akka/conf/application.conf
2021-03-10 01:13:31 -05:00
Brent Baccala
7b16f03135 packaging from akka-bbb-fsesl: copy FreeSWITCH password from
FreeSWITCH configuration file (event_socket.conf.xml) and add
FreeSWITCH as a package dependency to make sure that it gets
configured first
2021-03-10 01:13:11 -05:00
Anton Georgiev
b8eaf47263
Merge pull request #11454 from schrd/akka-config
Akka config
2021-02-23 08:44:00 -05:00
Daniel Schreiber
d53a5f52a5 let bbb-apps-akka read an override config file from /etc/bigbluebutton
This change introduces a config file
`/etc/bigbluebutton/bbb-fsesl-akka.conf` which reads the default config
from packages and allows operators to keep their own config file changes
across package upgrades.

bbb-conf is adjusted to deal with this change.
2021-02-23 12:55:48 +01:00
Anton Georgiev
55e8de4357 Merge branch 'v2.2.x-release' of github.com:bigbluebutton/bigbluebutton into feb18-merge 2021-02-18 20:33:19 +00:00
prlanzarin
3c0493a295 akka-fsesl: handle dial in/out users uIDs in GetUsersStatusToVoiceConfSysMsg responses
The lack of handling to check whether the user was a dial-in user when answering akka-apps periodic member probes was making it use an arbitrary default (callerName) as the userId, explicitly violating the convention that dial-in/outs should have v_memberId userIds

That would botch whichever added janitorial tasks that operated upon akka-apps GetUsersStatusToVoiceConfSysMsg probes
2021-02-12 17:16:36 -03:00
Daniel Schreiber
b6777ed9cb Customize Systemd unit files
Currently there is a mechanism in bbb-config which adds overlay units.
This is not neccesary because sbt allows you to specify your own unit
files.
2021-02-11 11:16:55 +01:00
germanocaumo
83fe68db08 Play screenshare audio when present 2020-12-08 20:30:22 +00:00
Richard Alam
e968780e53 - comment out printlns 2020-04-24 09:37:25 -07:00
Richard Alam
79096d0c55 Increase voice conf length
We need to increase the length of the voice conference. If we have lots of meetings running,
 there is a high chance of collision.

 Need corresponding changes to FreeSWITCH dialplan.

 In bbb_echo_test.xml, change to `expression="^echo(\d{5,11})$"`.

 In bbb_conference.xml, change to `expression="^(\d{5,11})$"`.
2020-04-24 09:22:46 -07:00
Anton Georgiev
1299abdf2c Revert "Merge pull request #8782 from ritzalam/generate-meeting-data"
This reverts commit 37ed2c7501, reversing
changes made to 5af41dabb4.
2020-03-25 16:13:01 -04:00
Richard Alam
3cddd8a1c5 - dump out some meeting stats data into the log 2020-03-14 11:54:45 -07:00
Ghazi Triki
64d08d69c7 Updated java projects dependencies versions. 2020-02-28 10:44:28 +01:00
Richard Alam
3c44827895 - fix typo
- clean up
 - bind to port 8900
2020-02-13 14:30:06 -08:00
Richard Alam
0d96ec7563 - fix type
- bind only to localhost
2020-02-13 14:14:23 -08:00
Richard Alam
5f5fe9436d - cleanup 2020-02-13 13:38:41 -08:00
Richard Alam
1966be769e Add /healthz and /status endpoint
The /healthz returns information is we are able to send and receive message to/from freeswitch.
 The /status returns information about freeswitch version and uptime.
2020-02-13 11:41:49 -08:00
Richard Alam
28fec8e617 - display json reponse properly 2020-02-11 12:10:45 -08:00
Richard Alam
dcd70d38ef - catch exception to not kill connect thread 2020-02-11 12:02:24 -08:00
Richard Alam
793c627610 - handle ask response from actor 2020-02-08 13:41:40 -08:00
Richard Alam
0340b3c4d5 - add response to health check 2020-02-08 13:25:59 -08:00
Richard Alam
5fc079464d - try to setup actor context 2020-02-07 15:19:10 -08:00
Richard Alam
f5567ae971 - add health service 2020-02-07 15:01:37 -08:00
Richard Alam
52dbe43c2a - add http interface 2020-02-07 13:23:29 -08:00
Richard Alam
1e5f4a19ce - handle heartbeat events 2020-02-06 14:23:39 -08:00
Richard Alam
bf80c1071c - parse userid properly 2020-02-06 09:49:05 -08:00
Richard Alam
7911d2b874 - client session wasn't set properly 2020-02-06 07:36:42 -08:00
Richard Alam
5af6374265 Track call session state
Currently, we user DTMF to inform the client when the call session is in echo test and when entering the voice conference.
 Unfortunately, sometimes when FS sends the DTMF, FS crashes.

 Monitor the progress of the call session using ESL events and propagate to the client.

 The client would be informed of these call states: CALL_STARTED, IN_ECHO_TEST, IN_CONFERENCE, CALL_ENDED.
2020-02-05 14:58:47 -08:00
Richard Alam
4c5f1c660c Add timeout waiting for response from FreeSWITCH when sending ESL command
- When waiting for a response from FS after sending an ESL command and the ESL connection disconnects,
   the sending thread will be blocked as the trigger for it to unblock is the response from FS which never
   comes.

   Add a 30 second timesout waiting for response and give up to go send a new FS ESL command.
2020-02-04 10:00:20 -08:00
Richard Alam
a29bbb250f Track client's webrtc call session
- We want to be able to correlate client webrtc calls with freeswitch logs. We add extra info
   on callerid which we strip out in akka-fsesl.
2019-11-13 08:49:06 -08:00
Richard Alam
9dd44ad84b - filter our global audio users 2019-10-21 15:08:51 -07:00
Richard Alam
0261a5e2b8 - send users and recordings in one message 2019-10-21 14:29:52 -07:00
Richard Alam
1e7557562f Sync FS user status
- poll FreeSWITCH for status of user so that akka-apps would be in sync with FreeSWITCH
2019-10-21 11:01:58 -07:00
Richard Alam
3395cdbdc0 Make sure we record audio if meeting is recorded
- We had an issue where FreeSWITCH, for some unknow reason, stopped recording the voice conference
   in the middle of the meeting while there are users in the voice conference. We've relied on the
   voice conf started event to trigger recording of wav files. This event is sent when the first user
   joins the voice conference. In this case, there was no voice user joined after the recording stopped
   as there were already users in the voice conference. TO make sure that the audio is recorded, akka-apps
   will send a "check if voice conf is running and recording" message to FreeSWITCH every 30sec. If akka-apps
   receives a "running=true recording=false" response from FreeSWITCH, akka-apps will send a start recording
   msg to FreeSWITCH.
2019-10-17 11:50:12 -07:00
Richard Alam
aa22c629cb Eject users by force from FreeSWITCH
- when meeting ends, we try to eject all users by force from freeswitch to make sure
   that recording ends. However, we are not actually sending the command to freeswitch.
   This change sends the command so that users can be kicked out.
2019-10-10 11:38:27 -07:00