Greenlight Join button does nothing

1,898 views
Skip to first unread message

Wyatt Stangel

unread,
Sep 28, 2017, 2:55:28 PM9/28/17
to BigBlueButton-Setup
Hello,
I don't have a lot of Linux experience, but with the amazing installation documentation I managed to get this far. I have the Demo up and running and am able to join all of the Demo meetings, I have Greenlight running within docker, and I have Greenlight LDAP OAuth working with Active Directory. I can start a meeting with Greenlight, enter my name, then press the Join button and nothing happens. I ran into issues early on with docker and tried to install via ruby. Ruby got me a bit farther, but I ended up figuring out the docker install. So, I then deleted anything that I could find related to ruby, but I think I might have missed something that is binding to port 80? This is all internal traffic, not going through a firewall, and I don't have BBB published to the internet just yet. I didn't know BBB-Setup was a group and was only searching through the BBB-Users group!... anyways from reading all of the posts, here's a bunch of information that is typically requested. Thank you in advance for any assistance!!

I'm starting Greenlight with this command(I've tried the Host Network command too, came results): 
sudo docker run -d -p 5000:80 --restart=unless-stopped -v $(pwd)/db/production:/usr/src/app/db/production -v $(pwd)/assets:/usr/src/app/public/system -v $(pwd)/log:/usr/src/app/log --env-file env --name greenlight bigbluebutton/greenlight


======================================================
output from /greenlight/log/production.log when pressing the Join button
======================================================
I, [2017-09-28T18:34:06.193229 #1]  INFO -- : [f5a0a35a-52dd-4d8b-9276-0756323a25b2] Started GET "/b/meetings/Test/join?name=Wyatt" for 172.17.0.1 at 2017-09-28 18:34:06 +0000
I, [2017-09-28T18:34:06.196213 #1]  INFO -- : [f5a0a35a-52dd-4d8b-9276-0756323a25b2] Processing by BbbController#join as JSON
I, [2017-09-28T18:34:06.196331 #1]  INFO -- : [f5a0a35a-52dd-4d8b-9276-0756323a25b2]   Parameters: {"name"=>"Wyatt", "room_id"=>nil, "resource"=>"meetings", "id"=>"Test"}
I, [2017-09-28T18:34:06.304188 #1]  INFO -- : [f5a0a35a-52dd-4d8b-9276-0756323a25b2] Message for the log file : Connection error. Your URL is probably incorrect: "http://bigbluebutton.forceamerica.com/bigbluebuttonapi". Error: Failed to open TCP connection to bigbluebutton.forceamerica.com:80 (getaddrinfo: Name or service not known)
I, [2017-09-28T18:34:06.415754 #1]  INFO -- : [f5a0a35a-52dd-4d8b-9276-0756323a25b2] BBB error on create : Connection error. Your URL is probably incorrect: "http://bigbluebutton.forceamerica.com/bigbluebuttonapi". Error: Failed to open TCP connection to bigbluebutton.forceamerica.com:80 (getaddrinfo: Name or service not known)
I, [2017-09-28T18:34:06.525830 #1]  INFO -- : [f5a0a35a-52dd-4d8b-9276-0756323a25b2] Completed 500 Internal Server Error in 329ms (ActiveRecord: 0.2ms)
F, [2017-09-28T18:34:06.527451 #1] FATAL -- : [f5a0a35a-52dd-4d8b-9276-0756323a25b2]
F, [2017-09-28T18:34:06.527622 #1] FATAL -- : [f5a0a35a-52dd-4d8b-9276-0756323a25b2] BigBlueButton::BigBlueButtonException (Connection error. Your URL is probably incorrect: "http://bigbluebutton.forceamerica.com/bigbluebuttonapi". Error: Failed to open TCP connection to bigbluebutton.forceamerica.com:80 (getaddrinfo: Name or service not known)):
F, [2017-09-28T18:34:06.527792 #1] FATAL -- : [f5a0a35a-52dd-4d8b-9276-0756323a25b2]
F, [2017-09-28T18:34:06.527963 #1] FATAL -- : [f5a0a35a-52dd-4d8b-9276-0756323a25b2] app/lib/bbb_api.rb:106:in `rescue in bbb_join_url'
[f5a0a35a-52dd-4d8b-9276-0756323a25b2] app/lib/bbb_api.rb:59:in `bbb_join_url'
[f5a0a35a-52dd-4d8b-9276-0756323a25b2] app/controllers/bbb_controller.rb:85:in `join'
I, [2017-09-28T18:34:06.529384 #1]  INFO -- : [f5a0a35a-52dd-4d8b-9276-0756323a25b2] Processing by ErrorsController#error as JSON
I, [2017-09-28T18:34:06.529652 #1]  INFO -- : [f5a0a35a-52dd-4d8b-9276-0756323a25b2]   Parameters: {"name"=>"Wyatt", "room_id"=>nil, "resource"=>"meetings", "id"=>"Test"}
I, [2017-09-28T18:34:06.530547 #1]  INFO -- : [f5a0a35a-52dd-4d8b-9276-0756323a25b2] Completed 406 Not Acceptable in 1ms (ActiveRecord: 0.0ms)


======================================================
bbb-conf --clean
======================================================
# Warning: API URL IPs do not match host:
#
#                                IP from ifconfig: 10.10.130.2
#  /var/lib/tomcat7/webapps/demo/bbb_api_conf.jsp: bigbluebutton.forceamerica.com

Restaring BigBlueButton 2.0.0-beta (and cleaning out all log files) ...
Stopping BigBlueButton
 ... cleaning log files
Starting BigBlueButton
...........


** Potential problems described below **
# Warning: API URL IPs do not match host:
#
#                                IP from ifconfig: 10.10.130.2
#  /var/lib/tomcat7/webapps/demo/bbb_api_conf.jsp: bigbluebutton.forceamerica.com

....
# Warning: The API demos are installed and accessible from:
#
#
# These API demos allow anyone to access your server without authentication
# to create/manage meetings and recordings. They are for testing purposes only.
# If you are running a production system, remove them by running:
#
#    sudo apt-get purge bbb-demo

# Warning: The client self check is installed and accessible from:
#
#

======================================================
admin@Corp-Ubuntu:~/greenlight$ cat env
======================================================
# This is a sample of the environment variables you will need
# To use, copy this file to .env `cp sample.env .env`

# Create a secret key for rails
#
# You can generate a secure one through the Greenlight docker image
# with with the command
#
#   docker run --rm bigbluebutton/greenlight rake secret
#
SECRET_KEY_BASE=

# For either developent or production

# PORT=5000

# Enter credentials for your BigBlueButton Server
#
# The endpoint and secret from your bigbluebutton server.  To get these values, run
# the following command on your BigBlueButton server
#
#    bbb-conf --secret
#
# and uncomment the following two variables
BIGBLUEBUTTON_SECRET=

# Twitter Login Provider (optional)
#
#   You will need to register the app at https://apps.twitter.com/
#   For the callback URL use 'http://<your hostname:port>/auth/twitter/callback'
#   Once registered copy the ID and Secret here
#
TWITTER_ID=
TWITTER_SECRET=

# Google Login Provider (optional)
#
#   You will need to register for at https://console.developers.google.com/apis/credentials
#   Select Oauth client ID -> web application
#   For the callback URL use 'http://<your hostname:port>/auth/google/callback'
#   Once registered copy the ID and Secret here
#
#   The GOOGLE_OAUTH2_HD variable is used to limit sign-in to a particular Google Apps hosted domain. This
#   can be a string such as, 'domain.com'. If left blank, GreenLight will allow sign-in from all Google Apps hosted
#   domains.
#
GOOGLE_OAUTH2_ID=
GOOGLE_OAUTH2_SECRET=
GOOGLE_OAUTH2_HD=

# LDAP Login Provider (optional)
#
#   You can enable LDAP authentication by providing values for the variables below.
#   For information about setting up LDAP, see:
#
LDAP_SERVER=IPADDRESS
LDAP_PORT=389
LDAP_METHOD=plain
LDAP_UID=sAMAccountName
LDAP_BASE=DC=DOMAIN,DC=com
LDAP_BIND_DN=CN=USER,CN=Users,DC=DOMAIN,DC=com
LDAP_PASSWORD=PASSWORD

# If "true", GreenLight will register a webhook callback for each meeting
# created. This callback is called for all events that happen in the meeting,
# including the processing of its recording. These events are used to update
# the web page dynamically as things happen in the server.
# If not "true", the application will add a metadata to the meetings with this same
# callback URL. Scripts can then be added to BigBlueButton to call this callback
# URL and send specific events to GreenLight (e.g. a post publish script to warn
# the application when recordings are done).
GREENLIGHT_USE_WEBHOOKS=true

# Enable uploading to Youtube (optional)
#
#   When this is enabled, users will be able to directly upload their recordings
#   to Youtube. If you plan to enable this, you should follow the steps outlined
#   in our docs for setting up the Youtube data API.
#
#
ENABLE_YOUTUBE_UPLOADING=false

# Slack Integration (optional)
#
#   You will need to register an incoming-webhook for your slack channel
#   in order for GreenLight to post to it. You can do this by going
#   team and then selecting "Add Incoming WebHooks integration" on the
#   desired channel. You will then need to paste the webhook below.
#
SLACK_WEBHOOK=
SLACK_CHANNEL=

# Landing Background (optional)
#
#   Supply a URL to an image to change the landing background. If no
#   URL is provided GreenLight will use a default image. If you
#   supply a path that does not lead to an image, no landing image
#   will appear.
#
LANDING_BACKGROUND=

# SMTP Mailer (optional)
#
GREENLIGHT_MAIL_NOTIFICATIONS=true
# In the format [localhost.localdomain]
GREENLIGHT_DOMAIN=localhost-lxc.org
SMTP_SERVER=smtp.gmail.com
SMTP_PORT=587
SMTP_DOMAIN=gmail.com
SMTP_USERNAME=your...@gmail.com
SMTP_PASSWORD=yourpassword
# SMTP_TLS=false
# SMTP_AUTH=login
# SMTP_STARTTLS_AUTO=true

# Enable QR Code generation (optional)
#
#   When this is enabled, users will be able to generate a QR code for direct access
#   to a meeting room that can be shared as the URL link.
#
ENABLE_QRCODE_GENERATION=false


# Prefix for the application's root URL
# Useful for deploying the application to a subdirectory
#
#   default is '/b' (recommended)
#
RELATIVE_URL_ROOT=/b

# Uncomment and set to 'true' to only allow users to create meetings when authenticated.
# Unauthenticated users are still able to join meetings through invites.
# DISABLE_GUEST_ACCESS=false

# Comment this out to send logs to STDOUT in production instead of log/production.log .
DISABLE_RAILS_LOG_TO_STDOUT=true


======================================================
admin@Corp-Ubuntu:~/greenlight$ netstat -na | grep 80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN
tcp        0      0 10.10.130.2:8081        0.0.0.0:*               LISTEN
tcp        0      0 10.10.130.2:8082        0.0.0.0:*               LISTEN
tcp        0      0 127.0.0.1:50180         127.0.0.1:5000          ESTABLISHED
tcp        0      0 10.10.130.2:80          10.11.170.97:49763      ESTABLISHED
tcp        0      0 127.0.0.1:8100          127.0.0.1:37580         ESTABLISHED
tcp        0      0 172.17.0.1:55370        172.17.0.2:80           ESTABLISHED
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN
tcp6       0      0 :::8080                 :::*                    LISTEN
tcp6       0      0 :::80                   :::*                    LISTEN
tcp6       0      0 ::1:8081                :::*                    LISTEN
tcp6       0      0 ::1:8082                :::*                    LISTEN
tcp6       0      0 :::8021                 :::*                    LISTEN
tcp6       0      0 :::5080                 :::*                    LISTEN
tcp6       0      0 127.0.0.1:8021          127.0.0.1:35276         ESTABLISHED
tcp6       0      0 127.0.0.1:5000          127.0.0.1:50180         ESTABLISHED
tcp6       0      0 127.0.0.1:37580         127.0.0.1:8100          ESTABLISHED
tcp6       0      0 127.0.0.1:35276         127.0.0.1:8021          ESTABLISHED
udp6       0      0 :::33807                :::*
unix  2      [ ACC ]     STREAM     LISTENING     19805    /tmp/.X11-unix/X0
unix  2      [ ACC ]     STREAM     LISTENING     19804    @/tmp/.X11-unix/X0
unix  2      [ ACC ]     SEQPACKET  LISTENING     12580    /run/udev/control
unix  3      [ ]         STREAM     CONNECTED     18068
unix  3      [ ]         STREAM     CONNECTED     18008
unix  3      [ ]         STREAM     CONNECTED     2049771980
unix  3      [ ]         STREAM     CONNECTED     31880    /run/systemd/journal/stdout
unix  3      [ ]         STREAM     CONNECTED     21880
unix  3      [ ]         STREAM     CONNECTED     2049757880 @/tmp/.X11-unix/X0
unix  3      [ ]         STREAM     CONNECTED     27380    /var/run/dbus/system_bus_socket
unix  3      [ ]         STREAM     CONNECTED     19807
unix  3      [ ]         STREAM     CONNECTED     26180    @/tmp/ibus/dbus-ETiWOOXU
unix  3      [ ]         STREAM     CONNECTED     16801
admin@Corp-Ubuntu:~/greenlight$
======================================================







Joshua Arts

unread,
Sep 28, 2017, 4:30:35 PM9/28/17
to BigBlueButton-Setup
Hey Wyatt.

The API for your BigBlueButton server is hosted at http://bigbluebutton.forceamerica.com/bigbluebutton/api, but GreenLight is trying to find it at http://bigbluebutton.forceamerica.com/bigbluebuttonapi. This is because you're missing the forward slash at the end of your endpoint in your env file.

The following line:


should be:


Let me know if this fixes your problem!

Josh

Wyatt Stangel

unread,
Oct 2, 2017, 9:32:05 AM10/2/17
to BigBlueButton-Setup
Hi Josh,
Thank you for replying. I did make the change and restarted the entire server. Still get the same error message, is there another location that this might be configured?

F, [2017-10-02T13:27:54.209521 #1] FATAL -- : [f4524079-9507-4967-b39b-4868ea3d456d] BigBlueButton::BigBlueButtonException (Connection error. Your URL is probably incorrect: "http://bigbluebutton.forceamerica.com/bigbluebutton/api". Error: Failed to open TCP connection to bigbluebutton.forceamerica.com:80 (getaddrinfo: Name or service not known)):

-Wyatt

Joshua Arts

unread,
Oct 2, 2017, 9:50:31 AM10/2/17
to BigBlueButton-Setup
Hey Wyatt,

What is the result when you run the following command?

docker run --rm --env-file env bigbluebutton/greenlight rake conf:check

Wyatt Stangel

unread,
Oct 2, 2017, 10:28:50 AM10/2/17
to BigBlueButton-Setup
Hi Josh,
It doesn't like port 80, yet I can telnet from my workstation to the BBB server over port 80 just fine. 

forceadmin@Corp-Ubuntu:~/greenlight$ sudo docker run --rm --env-file env bigbluebutton/greenlight rake conf:check
[sudo] password for forceadmin:

Checking environment: Passed
Checking Connection: Failed
Error connecting to BigBlueButton server - Failed to open TCP connection to bigbluebutton.forceamerica.com:80 (getaddrinfo: Name or service not known)
forceadmin@Corp-Ubuntu:~/greenlight$

Wyatt Stangel

unread,
Oct 3, 2017, 2:32:17 PM10/3/17
to BigBlueButton-Setup
Here's the bbb-conf --debug. After searching through a few legacy posts, one mentions a config.xml file containing a port config. I can't seem to track that down.

forceadmin@Corp-Ubuntu:~/greenlight$ sudo bbb-conf --debug
[sudo] password for forceadmin:
   -- ERRORS found in /usr/share/red5/log/* --
/usr/share/red5/log/screenshare-slf.log:2017-10-02 06:48:04,892 [pool-21-thread-1] ERROR o.b.a.s.m.redis.MessageReceiver - Error subscribing to channels: java.net.ConnectException: Connection refused (Connection refused)

   -- Exceptions found in /usr/share/red5/log/* --
/usr/share/red5/log/screenshare-slf.log:2017-10-02 06:48:04,891 [pool-21-thread-1] WARN  o.b.a.s.m.redis.MessageReceiver - Exception on Jedis connection. Resubscribing to pubsub.
/usr/share/red5/log/screenshare-slf.log:2017-10-02 06:48:04,892 [pool-21-thread-1] ERROR o.b.a.s.m.redis.MessageReceiver - Error subscribing to channels: java.net.ConnectException: Connection refused (Connection refused)

forceadmin@Corp-Ubuntu:~/greenlight$


-Wyatt

Wyatt Stangel

unread,
Oct 4, 2017, 8:02:06 AM10/4/17
to BigBlueButton-Setup
Here is my sites-enabled page. Is there supposed to be 2 listens at the top? I tried commenting one and the other out and restarting everything, but nothing seemed to change. 


forceadmin@Corp-Ubuntu:~/greenlight$ cat /etc/nginx/sites-enabled/bigbluebutton
server {
     listen   80;
     listen [::]:80;
     server_name  bigbluebutton.forceamerica.com;

     access_log  /var/log/nginx/bigbluebutton.access.log;

         # Handle RTMPT (RTMP Tunneling).  Forwards requests
         # to Red5 on port 5080
      location ~ (/open/|/close/|/idle/|/send/|/fcs/) {
          proxy_pass         http://127.0.0.1:5080;
          proxy_redirect     off;
          proxy_set_header   X-Forwarded-For   $proxy_add_x_forwarded_for;

          client_max_body_size       10m;
          client_body_buffer_size    128k;

          proxy_connect_timeout      90;
          proxy_send_timeout         90;
          proxy_read_timeout         90;

          proxy_buffering            off;
          keepalive_requests         1000000000;
      }

         # Handle desktop sharing tunneling.  Forwards
         # requests to Red5 on port 5080.
       location /deskshare {
           proxy_pass         http://127.0.0.1:5080;
           proxy_redirect     default;
           proxy_set_header   X-Forwarded-For   $proxy_add_x_forwarded_for;
           client_max_body_size       10m;
           client_body_buffer_size    128k;
           proxy_connect_timeout      90;
           proxy_send_timeout         90;
           proxy_read_timeout         90;
           proxy_buffer_size          4k;
           proxy_buffers              4 32k;
           proxy_busy_buffers_size    64k;
           proxy_temp_file_write_size 64k;
           include    fastcgi_params;
       }

        # BigBlueButton landing page.
        location / {
          root   /var/www/bigbluebutton-default;
          index  index.html index.htm;
          expires 1m;
        }

        # Include specific rules for record and playback
        include /etc/bigbluebutton/nginx/*.nginx;

        #error_page  404  /404.html;

        # Redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
                root   /var/www/nginx-default;
        }
location = / {
        return 301 /b;
}
}

forceadmin@Corp-Ubuntu:~/greenlight$

Joshua Arts

unread,
Oct 5, 2017, 12:02:15 PM10/5/17
to BigBlueButton-Setup
Hey Wyatt, there are supposed to be two listens at the top.

This doesn't appear to be a problem with GreenLight, but rather a problem with your BigBlueButton server. Can you join your BigBlueButton server without using GreenLight (through the landing page)?

Josh
Message has been deleted

Wyatt Stangel

unread,
Oct 5, 2017, 1:56:51 PM10/5/17
to BigBlueButton-Setup
Through the Demo? Yes, I can get in through the Demo Server and start a session and have others join, audio works, upload, and everything. I'm navigating to http://bigbluebutton.forceamerica.com/index.html or to http://bigbluebutton.forceamerica.com/demo/demo1.jsp both work. The /demo/demo1.jsp site has the option to join different variations of classes and such, I've also tested and confirmed recording works.

 
*Note this isn't hosted on the internet, so only accessible via my network. 


Wyatt Stangel

unread,
Oct 10, 2017, 3:02:56 PM10/10/17
to BigBlueButton-Setup
Hello,
I've completely reinstalled Ubuntu and started from scratch. Went through all of the installation process, Demo Server works just fine still, Audio, Record and everything still works just fine. Ran into the same exact issue. When I press the Join button, nothing happens. Any new ideas?

-Wyatt

Wyatt Stangel

unread,
Oct 10, 2017, 3:17:36 PM10/10/17
to BigBlueButton-Setup
So, looks like Greenlight REQUIRES https to run. Even though we plan on keeping everything internal initially. I'll configure SSL and post here if that is the fix.

James O. Stanworth

unread,
Oct 12, 2017, 7:29:22 AM10/12/17
to BigBlueButton-Setup
I was experiencing the same problem. Having run through the (excellent) installation instructions I could setup up a meeting (i.e., give it a name) but not 'join'.
Thanks Josh for the docker conf:check command which flagged up my mistake. I had used the the same key twice in the env file. Once I corrected it (i.e., raked the greenlight key and then input the BBB key) everything started working. I'm not very technical so that is what you'd call rookie error, I guess.
Thanks. 
Reply all
Reply to author
Forward
0 new messages