Intel® Collaboration Suite for WebRTC
Community support and discussions on the Intel® Collaboration Suite for WebRTC (Intel® CS for WebRTC).

ERROR: AMQPER - Connection error... [TypeError: Cannot read property 'sockets' of undefined]

Goran_J_
Beginner
1,770 Views

Hi,

I'm getting this error with the version 3.0, when starting the MCU:

 

root@MARS:~/intel_webrtc_mcu/Release-v3.0# bin/start-all.sh
starting nuve, stdout -> /home/gjovanov/intel_webrtc_mcu/Release-v3.0/logs/woogeen-nuve.stdout
1552
1560
2016-01-24 22:07:04.708  - INFO: RPC - Conected to rabbitMQ server
2016-01-24 22:07:04.716  - INFO: RPC - Exchange rpcExchange is open
2016-01-24 22:07:04.721  - INFO: RPC - Queue nuveQueue is open
2016-01-24 22:07:04.724  - INFO: RPC - ClientQueue amq.gen-YQH-sbKz2jBpD17dmVL4OA is open
starting mcu, stdout -> /home/gjovanov/intel_webrtc_mcu/Release-v3.0/logs/woogeen-mcu.stdout
2016-01-24 22:07:10.209  - INFO: AMQPER - Exchange rpcExchange is open
2016-01-24 22:07:10.218  - INFO: AMQPER - Exchange broadcastExchange is open
2016-01-24 22:07:10.221  - INFO: AMQPER - ClientQueue amq.gen-GyJ3EbYDikJYLnbo-Tcs8g is open
2016-01-24 22:07:10.242  - INFO: ErizoController - SSL enabled!
2016-01-24 22:07:10.308  - INFO: AMQPER - Queue erizoController_1 is open
2016-01-24 22:07:10.315  - INFO: ErizoController - server on
2016-01-24 22:07:10.316  - ERROR: AMQPER - Connection error... [TypeError: Cannot read property 'sockets' of undefined]
TypeError: Cannot read property 'sockets' of undefined
    at listen (/home/gjovanov/intel_webrtc_mcu/Release-v3.0/mcu/erizoController/erizoController.js:1:10333)
    at Queue._onMethod (/home/gjovanov/intel_webrtc_mcu/Release-v3.0/node_modules/amqp/lib/queue.js:463:9)
starting agent, stdout -> /home/gjovanov/intel_webrtc_mcu/Release-v3.0/logs/woogeen-agent.stdout
Running process
Running process
2016-01-24 22:07:11.613  - INFO: AMQPER - Exchange rpcExchange is open
2016-01-24 22:07:11.633  - INFO: AMQPER - Exchange broadcastExchange is open
2016-01-24 22:07:11.643  - INFO: AMQPER - ClientQueue amq.gen-nt-1wbghi5sl0dBHMhsNPA is open
2016-01-24 22:07:11.653  - INFO: ErizoAgent - Adding agent to cloudhandler, purpose: general-use
2016-01-24 22:07:11.693  - INFO: AMQPER - Queue ErizoAgent_3 is open
2016-01-24 22:07:11.700  - INFO: ErizoAgent - ErizoAgent rpcID: ErizoAgent_3
starting app, stdout -> /home/gjovanov/intel_webrtc_mcu/Release-v3.0/logs/woogeen-app.stdout

I've attached the config file as well as the self-assigned cert. For the cert pls use pass Xp12345!.

 

I've also tried with our wild-card cert, I get the same error.

 

Your help is more than welcomed. Tnx.

 

/Goran

0 Kudos
26 Replies
Artem_M_
New Contributor I
1,412 Views

And what is you node version? 

In previous versions it needed 0.10...

Now 4.1....

 

0 Kudos
Goran_J_
Beginner
1,412 Views

Yes we are aware of this upgrade. We use Node 4.1.2.

Any other suggestion, what might be causing this?

0 Kudos
Goran_J_
Beginner
1,412 Views

Maybe it is important that we use Node 4.1.2 using NVM. and we have set this one as default. So even after machine reboot, it uses per default the version 4.1.2.

0 Kudos
Chunbo_H_Intel1
Employee
1,412 Views

Hi Goran,

Could you upload the log files when this issue happens?

Thanks!

0 Kudos
Goran_J_
Beginner
1,412 Views

Hi Chunbo,

I've attached the latest logs as well as the last woogeen_config.js file.

Looking forward to your observations. Tnx.

/Goran

0 Kudos
Goran_J_
Beginner
1,412 Views

Hi Chunbo,

could you reproduce this one? Do u know why is this happening?

0 Kudos
Chunbo_H_Intel1
Employee
1,412 Views

Hi Goran,

I checked your configuration and error message. One thing is that you changed the default config.erizoController.port to 443, but it seems that it has been occupied by another application. Please make sure 443 is available for MCU.

0 Kudos
Goran_J_
Beginner
1,412 Views

Hi Chunbo,

thanks for the input. 

However, running this we can see that no other app is using that port:

root@MARS:~# netstat -peant | grep ":443 "
root@MARS:~#

Also running:

root@MARS:~# lsof -i :443
root@MARS:~#

Shows no other app using that port.

Even we I tried with the default port (8080) and before that checking if that port is available (using those two command above) it shows that the port is free, but the same exception happens.

I've disabled the firewall (ufw disable) and tried also other ports (8081, 8082, 8083, 8900, 8901), and always get the same log exceptions.

Only when I turn the SSL mode off (erizoController.ssl = false), then it starts without exception.

 

Running out of ideas. Any other suggestions?

 

0 Kudos
Chunbo_H_Intel1
Employee
1,412 Views

Hi Goran,

Do you get the "EADDRINUSE" error when you switch to 8080 instead of 443?

Regarding the error of "TypeError: Cannot read property 'sockets' of undefined", it is caused by the empty or undefined of room on the socket. Somehow, the room initialization might has issue. We are trying to make more checks around those spots and root cause.

Thanks!

0 Kudos
Sivabudh_U_
Beginner
1,412 Views

Hi Chunbo, 

I'm also getting the exact same error as Goran.

Here's the screencap of my error: https://www.evernote.com/l/Af1S_Dn8WLFLCozEG0OcKDx30KA94qteRSw

I'm using Ubuntu 14.04, and also I am using Node 4.1.2 via `nvm.`

0 Kudos
Chunbo_H_Intel1
Employee
1,412 Views

Thanks for the information. As I mentioned, we are now working on the root cause and solution accordingly. Stay tuned!

0 Kudos
Goran_J_
Beginner
1,412 Views

Hi Chunbo,

any update on this?

We have tried the 3.0 Update2 version with the default config, but the same thing happens with the message:

TypeError: Cannot read property 'sockets' of undefined]

(By Default config 8080 is used and we have checked with "lsof -i :8080" and that port was available).

 

Another thing that we have observed is this: The default config has:

config.cloudProvider.name = '';

but when we have given it a name:

config.cloudProvider.name = 'test';

it was starting without that message:

TypeError: Cannot read property 'sockets' of undefined]

Also we have made sure that the 'extras/basic_example/basicServer.js' uses the sampleService Id/Key combination from those generated:

superServiceId: 56c0e17224d6a0d962a12a33
superServiceKey: AQi241Lo7KkN4eA0qvVEcLrgg4f40kfLUECpUGBHPZSaQntn5Q5Vy//G22yDjZW9+fN7BhlMntkElYOq28eIkRi69dto56KstMTAJT2gpOGHLCRJKIXHIQ07B8XKpDlG3PDUafPjbUct+FHhNVLu7HkJ4+MiX9kwQg1bgPYn/Kc=
sampleServiceId: 56c0e17224d6a0d962a12a34
sampleServiceKey: b+HoE5LwZq3wxrBHOqkTFVl7pPPRG0by1irsnWS9jwil0+1ys3Z4pGF8qkqOSKhGUC8ZNRRJBpfmt9u6Mm9qP/eszRGR5MgkJEmyBIb229NbNrOsQbnR1W83chW0DjZYEM5PX59IhEzhiouwb3SMiBlU8H7xiIAWJcQT1SzK8+0=

 

as follows:

N.API.init('56c0e17224d6a0d962a12a34', 'b+HoE5LwZq3wxrBHOqkTFVl7pPPRG0by1irsnWS9jwil0+1ys3Z4pGF8qkqOSKhGUC8ZNRRJBpfmt9u6Mm9qP/eszRGR5MgkJEmyBIb229NbNrOsQbnR1W83chW0DjZYEM5PX59IhEzhiouwb3SMiBlU8H7xiIAWJcQT1SzK8+0=', 'https://live.xplorify.net:3000/');

We use a wildcard certificate from GeoTrust (*.xplorify.net) and also we have invoked:

initcert.js all

as well as:

extras/basic_example/initcert.js

with our export passphrase (see attachment).

mongod --version --> db version v2.4.9

node -v --> v4.3.0

 

Now all the applications start (please see attached logs), but the AJAX call createSession hangs. Pls check at:

- https://live.xplorify.net:3004/

- https://live.xplorify.net:3000/console/

with the above service Id/Key values.

 

Your help is highly appreciated.

Tnx.

/Goran

 

0 Kudos
Chunbo_H_Intel1
Employee
1,412 Views

Hi Goran,

Could you show me the position in erizoController.js file where "TypeError: Cannot read property 'sockets' of undefined]" pops up?

Thanks!

0 Kudos
Goran_J_
Beginner
1,412 Views

Hi Chunbo,

pls have a look in the attached woogeen-mcu.stdout from the attached ZIP file. You can also see the sequence of commands performed in the file "_sequence_of_commands.txt", as well as find the used certificate.

Thanks for your support.

 

/Goran

0 Kudos
Chunbo_H_Intel1
Employee
1,412 Views

Hi Goran,

Could you please also upload the erizoController.js file from your mcu/erizoController/ folder?

Thanks!

0 Kudos
Chunbo_H_Intel1
Employee
1,412 Views

Hi Goran,

We've just run the test according to your configuration and certs. Everything turns out to be as expected. Several things I suggest you to try:

1. Restart your mongo service, and restart MCU then.

2. Are you running our product in VM? If so, have you tried to run MCU in  a physical server?

Thanks!

0 Kudos
Goran_J_
Beginner
1,412 Views

Hi Chunbo,

we've tried restarting mongo server as well MCU and even rebooting, but none of this seems to help. Yes we are trying to run MCU on a VM. Unfortunately we don't have a physical server yet.

Here is the VM we are trying to run the MCU to: 88.198.81.52 (un: gjovanov, pw: Intel12345!). The MCU is located in /home/gjovanov/intel_webrtc_mcu/Release-v3.0.1. You can try it yourself. Maybe you can notice something not so obvious to us. 

Thanks.

 

/Goran

0 Kudos
Goran_J_
Beginner
1,412 Views

Hello Chunbo,

did you have a chance to looked at the provided VM instance? Do you why would not work on VM and expect to work only on a physical server?

Thanks in advance.

/Goran

0 Kudos
Chunbo_H_Intel1
Employee
1,412 Views

Hi Goran,

We support both VM and physical machines. And our QA has run some test on your VM instance and been able to reproduce the failure. Thanks again for your information and great support. We are working on the solution.

Stay tuned!

0 Kudos
aven
Beginner
1,229 Views

how to create woogeen_config.js file?

can't find in Intel_CS_WebRTC.v3.0_Update2/CS_WebRTC_Conference_Server_MCU.v3.0.1/etc

0 Kudos
Reply