Remote participant microphone controls (mute / unmute)

When I started the JIcofo then below error coming , I have installed JIcofo from your repository
● jicofo.service - LSB: Jitsi conference Focus
Loaded: loaded (/etc/init.d/jicofo; generated)
Active: failed (Result: exit-code) since Wed 2020-10-07 12:47:18 UTC; 21s ago
Docs: man:systemd-sysv-generator(8)
Process: 23109 ExecStop=/etc/init.d/jicofo stop (code=exited, status=1/FAILURE)
Process: 11961 ExecStart=/etc/init.d/jicofo start (code=exited, status=1/FAILURE)
Tasks: 273 (limit: 4915)
CGroup: /system.slice/jicofo.service
└─21721 java -Xmx3072m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp -Dnet.java.sip.communicator.SC_HOME_DIR_LOCATION=/etc/jitsi -Dnet.java.sip.communicator.SC_HOME_DIR_NAME=jicofo -Dne

Oct 07 12:47:18 ip-172-31-47-13 systemd[1]: Starting LSB: Jitsi conference Focus…
Oct 07 12:47:18 ip-172-31-47-13 jicofo[11961]: Daemon not executable: /usr/share/jicofo/jicofo.sh
Oct 07 12:47:18 ip-172-31-47-13 systemd[1]: jicofo.service: Control process exited, code=exited status=1
Oct 07 12:47:18 ip-172-31-47-13 systemd[1]: jicofo.service: Failed with result ‘exit-code’.
Oct 07 12:47:18 ip-172-31-47-13 systemd[1]: Failed to start LSB: Jitsi conference Focus.

Hello sir, still I am getting the below error message

Logger.js:154 2020-10-07T13:04:44.590Z [JitsiMeetJS.js] <Object.getGlobalOnErrorHandler>: UnhandledError: null Script: null Line: null Column: null StackTrace: TypeError: t.unMuteParticipant is not a function
at middleware.js:116
at middleware.js:21
at middleware.js:60
at middleware.js:43
at middleware.js:49
at middleware.js:28
at middleware.js:12
at middleware.js:42
at middleware.js:31
at middleware.js:104
at middleware.js:106
at middleware.js:19
at middleware.js:29
at middleware.js:101
at middleware.js:24
at middleware.js:20
at middleware.js:15
at middleware.js:23
at middleware.js:20
at middleware.js:25
at middleware.js:74
at middleware.js:40
at middleware.js:158
at dispatch (redux.js:636)
at actions.js:68
at index.js:11
at middleware.js:29
at middleware.js:32
at middleware.js:24
at middleware.web.js:33
at middleware.any.js:22
at middleware.js:67
at middleware.js:43
at middleware.js:61
at middleware.js:78
at middleware.js:71
at middleware.js:77
at middleware.js:39
at middleware.js:106
at middleware.js:37
at middleware.js:31
at middleware.web.js:24
at middleware.any.js:93
at middleware.js:77
at middleware.web.js:21
at middleware.js:44
at middleware.js:25
at middleware.js:16
at middleware.js:21
at middleware.js:23
at middleware.js:21
at middleware.js:111
at middleware.js:16
at middleware.js:30
at middleware.js:33
at middleware.js:178
at middleware.js:24
at middleware.js:24
at middleware.js:24
at middleware.web.js:20
at middleware.js:42
at middleware.js:149
at middleware.js:21
at middleware.js:60
at middleware.js:43
at middleware.js:49
at middleware.js:28
at middleware.js:12
at middleware.js:42
at middleware.js:31
at middleware.js:104
at middleware.js:106
at middleware.js:19
at middleware.js:29
at middleware.js:101
at middleware.js:24
at middleware.js:20
at middleware.js:15
at middleware.js:23
at middleware.js:20
at middleware.js:25
at middleware.js:74
at middleware.js:40
at middleware.js:158
at Object._onSubmit (AbstractUnMuteRemoteParticipantDialog.js:60)
at Object._onSubmit (AbstractDialog.js:117)
at To._onSubmit (StatelessDialog.js:227)
at withAnalyticsEvents.js:77
at Object.f (react-dom.production.min.js:15)
at _ (react-dom.production.min.js:15)
at react-dom.production.min.js:16
at j (react-dom.production.min.js:16)
at A (react-dom.production.min.js:17)
at C (react-dom.production.min.js:17)
at D (react-dom.production.min.js:17)
at Nn (react-dom.production.min.js:85)
at Rn (react-dom.production.min.js:87)
at t.unstable_runWithPriority (scheduler.production.min.js:20)
at pa (react-dom.production.min.js:113)
at bs (react-dom.production.min.js:207)
at zn (react-dom.production.min.js:86)
o @ Logger.js:154
getGlobalOnErrorHandler @ JitsiMeetJS.js:611
window.onunhandledrejection @ middleware.js:118
middleware.js:116 Uncaught (in promise) TypeError: t.unMuteParticipant is not a function
at middleware.js:116
at middleware.js:21
at middleware.js:60
at middleware.js:43
at middleware.js:49
at middleware.js:28
at middleware.js:12
at middleware.js:42
at middleware.js:31
at middleware.js:104
at middleware.js:106
at middleware.js:19
at middleware.js:29
at middleware.js:101
at middleware.js:24
at middleware.js:20
at middleware.js:15
at middleware.js:23
at middleware.js:20
at middleware.js:25
at middleware.js:74
at middleware.js:40
at middleware.js:158
at dispatch (redux.js:636)
at actions.js:68
at index.js:11
at middleware.js:29
at middleware.js:32
at middleware.js:24
at middleware.web.js:33
at middleware.any.js:22
at middleware.js:67
at middleware.js:43
at middleware.js:61
at middleware.js:78
at middleware.js:71
at middleware.js:77
at middleware.js:39
at middleware.js:106
at middleware.js:37
at middleware.js:31
at middleware.web.js:24
at middleware.any.js:93
at middleware.js:77
at middleware.web.js:21
at middleware.js:44
at middleware.js:25
at middleware.js:16
at middleware.js:21
at middleware.js:23
at middleware.js:21
at middleware.js:111
at middleware.js:16
at middleware.js:30
at middleware.js:33
at middleware.js:178
at middleware.js:24
at middleware.js:24
at middleware.js:24
at middleware.web.js:20
at middleware.js:42
at middleware.js:149
at middleware.js:21
at middleware.js:60
at middleware.js:43
at middleware.js:49
at middleware.js:28
at middleware.js:12
at middleware.js:42
at middleware.js:31
at middleware.js:104
at middleware.js:106
at middleware.js:19
at middleware.js:29
at middleware.js:101
at middleware.js:24
at middleware.js:20
at middleware.js:15
at middleware.js:23
at middleware.js:20
at middleware.js:25
at middleware.js:74
at middleware.js:40
at middleware.js:158
at Object._onSubmit (AbstractUnMuteRemoteParticipantDialog.js:60)
at Object._onSubmit (AbstractDialog.js:117)
at To._onSubmit (StatelessDialog.js:227)
at withAnalyticsEvents.js:77
at Object.f (react-dom.production.min.js:15)
at _ (react-dom.production.min.js:15)
at react-dom.production.min.js:16
at j (react-dom.production.min.js:16)
at A (react-dom.production.min.js:17)
at C (react-dom.production.min.js:17)
at D (react-dom.production.min.js:17)
at Nn (react-dom.production.min.js:85)
at Rn (react-dom.production.min.js:87)
at t.unstable_runWithPriority (scheduler.production.min.js:20)
at pa (react-dom.production.min.js:113)
at bs (react-dom.production.min.js:207)
at zn (react-dom.production.min.js:86)
(anonymous) @ middleware.js:116
(anonymous) @ middleware.js:21
(anonymous) @ middleware.js:60
(anonymous) @ middleware.js:43
(anonymous) @ middleware.js:49
(anonymous) @ middleware.js:28
(anonymous) @ middleware.js:12
(anonymous) @ middleware.js:42
(anonymous) @ middleware.js:31
(anonymous) @ middleware.js:104
(anonymous) @ middleware.js:106
(anonymous) @ middleware.js:19
(anonymous) @ middleware.js:29
(anonymous) @ middleware.js:101
(anonymous) @ middleware.js:24
(anonymous) @ middleware.js:20
(anonymous) @ middleware.js:15
(anonymous) @ middleware.js:23
(anonymous) @ middleware.js:20
(anonymous) @ middleware.js:25
(anonymous) @ middleware.js:74
(anonymous) @ middleware.js:40
(anonymous) @ middleware.js:158
dispatch @ redux.js:636
(anonymous) @ actions.js:68
(anonymous) @ index.js:11
(anonymous) @ middleware.js:29
(anonymous) @ middleware.js:32
(anonymous) @ middleware.js:24
(anonymous) @ middleware.web.js:33
(anonymous) @ middleware.any.js:22
(anonymous) @ middleware.js:67
(anonymous) @ middleware.js:43
(anonymous) @ middleware.js:61
(anonymous) @ middleware.js:78
(anonymous) @ middleware.js:71
(anonymous) @ middleware.js:77
(anonymous) @ middleware.js:39
(anonymous) @ middleware.js:106
(anonymous) @ middleware.js:37
(anonymous) @ middleware.js:31
(anonymous) @ middleware.web.js:24
(anonymous) @ middleware.any.js:93
(anonymous) @ middleware.js:77
(anonymous) @ middleware.web.js:21
(anonymous) @ middleware.js:44
(anonymous) @ middleware.js:25
(anonymous) @ middleware.js:16
(anonymous) @ middleware.js:21
(anonymous) @ middleware.js:23
(anonymous) @ middleware.js:21
(anonymous) @ middleware.js:111
(anonymous) @ middleware.js:16
(anonymous) @ middleware.js:30
(anonymous) @ middleware.js:33
(anonymous) @ middleware.js:178
(anonymous) @ middleware.js:24
(anonymous) @ middleware.js:24
(anonymous) @ middleware.js:24
(anonymous) @ middleware.web.js:20
(anonymous) @ middleware.js:42
(anonymous) @ middleware.js:149
(anonymous) @ middleware.js:21
(anonymous) @ middleware.js:60
(anonymous) @ middleware.js:43
(anonymous) @ middleware.js:49
(anonymous) @ middleware.js:28
(anonymous) @ middleware.js:12
(anonymous) @ middleware.js:42
(anonymous) @ middleware.js:31
(anonymous) @ middleware.js:104
(anonymous) @ middleware.js:106
(anonymous) @ middleware.js:19
(anonymous) @ middleware.js:29
(anonymous) @ middleware.js:101
(anonymous) @ middleware.js:24
(anonymous) @ middleware.js:20
(anonymous) @ middleware.js:15
(anonymous) @ middleware.js:23
(anonymous) @ middleware.js:20
(anonymous) @ middleware.js:25
(anonymous) @ middleware.js:74
(anonymous) @ middleware.js:40
(anonymous) @ middleware.js:158
_onSubmit @ AbstractUnMuteRemoteParticipantDialog.js:60
_onSubmit @ AbstractDialog.js:117
_onSubmit @ StatelessDialog.js:227
(anonymous) @ withAnalyticsEvents.js:77
f @ react-dom.production.min.js:15
_ @ react-dom.production.min.js:15
(anonymous) @ react-dom.production.min.js:16
j @ react-dom.production.min.js:16
A @ react-dom.production.min.js:17
C @ react-dom.production.min.js:17
D @ react-dom.production.min.js:17
Nn @ react-dom.production.min.js:85
Rn @ react-dom.production.min.js:87
t.unstable_runWithPriority @ scheduler.production.min.js:20
pa @ react-dom.production.min.js:113
bs @ react-dom.production.min.js:207
zn @ react-dom.production.min.js:86
Show 71 more frames

Are you working on ubuntu? A similar error mentioned before. You’ll continue to get the other error unless you go through this step correctly.

Uninstall the system by following the removal instructions. Then I’ll recommend you try to install again

When I run below command then
npm install lib-jitsi-meet --force && make

output

npm ERR! code ENOENT
npm ERR! syscall rename
npm ERR! path /usr/share/jitsi-meet/node_modules/.staging/lib-jitsi-meet-fd276b15/node_modules/@babel/code-frame
npm ERR! dest /usr/share/jitsi-meet/node_modules/.staging/@babel/code-frame-69b5c1bf
npm ERR! errno -2
npm ERR! enoent ENOENT: no such file or directory, rename '/usr/share/jitsi-meet/node_modules/.staging/lib-jitsi-meet-fd276b15/node_modules/@babel/code-frame' -> '/usr/share/jitsi-meet/node_modules/.staging/@babel/code-frame-69b5c1bf'
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent 

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/ubuntu/.npm/_logs/2020-10-07T13_10_32_735Z-debug.log

hi thanks for sharing you mod bayraktarulku.I am trying to install it but anytime i get
this error even running your script.I have tried on a ubuntu 20.04 with a working jisti meet setup.i have tried anything even remove and reinstall jitsi and still nothing.
Any suggestions?

  • lib-jitsi-meet@0.0.0
    added 1 package from 1 contributor and updated 1 package in 26.876s

47 packages are looking for funding
run npm fund for details

./node_modules/.bin/webpack -p
make: ./node_modules/.bin/webpack: Command not found
make: *** [Makefile:19: compile] Error 127

Yes, there is a problem with the version of the webpack package.

You can overcome this in 2 different ways;

  • webpack uninstall && install
cd lib-jitsi-meet
rm -rf node_modules package-lock.json
# webpack
npm uninstall webpack
npm i -D webpack
npm update && npm install
cd ..
cd jitsi-meet/
npm update && npm install
npm install lib-jitsi-meet --force && make

Or

  • Changing the versions of the package.json webpack version to 4.
    (of course this is not a very good way)

Thank you very much for your quick answear well i think now its better but stuck in cp
node_modules/lib-jitsi-meet//lib-jitsi-meet.min.js
node_modules/lib-jitsi-meet//lib-jitsi-meet.min.map
node_modules/lib-jitsi-meet//connection_optimization/external_connect.js
node_modules/lib-jitsi-meet//modules/browser/capabilities.json
libs
cp: cannot stat ‘node_modules/lib-jitsi-meet//lib-jitsi-meet.min.js’: No such file or directory
cp: cannot stat ‘node_modules/lib-jitsi-meet//lib-jitsi-meet.min.map’: No such file or directory
make: *** [Makefile:59: deploy-lib-jitsi-meet] Error 1

Do you thing to remove all and reinstall jitsi and do all over again?

I haven’t tested it on Ubuntu. Can you examine this resource?

Thank you sir, Please tell me one thing do I need to make some changes in native code also,
because now If participants join from the WEB then Host can be able to Unmute participant but if participant join the meeting from Mobile then Unmute functionality is not working please give me some suggestion sir

Sorry, I can’t comment on this. We haven’t developed for mobile yet.

bayraktarulku what linux distribution you are using for your development of this modification?i cant finish it on ubuntu 20.04.1 server so i will try some more compatible linux distribution

We’re using the Debian Buster (Debian 10).
You can use this setup sheet;

1 Like

You could take some idea from VideoMeet mobile app - I am now using this in my classrooms to mute / unmute students.

1 Like

can you please share some link regarding this

VideoMeet.in website will give you Free access or through videomeet mobile app. This was posted as desired by members. if you still feel spam… please delete it.

@bayraktarulku thank you for providing us this solution, I have follow your git instructions, there was no any problem in compiling jicofo, jitsi-meet, lib-jitsi-meet

1st I compile jicofo and replace with original jicofo’s .jar files and build files of jitsi-meet then I got black screen form remote participants in moderator & there is no any 3 dots option icon! but moderator video screen is there in the participant’s computer & three dot is also present (so participant can send private message to other users) due to this reason I replaced the new jitsi with original one then everything gets back to normal so .it’s problem with jitsi frontend,

I tried one more time and this time also clone jitsi-meet & lib-jitsi-meet and follows your instruction and made modification this time after building jitsi-meet, libs folder was replaced with my new build’s libs folder and then I have also build lib-jitis-meet and produced lib-jitsi-meet.min.js, lib-jitsi-meet.min.map & lib-jitsi-meet.e2ee-worker.js that I also add in libs folder, now after doing this, tried in incognito, nothing happed. same problem that moderator can’t receive other participant camera & can’t see the dot option icon to mute someone.
& I also can’t able to click on remote participant video from tile view as moderator.

I have reboot the server & I’m using JWT authentication.

I have tried your bash script and your repo but both give errors, and we want to use latest jitsi along with your patch & your guide is very good but at the end it’s not giving expected result.
@emrah
please help me

thank you.

@pratik thanks for your return .

We will test our repository with the latest version and get back to you.

Probably same problem here after build with success from your repositories bayraktarulku with mute unmute script i can enter and create room but when another user join the room both are disconnecting.

Yes similar problem. While testing, I encountered a problem while compiling the jicofo file in the repository. The problem is due to this.
I’ll update the repository again over the weekend.

You can try again with this method.

cd jicofo
mvn package -DskipTests -Dassembly.skipAssembly=false
mvn install
unzip target/jicofo-1.1-SNAPSHOT-archive.zip
cp jicofo-1.1-SNAPSHOT/jicofo.jar /usr/share/jicofo/
/etc/init.d/jicofo restart && /etc/init.d/jitsi-videobridge2 restart && /etc/init.d/prosody restart
cd ../

@bayraktarulku thank you the quick respond, I’m using
openjdk version “1.8.0_275”
OpenJDK Runtime Environment (build 1.8.0_275-8u275-b01-0ubuntu1~18.04-b01)
OpenJDK 64-Bit Server VM (build 25.275-b01, mixed mode)

  1. tries to compile Jicofo from official Jicofo repo. it’s works without error
    but when I follow same things as you said for jitsi frontend in official repo then I got blank screen in moderator form participants box & no three dots button.

  2. and when I have used your jicofo + your jitsi then UI is perfect but mute button is not working and unmute button is not working.

  3. official jicofo + your suggested modification in jicofo and new compilation instructions + your jitsi = UI is there as per the expectation, moderator can see participants video, moderator can mute someone but moderator can’t unmute someone after clicking unmute button.