Not able to enable transcriptions

Hello, guys!

I have some shards running with the latest stable release. The conferences are going great, but I’m facing some issues trying to enable transcriptions using Google.

I’ve added this to the .env file:

JIGASI_XMPP_USER=jigasi
JIGASI_BREWERY_MUC=jigasibrewery
JIGASI_PORT_MIN=20000
JIGASI_PORT_MAX=20050
ENABLE_TRANSCRIPTIONS=1
GC_PROJECT_ID=xxxxxxxxx
GC_PRIVATE_KEY_ID=xxxxxxxxx
GC_PRIVATE_KEY=xxxxxxxxx
GC_CLIENT_EMAIL=xxxxxxxxx
GC_CLIENT_ID=xxxxxxxxx
GC_CLIENT_CERT_URL=xxxxxxxxx

Also set DISABLE_TRANSCRIPTION_SUBTITLES: false on interfaceConfig.js, transcribingEnabled: true on config.js and added closedcaptions on toolbarButtons.

The CC is displayed, but when it’s clicked, nothing happens, nothing is showed in the console. But some errors appear on jicofo and jigasi logs.

Jigasi logs:

Jigasi 2021-12-14 21:32:25.502 SEVERE: [11] impl.configuration.ConfigurationActivator.log() Error creating c lib instance for fixing file permissions
jigasi_1   | java.nio.file.FileSystemException: /config: Operation not permitted
jigasi_1   | 	at sun.nio.fs.UnixException.translateToIOException(UnixException.java:91)
jigasi_1   | 	at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
jigasi_1   | 	at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
jigasi_1   | 	at sun.nio.fs.UnixFileAttributeViews$Posix.setMode(UnixFileAttributeViews.java:238)
jigasi_1   | 	at sun.nio.fs.UnixFileAttributeViews$Posix.setPermissions(UnixFileAttributeViews.java:260)
jigasi_1   | 	at java.nio.file.Files.setPosixFilePermissions(Files.java:2045)
jigasi_1   | 	at net.java.sip.communicator.impl.configuration.ConfigurationActivator.fixPermissions(ConfigurationActivator.java:167)
jigasi_1   | 	at net.java.sip.communicator.impl.configuration.ConfigurationActivator.start(ConfigurationActivator.java:88)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.BundleImpl.start(BundleImpl.java:307)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.launch.FrameworkImpl.startLevelChanged(FrameworkImpl.java:472)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.startlevel.FrameworkStartLevelImpl$Command.run(FrameworkStartLevelImpl.java:137)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.AsyncExecutor.runInThread(AsyncExecutor.java:122)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.AsyncExecutor.access$000(AsyncExecutor.java:28)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.AsyncExecutor$1.run(AsyncExecutor.java:231)

jigasi_1   | java.lang.IllegalArgumentException: Illegal character in path at index 0: "0"
jigasi_1   | 	at java.net.URI.create(URI.java:852)
jigasi_1   | 	at io.sentry.dsn.Dsn.<init>(Dsn.java:41)
jigasi_1   | 	at io.sentry.SentryClientFactory.instantiateFrom(SentryClientFactory.java:114)
jigasi_1   | 	at io.sentry.SentryOptions.<init>(SentryOptions.java:44)
jigasi_1   | 	at io.sentry.SentryOptions.from(SentryOptions.java:89)
jigasi_1   | 	at io.sentry.SentryOptions.defaults(SentryOptions.java:116)
jigasi_1   | 	at io.sentry.SentryOptions.defaults(SentryOptions.java:100)
jigasi_1   | 	at io.sentry.Sentry.getStoredClient(Sentry.java:168)
jigasi_1   | 	at io.sentry.Sentry.capture(Sentry.java:256)
jigasi_1   | 	at io.sentry.jul.SentryHandler.publish(SentryHandler.java:105)
jigasi_1   | 	at java.util.logging.Logger.log(Logger.java:738)
jigasi_1   | 	at java.util.logging.Logger.doLog(Logger.java:765)
jigasi_1   | 	at java.util.logging.Logger.log(Logger.java:876)
jigasi_1   | 	at org.jitsi.utils.logging.LoggerImpl.log(LoggerImpl.java:99)
jigasi_1   | 	at org.jitsi.utils.logging.Logger.error(Logger.java:258)
jigasi_1   | 	at net.java.sip.communicator.impl.configuration.ConfigurationActivator.fixPermissions(ConfigurationActivator.java:188)
jigasi_1   | 	at net.java.sip.communicator.impl.configuration.ConfigurationActivator.start(ConfigurationActivator.java:88)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.BundleImpl.start(BundleImpl.java:307)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.launch.FrameworkImpl.startLevelChanged(FrameworkImpl.java:472)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.startlevel.FrameworkStartLevelImpl$Command.run(FrameworkStartLevelImpl.java:137)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.AsyncExecutor.runInThread(AsyncExecutor.java:122)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.AsyncExecutor.access$000(AsyncExecutor.java:28)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.AsyncExecutor$1.run(AsyncExecutor.java:231)
jigasi_1   | Caused by: java.net.URISyntaxException: Illegal character in path at index 0: "0"
jigasi_1   | 	at java.net.URI$Parser.fail(URI.java:2847)
jigasi_1   | 	at java.net.URI$Parser.checkChars(URI.java:3020)
jigasi_1   | 	at java.net.URI$Parser.parseHierarchical(URI.java:3104)
jigasi_1   | 	at java.net.URI$Parser.parse(URI.java:3062)
jigasi_1   | 	at java.net.URI.<init>(URI.java:588)
jigasi_1   | 	at java.net.URI.create(URI.java:850)

jigasi_1   | Jigasi 2021-12-14 21:32:25.663 WARNING: [11] impl.sysactivity.SystemActivityNotifications.<clinit>().141 Failed to initialize native counterpart
jigasi_1   | java.lang.UnsatisfiedLinkError: Directory separator should not appear in library name: /tmp/jna--1160142225/jna6864348539461697844.tmp
jigasi_1   | 	at java.lang.Runtime.loadLibrary0(Runtime.java:868)
jigasi_1   | 	at java.lang.System.loadLibrary(System.java:1124)
jigasi_1   | 	at org.jitsi.utils.JNIUtils.loadNativeInClassloader(JNIUtils.java:137)
jigasi_1   | 	at org.jitsi.utils.JNIUtils.loadLibrary(JNIUtils.java:86)
jigasi_1   | 	at org.jitsi.utils.JNIUtils.loadLibrary(JNIUtils.java:45)
jigasi_1   | 	at net.java.sip.communicator.impl.sysactivity.SystemActivityNotifications.<clinit>(SystemActivityNotifications.java:125)
jigasi_1   | 	at net.java.sip.communicator.impl.sysactivity.SystemActivityNotificationsServiceImpl.isSupported(SystemActivityNotificationsServiceImpl.java:606)
jigasi_1   | 	at net.java.sip.communicator.impl.sysactivity.SystemActivityNotificationsServiceImpl.start(SystemActivityNotificationsServiceImpl.java:143)
jigasi_1   | 	at net.java.sip.communicator.impl.sysactivity.SysActivityActivator.start(SysActivityActivator.java:70)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.BundleImpl.start(BundleImpl.java:307)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.launch.FrameworkImpl.startLevelChanged(FrameworkImpl.java:472)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.startlevel.FrameworkStartLevelImpl$Command.run(FrameworkStartLevelImpl.java:137)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.AsyncExecutor.runInThread(AsyncExecutor.java:122)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.AsyncExecutor.access$000(AsyncExecutor.java:28)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.AsyncExecutor$1.run(AsyncExecutor.java:231)
jigasi_1   | Jigasi 2021-12-14 21:32:25.720 SEVERE: [11] impl.sysactivity.NetworkManagerListenerImpl.<init>().60 Cannot obtain dbus connection
jigasi_1   | org.freedesktop.dbus.exceptions.DBusException: Failed to connect to bus No such file or directory
jigasi_1   | 	at org.freedesktop.dbus.DBusConnection.<init>(Unknown Source)
jigasi_1   | 	at org.freedesktop.dbus.DBusConnection.getConnection(Unknown Source)
jigasi_1   | 	at net.java.sip.communicator.impl.sysactivity.NetworkManagerListenerImpl.<init>(NetworkManagerListenerImpl.java:56)
jigasi_1   | 	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
jigasi_1   | 	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
jigasi_1   | 	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
jigasi_1   | 	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
jigasi_1   | 	at java.lang.Class.newInstance(Class.java:442)
jigasi_1   | 	at net.java.sip.communicator.impl.sysactivity.SystemActivityNotificationsServiceImpl.getCurrentRunningManager(SystemActivityNotificationsServiceImpl.java:643)
jigasi_1   | 	at net.java.sip.communicator.impl.sysactivity.SystemActivityNotificationsServiceImpl.start(SystemActivityNotificationsServiceImpl.java:154)
jigasi_1   | 	at net.java.sip.communicator.impl.sysactivity.SysActivityActivator.start(SysActivityActivator.java:70)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.BundleImpl.start(BundleImpl.java:307)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.launch.FrameworkImpl.startLevelChanged(FrameworkImpl.java:472)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.startlevel.FrameworkStartLevelImpl$Command.run(FrameworkStartLevelImpl.java:137)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.AsyncExecutor.runInThread(AsyncExecutor.java:122)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.AsyncExecutor.access$000(AsyncExecutor.java:28)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.AsyncExecutor$1.run(AsyncExecutor.java:231)
Jigasi 2021-12-14 21:32:26.234 SEVERE: [11] org.jitsi.impl.neomedia.device.DeviceConfiguration.log() Failed to register custom Renderer org.jitsi.impl.neomedia.jmfext.media.renderer.audio.PulseAudioRenderer with JMF.
jigasi_1   | java.lang.IllegalStateException: audioSystem
jigasi_1   | 	at org.jitsi.impl.neomedia.jmfext.media.renderer.audio.PulseAudioRenderer.<init>(PulseAudioRenderer.java:156)
jigasi_1   | 	at org.jitsi.impl.neomedia.jmfext.media.renderer.audio.PulseAudioRenderer.<init>(PulseAudioRenderer.java:136)
jigasi_1   | 	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
jigasi_1   | 	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
jigasi_1   | 	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
jigasi_1   | 	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
jigasi_1   | 	at java.lang.Class.newInstance(Class.java:442)
jigasi_1   | 	at org.jitsi.impl.neomedia.device.DeviceConfiguration.registerCustomRenderers(DeviceConfiguration.java:1047)
jigasi_1   | 	at org.jitsi.impl.neomedia.device.DeviceConfiguration.<init>(DeviceConfiguration.java:366)
jigasi_1   | 	at org.jitsi.impl.neomedia.MediaServiceImpl.<init>(MediaServiceImpl.java:163)
jigasi_1   | 	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
jigasi_1   | 	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
jigasi_1   | 	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
jigasi_1   | 	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
jigasi_1   | 	at java.lang.Class.newInstance(Class.java:442)
jigasi_1   | 	at org.jitsi.impl.libjitsi.LibJitsiImpl$ServiceLock.initializeService(LibJitsiImpl.java:196)
jigasi_1   | 	at org.jitsi.impl.libjitsi.LibJitsiImpl$ServiceLock.getService(LibJitsiImpl.java:131)
jigasi_1   | 	at org.jitsi.impl.libjitsi.LibJitsiImpl.getService(LibJitsiImpl.java:91)
jigasi_1   | 	at org.jitsi.impl.libjitsi.LibJitsiOSGiImpl.getService(LibJitsiOSGiImpl.java:69)
jigasi_1   | 	at org.jitsi.service.libjitsi.LibJitsi.invokeGetServiceOnImpl(LibJitsi.java:173)
jigasi_1   | 	at org.jitsi.service.libjitsi.LibJitsi.getMediaService(LibJitsi.java:125)
jigasi_1   | 	at net.java.sip.communicator.impl.neomedia.NeomediaActivator.start(NeomediaActivator.java:391)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.BundleImpl.start(BundleImpl.java:307)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.launch.FrameworkImpl.startLevelChanged(FrameworkImpl.java:472)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.startlevel.FrameworkStartLevelImpl$Command.run(FrameworkStartLevelImpl.java:137)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.AsyncExecutor.runInThread(AsyncExecutor.java:122)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.AsyncExecutor.access$000(AsyncExecutor.java:28)
jigasi_1   | 	at org.jitsi.impl.osgi.framework.AsyncExecutor$1.run(AsyncExecutor.java:231)

Jicofo logs when CC button is clicked:

jicofo_1   | INFO: Attempting to invite transcriber
jicofo_1   | Dec 14, 2021 9:33:36 PM org.jitsi.utils.logging2.LoggerImpl log
jicofo_1   | SEVERE: An uncaught exception occurred in thread=Thread[pool-6-thread-1,5,main]
jicofo_1   | java.lang.NullPointerException
jicofo_1   | 	at org.jitsi.jicofo.jigasi.TranscriberManager.selectTranscriber(TranscriberManager.java:197)
jicofo_1   | 	at org.jitsi.jicofo.jigasi.TranscriberManager.startTranscribing(TranscriberManager.java:179)
jicofo_1   | 	at org.jitsi.jicofo.jigasi.TranscriberManager.lambda$memberPresenceChanged$0(TranscriberManager.java:137)
jicofo_1   | 	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
jicofo_1   | 	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
jicofo_1   | 	at java.base/java.lang.Thread.run(Thread.java:829)

Can anybody help me debug this?

Thank you very much, guys.