web-dev-qa-db-ja.com

JibriでJitsiで録音を開始できません

私はこのチュートリアル https://github.com/jitsi/jibri とこのビデオ https://www.youtube.com/watch?v=OHHoqKCjJ0E 2を使用しました

ジブリをインストールする

しかし、録音を開始できません

慈済側

/etc/prosody/conf.d/osboxes.osboxes.demoanuswadh.info.cfg.lua

  • Jibriのユーザーを追加し、記録し、prosodyctlを使用します
  • Internal.authおよびレコーダーコンポーネントを追加

/etc/jitsi/meet/osboxes.demoanuswadh.info-config.js

  • 有効なfileRecordingsEnabled:ture
  • 隠しドメインを追加しました

/etc/jitsi/jicofo/sip-communicator.properties

  • org.jitsi.jicofo.jibri.BREWERY=JibriBrewery@internal.auth.osboxes.demoanuswadh.info
  • org.jitsi.jicofo.jibri.PENDING_TIMEOUT = 90

これらはログの最後の100行です-log.0.txt

ava:312)
at Java.base/Java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.Java:735)
at Java.base/Java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.Java:734)
at Java.base/Java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.Java:658)
at org.Eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.Java:744)
at org.Eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.Java:369)
at org.Eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.Java:852)
at org.Eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.Java:278)
at org.Eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.Java:68)
at org.Eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.Java:138)
at org.Eclipse.jetty.server.Server.start(Server.Java:415)
at org.Eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.Java:108)
at org.Eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.Java:113)
at org.Eclipse.jetty.server.Server.doStart(Server.Java:382)
at org.Eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.Java:68)
at org.jitsi.jibri.MainKt.launchHttpServer(Main.kt:173)
at org.jitsi.jibri.MainKt.main(Main.kt:158)
Caused by: Java.lang.ClassNotFoundException: javax.activation.DataSource
at Java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.Java:581)
at Java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.Java:178)
at Java.base/Java.lang.ClassLoader.loadClass(ClassLoader.Java:521)
… 66 more
MultiException stack 2 of 2
Java.lang.IllegalArgumentException: Errors were discovered while reifying SystemDescriptor(
implementation=org.glassfish.jersey.message.internal.DataSourceProvider
contracts={javax.ws.rs.ext.MessageBodyReader,javax.ws.rs.ext.MessageBodyWriter}
scope=javax.inject.Singleton
qualifiers={}
descriptorType=CLASS
descriptorVisibility=NORMAL
metadata=
rank=0
loader=null
proxiable=null
proxyForSameScope=null
analysisName=null
id=106
locatorId=1
identityHashCode=1778422985
reified=false)
at org.jvnet.hk2.internal.SystemDescriptor.reify(SystemDescriptor.Java:705)
at org.jvnet.hk2.internal.ServiceLocatorImpl.reifyDescriptor(ServiceLocatorImpl.Java:464)
at org.jvnet.hk2.internal.ServiceLocatorImpl.narrow(ServiceLocatorImpl.Java:2310)
at org.jvnet.hk2.internal.ServiceLocatorImpl.access$1200(ServiceLocatorImpl.Java:128)
at org.jvnet.hk2.internal.ServiceLocatorImpl$9.compute(ServiceLocatorImpl.Java:1395)
at org.jvnet.hk2.internal.ServiceLocatorImpl$9.compute(ServiceLocatorImpl.Java:1390)
at org.glassfish.hk2.utilities.cache.internal.WeakCARCacheImpl.compute(WeakCARCacheImpl.Java:128)
at org.jvnet.hk2.internal.ServiceLocatorImpl.internalGetAllServiceHandles(ServiceLocatorImpl.Java:1452)
at org.jvnet.hk2.internal.ServiceLocatorImpl.getAllServiceHandles(ServiceLocatorImpl.Java:1377)
at org.jvnet.hk2.internal.ServiceLocatorImpl.getAllServiceHandles(ServiceLocatorImpl.Java:1366)
at org.glassfish.jersey.inject.hk2.AbstractHk2InjectionManager.getAllServiceHolders(AbstractHk2InjectionManager.Java:158)
at org.glassfish.jersey.inject.hk2.ImmediateHk2InjectionManager.getAllServiceHolders(ImmediateHk2InjectionManager.Java:54)
at org.glassfish.jersey.internal.inject.Providers.getServiceHolders(Providers.Java:329)
at org.glassfish.jersey.internal.inject.Providers.getProviders(Providers.Java:157)
at org.glassfish.jersey.message.internal.MessageBodyFactory.initialize(MessageBodyFactory.Java:265)
at org.glassfish.jersey.message.internal.MessageBodyFactory$MessageBodyWorkersConfigurator.postInit(MessageBodyFactory.Java:136)
at org.glassfish.jersey.server.ApplicationHandler.lambda$initialize$2(ApplicationHandler.Java:372)
at Java.base/Java.util.Arrays$ArrayList.forEach(Arrays.Java:4390)
at org.glassfish.jersey.server.ApplicationHandler.initialize(ApplicationHandler.Java:372)
at org.glassfish.jersey.server.ApplicationHandler.lambda$initialize$1(ApplicationHandler.Java:316)
at org.glassfish.jersey.internal.Errors.process(Errors.Java:316)
at org.glassfish.jersey.internal.Errors.process(Errors.Java:298)
at org.glassfish.jersey.internal.Errors.processWithException(Errors.Java:256)
at org.glassfish.jersey.server.ApplicationHandler.initialize(ApplicationHandler.Java:315)
at org.glassfish.jersey.server.ApplicationHandler.(ApplicationHandler.Java:282)
at org.glassfish.jersey.servlet.WebComponent.(WebComponent.Java:335)
at org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.Java:178)
at org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.Java:370)
at javax.servlet.GenericServlet.init(GenericServlet.Java:244)
at org.Eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.Java:671)
at org.Eclipse.jetty.servlet.ServletHolder.initialize(ServletHolder.Java:428)
at org.Eclipse.jetty.servlet.ServletHandler.lambda$initialize$0(ServletHandler.Java:750)
at Java.base/Java.util.stream.SortedOps$SizedRefSortingSink.end(SortedOps.Java:357)
at Java.base/Java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.Java:485)
at Java.base/Java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.Java:474)
at Java.base/Java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining(StreamSpliterators.Java:312)
at Java.base/Java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.Java:735)
at Java.base/Java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.Java:734)
at Java.base/Java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.Java:658)
at org.Eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.Java:744)
at org.Eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.Java:369)
at org.Eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.Java:852)
at org.Eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.Java:278)
at org.Eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.Java:68)
at org.Eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.Java:138)
at org.Eclipse.jetty.server.Server.start(Server.Java:415)
at org.Eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.Java:108)
at org.Eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.Java:113)
at org.Eclipse.jetty.server.Server.doStart(Server.Java:382)
at org.Eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.Java:68)
at org.jitsi.jibri.MainKt.launchHttpServer(Main.kt:173)
at org.jitsi.jibri.MainKt.main(Main.kt:158)

2020-04-18 19:06:12.543 SEVERE: [21] org.jitsi.xmpp.mucclient.MucClientManager.log() Failed to initialize and start a MucClient:
org.jivesoftware.smack.SmackException$ConnectionException: The following addresses failed: ‘osboxes.demoanuswadh.info:5222’ failed because: osboxes.demoanuswadh.info/77.525.75.82 exception: Java.net.ConnectException: Connection refused (Connection refused)
at org.jivesoftware.smack.SmackException$ConnectionException.from(SmackException.Java:278)
at org.jivesoftware.smack.tcp.XMPPTCPConnection.connectUsingConfiguration(XMPPTCPConnection.Java:619)
at org.jivesoftware.smack.tcp.XMPPTCPConnection.connectInternal(XMPPTCPConnection.Java:902)
at org.jivesoftware.smack.AbstractXMPPConnection.connect(AbstractXMPPConnection.Java:383)
at org.jitsi.xmpp.mucclient.MucClient.initializeConnectAndJoin(MucClient.Java:277)
at org.jitsi.xmpp.mucclient.MucClientManager.lambda$addMucClient$0(MucClientManager.Java:152)
at Java.base/Java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.Java:1128)
at Java.base/Java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.Java:628)
at Java.base/Java.lang.Thread.run(Thread.Java:834)
2020-04-18 19:06:42.348 WARNING: [30] org.jivesoftware.smackx.ping.PingManager.pingServerIfNecessary() XMPPConnection was not authenticated
2020-04-18 19:22:59.687 INFO: [17] org.jitsi.jibri.api.http.internal.InternalHttpApi.gracefulShutdown() Jibri gracefully shutting down

/etc/jitsi/jibri/config.json

    {

    // NOTE: this is a *SAMPLE* config file, it will need to be configured with

    // values from your environment

    // Where recording files should be temporarily stored

    "recording_directory":"/xxxxxxxxxx/xxxxxxxxx/recordings",

    // The path to the script which will be run on completed recordings

    "finalize_recording_script_path": "/path/to/finalize_recording.sh",

    "xmpp_environments": [

        {

            // A friendly name for this environment which can be used

            //  for logging, stats, etc.

            "name": "prod environment",

            // The hosts of the XMPP servers to connect to as part of

            //  this environment

            "xmpp_server_hosts": [

                "osboxes.demoanuswadh.info"

            ],

            // The xmpp domain we'll connect to on the XMPP server

            "xmpp_domain": "osboxes.demoanuswadh.info",

            // Jibri will login to the xmpp server as a privileged user 

            "control_login": {

                // The domain to use for logging in

                "domain": "auth.osboxes.demoanuswadh.info",

                // The credentials for logging in

                "username": "jibri",

                "password": "xxxxxxxxxxxxxxxxxx"

            },

            // Using the control_login information above, Jibri will join 

            //  a control muc as a means of announcing its availability 

            //  to provide services for a given environment

            "control_muc": {

                "domain": "internal.auth.osboxes.demoanuswadh.info",

                "room_name": "JibriBrewery",

                "nickname": "jibri-nickname"

            },

            // All participants in a call join a muc so they can exchange

            //  information.  Jibri can be instructed to join a special muc

            //  with credentials to give it special abilities (e.g. not being

            //  displayed to other users like a normal participant)

            "call_login": {

                "domain": "recorder.osboxes.demoanuswadh.info",

                "username": "recorder",

                "password": "xxxxxxxxxxxxxxxxxxxxxx"

            },

            // When jibri gets a request to start a service for a room, the room

            //  jid will look like:

            //  [email protected]_domain

            // We'll build the url for the call by transforming that into:

            //  https://xmpp_domain/subdomain/roomName

            // So if there are any prefixes in the jid (like jitsi meet, which

            //  has its participants join a muc at conference.xmpp_domain) then

            //  list that prefix here so it can be stripped out to generate

            //  the call url correctly

            "room_jid_domain_string_to_strip_from_start": "conference.",

            // The amount of time, in minutes, a service is allowed to continue.

            //  Once a service has been running for this long, it will be

            //  stopped (cleanly).  A value of 0 means an indefinite amount

            //  of time is allowed

            "usage_timeout": "0"

        }

    ]

}

どんな助けにも感謝します。前もって感謝します

1
Anuswadh

ログに接続が拒否されたとあります。

2020-04-18 19:06:12.543 SEVERE: [21] org.jitsi.xmpp.mucclient.MucClientManager.log() Failed to initialize and start a MucClient:[...] failed because: osboxes.demoanuswadh.info/77.525.75.82 exception: Java.net.ConnectException: Connection refused (Connection refused)

Jitsiでユーザー、ドメイン、パスワードを確認します。準備ができたら、log.0.txtを削除するか、名前を変更してjibriサービスを再起動し、明確なログを取得します。

1
AndreaTaroni86