[jitsi-dev] [jitsi-meet] Error message: Conference Focus - focus.xxx.com not available


#1

Following is my system setup for jitsi-meet:

a. Ubuntu 14.04 with eclipse MARS IDE setup

b. Apache (no reverse proxy setup or rewrite on URL)

c. XMPP ejabberd server 15.11

d. Jitsi-videobridge, jicofo, jitsi-meet - all source build based on
latest source release on Feb 3, 2016

Note: Prosody and nginx were not used in my system setup.

After much effort, I was able to get the jitsi-meet working with the above
environment setup; but with an earlier release of jitsi-meet source,
manually installed and extracted libs files from a deb release to
/usr/share/jitsi-meet.

My jitsi-meet/config.js contains the following settings e.g.:

muc: 'conference. jm.example.comt',

bosh: '//jm.example.com:5280/http-bind',

The earlier release of jitsi-meet contains libs/app-bundel.min.js which has
a function UI.generateRoomName

UI.generateRoomName = function () {

    if (roomName)

        return roomName;

    var roomNode = UI.getRoomNode();

    roomName = roomNode + '@' + config.hosts.muc;

    return roomName;

};

Since apache on my system serves multiple web applications, the jitsi-meet
URL access is configured to use http://jm.example.com /jitsimeet/
<http://jm.example.com%20/jitsimeet/>

Because of this, the UI.generateRoomName return
roomName=jitsimeet/@conference.jm.example.com. I did a temporary patch to
UI.generateRoomName i.e.

roomName = "jitsimeet" + '@' + config.hosts.muc; so its returns
roomName=jitsimeet@conference.jm.example.com. With this patch, I was able to
launch jitsi-meet successfully, tested with 3 parties.

···

------------------------------

With the latest jitsi-source release on Feb 3, 2016, I did a compilation
from source based on instructions given in
https://github.com/jitsi/jitsi-meet.

However the source build with nodejs-legacy gives problem, so I updated both
the tools to nodejs v0.10.41 and npm v3.6.0 before source build is
succesful.

Without any changes to any of the earlier configuration, when I launch
http://jm.example.com /jitsimeet/ <http://jm.example.com%20/jitsimeet/> , I
receive the following error just above the local video preview window:

===== error messages ====

Conference Focus

focus.jm.example.com not available

- retry in 1 second

=====================

After some debug, I observed the following:

a. UI.generateRoomName routine is no more used in libs/app-bundel.min.js or
found in the source

b. Text search on source directory shows that "options .hosts.muc" are being
referenced by two files in lib-jitsi-meet i.e.

  xmpp.js & JitsiConference.js. However both functions which use the
parameters are not included in the app-bundle.min.js

c. Using HttpFox on FireFox, I observed that jisti-meet sends an IQ request
via http-bind to "focus" but with room="jitsimeet"

instead of room="jitsimeet@conference.jm.example.com"

This leads to the following error log captured on ejabberd log attached
below i.e. causing focus agent to send IQ with field to="jitsimeet/focus"

Instead of to"="jitsimeet@conference.jm.example.com/focus"

1. Is this a known problem? Not sure if anybody facing the same problem.

2. I have tried but failed to locate the source file/location where I can do
a patch to change room parameter in http-bind request for further
testing/verification.

3. Is there something I did incorrectly in my build or config files that
have to lead to the observed problem?

Any advice or help will be much appreciated how I can proceed from here.

Regards,

CM Eng

==================== ejabberd log =================

2016-02-05 12:51:42.846 [debug]
<0.861.0>@ejabberd_http_bind:process_http_put:700 ##### really sending now:
[]

2016-02-05 12:51:43.831 [debug] <0.857.0>@ejabberd_http:process_header:280
##### (#Port<0.7029>) http query: 'POST' <<"/http-bind">>

2016-02-05 12:51:43.831 [debug]
<0.857.0>@ejabberd_http:extract_path_query:392 ##### client data: <<"<body
rid='770207954' xmlns='http://jabber.org/protocol/httpbind'
sid='6e80bb5c83d206318c753e5b09006548c20017ff'><iq
to='focus.auth.jm.example.com' type='set' xmlns='jabber:client'
id='2:sendIQ'><conference xmlns='http://jitsi.org/protocol/focus'
room='jitsimeet' machine-uid='d9d9464fc7be2c14bb4113c81f9f445f'><property
name='bridge' value='jitsi-videobridge.auth.jm.example.com'/><property
name='channelLastN' value='-1'/><property name='adaptiveLastN'
value='false'/><property name='adaptiveSimulcast' value='false'/><property
name='openSctp' value='true'/><property name='simulcastMode'
value='rewriting'/></conference></iq></body>">>

2016-02-05 12:51:43.831 [debug] <0.857.0>@ejabberd_http:process:350 #####
[<<"http-bind">>] matches [<<"http-bind">>]

2016-02-05 12:51:43.832 [debug] <0.857.0>@mod_http_bind:process:68 #####
Incoming data: <body rid='770207954'
xmlns='http://jabber.org/protocol/httpbind'
sid='6e80bb5c83d206318c753e5b09006548c20017ff'><iq
to='focus.auth.jm.example.com' type='set' xmlns='jabber:client'
id='2:sendIQ'><conference xmlns='http://jitsi.org/protocol/focus'
room='jitsimeet' machine-uid='d9d9464fc7be2c14bb4113c81f9f445f'><property
name='bridge' value='jitsi-videobridge.auth.jm.example.com'/><property
name='channelLastN' value='-1'/><property name='adaptiveLastN'
value='false'/><property name='adaptiveSimulcast' value='false'/><property
name='openSctp' value='true'/><property name='simulcastMode'
value='rewriting'/></conference></iq></body>

2016-02-05 12:51:43.832 [debug]
<0.857.0>@ejabberd_http_bind:parse_request:1114 ##### --- incoming data ---

<body rid='770207954' xmlns='http://jabber.org/protocol/httpbind'
sid='6e80bb5c83d206318c753e5b09006548c20017ff'><iq
to='focus.auth.jm.example.com' type='set' xmlns='jabber:client'
id='2:sendIQ'><conference xmlns='http://jitsi.org/protocol/focus'
room='jitsimeet' machine-uid='d9d9464fc7be2c14bb4113c81f9f445f'><property
name='bridge' value='jitsi-videobridge.auth.jm.example.com'/><property
name='channelLastN' value='-1'/><property name='adaptiveLastN'
value='false'/><property name='adaptiveSimulcast' value='false'/><property
name='openSctp' value='true'/><property name='simulcastMode'
value='rewriting'/></conference></iq></body>

--- END ---

2016-02-05 12:51:43.832 [debug] <0.857.0>@ejabberd_http_bind:http_put:775
##### Looking for session: <<"6e80bb5c83d206318c753e5b09006548c20017ff">>

2016-02-05 12:51:43.832 [debug]
<0.861.0>@ejabberd_http_bind:handle_sync_event:442 ##### New request:
{http_put,770207954,[{<<"xmlns">>,<<"http://jabber.org/protocol/httpbind">>}
,{<<"rid">>,<<"770207954">>},{<<"sid">>,<<"6e80bb5c83d206318c753e5b09006548c
20017ff">>}],[{xmlel,<<"iq">>,[{<<"xmlns">>,<<"jabber:client">>},{<<"to">>,<
<"focus.auth.jm.example.com">>},{<<"type">>,<<"set">>},{<<"id">>,<<"2:sendIQ
">>}],[{xmlel,<<"conference">>,[{<<"xmlns">>,<<"http://jitsi.org/protocol/fo
cus">>},{<<"room">>,<<"jitsimeet">>},{<<"machine-uid">>,<<"d9d9464fc7be2c14b
b4113c81f9f445f">>}],[{xmlel,<<"property">>,[{<<"name">>,<<"bridge">>},{<<"v
alue">>,<<"jitsi-videobridge.auth.jm.example.com">>}],[]},{xmlel,<<"property
">>,[{<<"name">>,<<"channelLastN">>},{<<"value">>,<<"-1">>}],[]},{xmlel,<<"p
roperty">>,[{<<"name">>,<<"adaptiveLastN">>},{<<"value">>,<<"false">>}],[]},
{xmlel,<<"property">>,[{<<"name">>,<<"adaptiveSimulcast">>},{<<"value">>,<<"
false">>}],[]},{xmlel,<<"property">>,[{<<"name">>,<<"openSctp">>},{<<"value"

,<<"true">>}],[]},{xmlel,<<"property">>,[{<<"name">>,<<"simulcastMode">>},

{<<"value">>,<<"rewriting">>}],[]}]}]}],615,1,<<>>,{{115,66,220,38},56589}}

2016-02-05 12:51:43.832 [debug]
<0.861.0>@ejabberd_http_bind:handle_http_put_event:558 ##### New request:
{http_put,770207954,[{<<"xmlns">>,<<"http://jabber.org/protocol/httpbind">>}
,{<<"rid">>,<<"770207954">>},{<<"sid">>,<<"6e80bb5c83d206318c753e5b09006548c
20017ff">>}],[{xmlel,<<"iq">>,[{<<"xmlns">>,<<"jabber:client">>},{<<"to">>,<
<"focus.auth.jm.example.com">>},{<<"type">>,<<"set">>},{<<"id">>,<<"2:sendIQ
">>}],[{xmlel,<<"conference">>,[{<<"xmlns">>,<<"http://jitsi.org/protocol/fo
cus">>},{<<"room">>,<<"jitsimeet">>},{<<"machine-uid">>,<<"d9d9464fc7be2c14b
b4113c81f9f445f">>}],[{xmlel,<<"property">>,[{<<"name">>,<<"bridge">>},{<<"v
alue">>,<<"jitsi-videobridge.auth.jm.example.com">>}],[]},{xmlel,<<"property
">>,[{<<"name">>,<<"channelLastN">>},{<<"value">>,<<"-1">>}],[]},{xmlel,<<"p
roperty">>,[{<<"name">>,<<"adaptiveLastN">>},{<<"value">>,<<"false">>}],[]},
{xmlel,<<"property">>,[{<<"name">>,<<"adaptiveSimulcast">>},{<<"value">>,<<"
false">>}],[]},{xmlel,<<"property">>,[{<<"name">>,<<"openSctp">>},{<<"value"

,<<"true">>}],[]},{xmlel,<<"property">>,[{<<"name">>,<<"simulcastMode">>},

{<<"value">>,<<"rewriting">>}],[]}]}]}],615,1,<<>>,{{115,66,220,38},56589}}

2016-02-05 12:51:43.832 [debug] <0.861.0>@ejabberd_http_bind:rid_allow:852
##### Previous rid / New rid: 770207953/770207954

2016-02-05 12:51:43.833 [debug]
<0.861.0>@ejabberd_http_bind:process_http_put:591 ##### Actually processing
request:
{http_put,770207954,[{<<"xmlns">>,<<"http://jabber.org/protocol/httpbind">>}
,{<<"rid">>,<<"770207954">>},{<<"sid">>,<<"6e80bb5c83d206318c753e5b09006548c
20017ff">>}],[{xmlel,<<"iq">>,[{<<"xmlns">>,<<"jabber:client">>},{<<"to">>,<
<"focus.auth.jm.example.com">>},{<<"type">>,<<"set">>},{<<"id">>,<<"2:sendIQ
">>}],[{xmlel,<<"conference">>,[{<<"xmlns">>,<<"http://jitsi.org/protocol/fo
cus">>},{<<"room">>,<<"jitsimeet">>},{<<"machine-uid">>,<<"d9d9464fc7be2c14b
b4113c81f9f445f">>}],[{xmlel,<<"property">>,[{<<"name">>,<<"bridge">>},{<<"v
alue">>,<<"jitsi-videobridge.auth.jm.example.com">>}],[]},{xmlel,<<"property
">>,[{<<"name">>,<<"channelLastN">>},{<<"value">>,<<"-1">>}],[]},{xmlel,<<"p
roperty">>,[{<<"name">>,<<"adaptiveLastN">>},{<<"value">>,<<"false">>}],[]},
{xmlel,<<"property">>,[{<<"name">>,<<"adaptiveSimulcast">>},{<<"value">>,<<"
false">>}],[]},{xmlel,<<"property">>,[{<<"name">>,<<"openSctp">>},{<<"value"

,<<"true">>}],[]},{xmlel,<<"property">>,[{<<"name">>,<<"simulcastMode">>},

{<<"value">>,<<"rewriting">>}],[]}]}]}],615,1,<<>>,{{115,66,220,38},56589}}

2016-02-05 12:51:43.833 [debug]
<0.861.0>@ejabberd_http_bind:process_http_put:642 ##### -- SaveKey:

2016-02-05 12:51:43.833 [debug]
<0.861.0>@ejabberd_http_bind:process_http_put:654 ##### reqlist:
[{hbr,770207954,<<>>,[]},{hbr,770207953,<<>>,[]}]

2016-02-05 12:51:43.833 [debug]
<0.861.0>@ejabberd_http_bind:process_http_put:700 ##### really sending now:
[{xmlel,<<"iq">>,[{<<"xmlns">>,<<"jabber:client">>},{<<"to">>,<<"focus.auth.
jm.example.com">>},{<<"type">>,<<"set">>},{<<"id">>,<<"2:sendIQ">>}],[{xmlel
,<<"conference">>,[{<<"xmlns">>,<<"http://jitsi.org/protocol/focus">>},{<<"r
oom">>,<<"jitsimeet">>},{<<"machine-uid">>,<<"d9d9464fc7be2c14bb4113c81f9f44
5f">>}],[{xmlel,<<"property">>,[{<<"name">>,<<"bridge">>},{<<"value">>,<<"ji
tsi-videobridge.auth.jm.example.com">>}],[]},{xmlel,<<"property">>,[{<<"name
">>,<<"channelLastN">>},{<<"value">>,<<"-1">>}],[]},{xmlel,<<"property">>,[{
<<"name">>,<<"adaptiveLastN">>},{<<"value">>,<<"false">>}],[]},{xmlel,<<"pro
perty">>,[{<<"name">>,<<"adaptiveSimulcast">>},{<<"value">>,<<"false">>}],[]
},{xmlel,<<"property">>,[{<<"name">>,<<"openSctp">>},{<<"value">>,<<"true">>
}],[]},{xmlel,<<"property">>,[{<<"name">>,<<"simulcastMode">>},{<<"value">>,
<<"rewriting">>}],[]}]}]}]

2016-02-05 12:51:43.833 [debug] <0.636.0>@ejabberd_service:send_text:371
#####

==#== Ejabberd Service Send = <iq
from='8968654241454647901739912@jm.example.com/21012731581454647902195135'
to='focus.auth.jm.example.com' type='set' id='2:sendIQ'><conference
xmlns='http://jitsi.org/protocol/focus' room='jitsimeet'
machine-uid='d9d9464fc7be2c14bb4113c81f9f445f'><property name='bridge'
value='jitsi-videobridge.auth.jm.example.com'/><property name='channelLastN'
value='-1'/><property name='adaptiveLastN' value='false'/><property
name='adaptiveSimulcast' value='false'/><property name='openSctp'
value='true'/><property name='simulcastMode'
value='rewriting'/></conference></iq>

2016-02-05 12:51:43.835 [debug] <0.630.0>@ejabberd_receiver:process_data:303
#####

==#== Received XML on stream = <presence id="RvUkF-6137"
to="jitsimeet/focus"><x xmlns="http://jabber.org/protocol/muc"></x><c
xmlns='http://jabber.org/protocol/caps' ext='' hash='sha-1'
node='http://jitsi.org' ver='MPbX4TmPVk4oe6hiyStGMdG6mmU='/></presence>

2016-02-05 12:51:43.835 [debug] <0.631.0>@ejabberd_s2s:do_route:305 #####
s2s manager

        from
{jid,<<"focus">>,<<"auth.jm.example.com">>,<<"focus32060538221">>,<<"focus">

,<<"auth.jm.example.com">>,<<"focus32060538221">>}

        to
{jid,<<>>,<<"jitsimeet">>,<<"focus">>,<<>>,<<"jitsimeet">>,<<"focus">>}

        packet
{xmlel,<<"presence">>,[{<<"id">>,<<"RvUk"...>>},{<<"to">>,<<...>>}],[{xmlel,
<<...>>,...},{xmlel,...}]}

=================

---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus