[jitsi-dev] jitsii <-> videobridge debugging


#1

Hi,

I'm trying to get the videobridge running together with my ejabberd server
and did what is explained on the ejabberd page.

The only real error I can see in the videobridge output is:

jvb.sh --secret=jitvideo --domain='abc.de' --port=5275 --host=127.0.0.1
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further
details.
05.06.2013 22:56:52 org.jitsi.util.Logger info
INFO: Failed to initialize service implementation
org.jitsi.impl.fileaccess.FileAccessServiceImpl. Will continue without it.
java.lang.IllegalStateException:
net.java.sip.communicator.SC_HOME_DIR_LOCATION
        at
org.jitsi.impl.fileaccess.FileAccessServiceImpl.<init>(FileAccessServiceImpl.java:53)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
        at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
        at java.lang.Class.newInstance0(Class.java:374)
        at java.lang.Class.newInstance(Class.java:327)
        at
org.jitsi.impl.libjitsi.LibJitsiImpl.getService(LibJitsiImpl.java:132)
        at
org.jitsi.impl.libjitsi.LibJitsiOSGiImpl.getService(LibJitsiOSGiImpl.java:85)
        at
org.jitsi.service.libjitsi.LibJitsi.invokeGetServiceOnImpl(LibJitsi.java:163)
        at
org.jitsi.service.libjitsi.LibJitsi.getFileAccessService(LibJitsi.java:100)
        at
net.java.sip.communicator.impl.fileaccess.FileAccessActivator.start(FileAccessActivator.java:32)
        at
net.java.sip.communicator.impl.osgi.framework.BundleImpl.start(BundleImpl.java:288)
        at
net.java.sip.communicator.impl.osgi.framework.launch.FrameworkImpl.startLevelChanged(FrameworkImpl.java:446)
        at
net.java.sip.communicator.impl.osgi.framework.startlevel.FrameworkStartLevelImpl$Command.run(FrameworkStartLevelImpl.java:127)
        at
net.java.sip.communicator.impl.osgi.framework.AsyncExecutor.runInThread(AsyncExecutor.java:110)
        at
net.java.sip.communicator.impl.osgi.framework.AsyncExecutor.access$000(AsyncExecutor.java:16)
        at
net.java.sip.communicator.impl.osgi.framework.AsyncExecutor$1.run(AsyncExecutor.java:219)

Apart from that everything seems to be running. Last output is
05.06.2013 22:56:53 net.java.sip.communicator.util.Logger info
INFO: Network Address Manager Service ...[REGISTERED]

The problem is that my jitsi still shows the videobridge greyed out.

What to check to find out what's wrong here?

Thanks,
Wolfgang


#2

Hello,

Hi,

I'm trying to get the videobridge running together with my ejabberd
server and did what is explained on the ejabberd page.

The only real error I can see in the videobridge output is:

jvb.sh --secret=jitvideo --domain='abc.de <http://abc.de>' --port=5275
--host=127.0.0.1

The domain looks weird, you should use one of the domains configured in ejabberd (without the '<http://' part), probably just 'abc.de'.

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for
further details.
05.06.2013 22:56:52 org.jitsi.util.Logger info
INFO: Failed to initialize service implementation
org.jitsi.impl.fileaccess.FileAccessServiceImpl. Will continue without it.
java.lang.IllegalStateException:
net.java.sip.communicator.SC_HOME_DIR_LOCATION
         at
org.jitsi.impl.fileaccess.FileAccessServiceImpl.<init>(FileAccessServiceImpl.java:53)
         at
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
         at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
         at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
         at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
         at java.lang.Class.newInstance0(Class.java:374)
         at java.lang.Class.newInstance(Class.java:327)
         at
org.jitsi.impl.libjitsi.LibJitsiImpl.getService(LibJitsiImpl.java:132)
         at
org.jitsi.impl.libjitsi.LibJitsiOSGiImpl.getService(LibJitsiOSGiImpl.java:85)
         at
org.jitsi.service.libjitsi.LibJitsi.invokeGetServiceOnImpl(LibJitsi.java:163)
         at
org.jitsi.service.libjitsi.LibJitsi.getFileAccessService(LibJitsi.java:100)
         at
net.java.sip.communicator.impl.fileaccess.FileAccessActivator.start(FileAccessActivator.java:32)
         at
net.java.sip.communicator.impl.osgi.framework.BundleImpl.start(BundleImpl.java:288)
         at
net.java.sip.communicator.impl.osgi.framework.launch.FrameworkImpl.startLevelChanged(FrameworkImpl.java:446)
         at
net.java.sip.communicator.impl.osgi.framework.startlevel.FrameworkStartLevelImpl$Command.run(FrameworkStartLevelImpl.java:127)
         at
net.java.sip.communicator.impl.osgi.framework.AsyncExecutor.runInThread(AsyncExecutor.java:110)
         at
net.java.sip.communicator.impl.osgi.framework.AsyncExecutor.access$000(AsyncExecutor.java:16)
         at
net.java.sip.communicator.impl.osgi.framework.AsyncExecutor$1.run(AsyncExecutor.java:219)

Apart from that everything seems to be running. Last output is
05.06.2013 22:56:53 net.java.sip.communicator.util.Logger info
INFO: Network Address Manager Service ...[REGISTERED]

This exception is harmless.

The problem is that my jitsi still shows the videobridge greyed out.

What to check to find out what's wrong here?

You should have a look at the pcap saved by Jitsi to be sure (look for the disco#items and disco#info requests Jitsi uses to discover a bridge), but my guess is that problem stems from the domain name.

Regards,
Boris

···

On 6/6/13 12:00 AM, Wolfgang Rosenauer wrote:


#3

Hi,

Hello,

jvb.sh --secret=jitvideo --domain='abc.de <http://abc.de>' --port=5275
--host=127.0.0.1

The domain looks weird, you should use one of the domains configured in
ejabberd (without the '<http://' part), probably just 'abc.de'.

Actually I guess that GMail did something strange here. I only have
abc.dein the command (which is not my real domain name though).

The problem is that my jitsi still shows the videobridge greyed out.

What to check to find out what's wrong here?

You should have a look at the pcap saved by Jitsi to be sure (look for the

disco#items and disco#info requests Jitsi uses to discover a bridge), but
my guess is that problem stems from the domain name.

I will check the pcap a bit later but I guess it's not detected somehow but
I have no idea how to verify a working bridge on the server side.

Thanks,
Wolfgang

···

On Thu, Jun 6, 2013 at 9:01 AM, Boris Grozev <boris@jitsi.org> wrote:

On 6/6/13 12:00 AM, Wolfgang Rosenauer wrote:


#4

Hi,

    Hello,

        jvb.sh --secret=jitvideo --domain='abc.de <http://abc.de>
        <http://abc.de>' --port=5275
        --host=127.0.0.1

    The domain looks weird, you should use one of the domains configured
    in ejabberd (without the '<http://' part), probably just 'abc.de
    <http://abc.de>'.

Actually I guess that GMail did something strange here. I only have
abc.de <http://abc.de> in the command (which is not my real domain name
though).

That appears to be my mailer expanding HTML links when I reply. Sorry.

    The problem is that my jitsi still shows the videobridge greyed out.

    What to check to find out what's wrong here?

    You should have a look at the pcap saved by Jitsi to be sure (look
    for the disco#items and disco#info requests Jitsi uses to discover a
    bridge), but my guess is that problem stems from the domain name.

I will check the pcap a bit later but I guess it's not detected somehow
but I have no idea how to verify a working bridge on the server side.

You should see something like this in the ejabberd logs when the videobridge registers:

I(<0.421.0>:ejabberd_service:218) : Route registered for service "jitsi-videobridge.your.domain"

Apart from that, I don't know.

Regards,
Boris

···

On 6/6/13 11:24 AM, Wolfgang Rosenauer wrote:

On Thu, Jun 6, 2013 at 9:01 AM, Boris Grozev <boris@jitsi.org > <mailto:boris@jitsi.org>> wrote:
    On 6/6/13 12:00 AM, Wolfgang Rosenauer wrote:


#5

    The problem is that my jitsi still shows the videobridge greyed out.

    What to check to find out what's wrong here?

    You should have a look at the pcap saved by Jitsi to be sure (look
    for the disco#items and disco#info requests Jitsi uses to discover a
    bridge), but my guess is that problem stems from the domain name.

I will check the pcap a bit later but I guess it's not detected somehow
but I have no idea how to verify a working bridge on the server side.

It seems all the disco requests asking for voice, video and camera are
returning 404 item-not-found.

You should see something like this in the ejabberd logs when the videobridge registers:

I(<0.421.0>:ejabberd_service:218) : Route registered for service "jitsi-videobridge.your.domain"

This appears. But now I've got an idea.
My ejabberd has virtual hosts. My own user is on a virtual domain
while my definition in jvb is the primary domain.
Is that the issue? How is the setup meant to work for every user on
that system no matter which JID he uses?

Thanks,
Wolfgang

···

On Thu, Jun 6, 2013 at 11:33 AM, Boris Grozev <boris@jitsi.org> wrote:


#6

Hi,

···

On Thu, Jun 6, 2013 at 11:48 AM, Wolfgang Rosenauer <wrosenauer@gmail.com> wrote:

My ejabberd has virtual hosts. My own user is on a virtual domain
while my definition in jvb is the primary domain.
Is that the issue? How is the setup meant to work for every user on
that system no matter which JID he uses?

I've confirmed with another user under the domain which is used as the
jvb option it is working. So is there a concept or possibility to just
connect for all domains which are hosted on the ejabberd server. Or
supporting a wildcard or similar :wink:

Thanks
Wolfgang


#7

Hello,

Hi,

My ejabberd has virtual hosts. My own user is on a virtual domain
while my definition in jvb is the primary domain.
Is that the issue? How is the setup meant to work for every user on
that system no matter which JID he uses?

I've confirmed with another user under the domain which is used as the
jvb option it is working. So is there a concept or possibility to just
connect for all domains which are hosted on the ejabberd server. Or
supporting a wildcard or similar :wink:

Currently Jitsi only searches the domain for its account for videobridges. So, at the moment, there isn't such a possibility.

In theory, the bridge should be usable by accounts on other domains, the only problem is discovering it in the client.

I don't know whether there is an XMPP way to solve this. Anyone?

Maybe we could add a list of videobridge addresses to Jitsi, that can be manually edited or provisioned?

Regards,
Boris

···

On 6/6/13 11:21 PM, Wolfgang Rosenauer wrote:

On Thu, Jun 6, 2013 at 11:48 AM, Wolfgang Rosenauer > <wrosenauer@gmail.com> wrote: