aau-zid / BigBlueButton-liveStreaming

Streams a given BBB Meeting to an RTMP Server.
GNU General Public License v3.0
200 stars 159 forks source link

File "stream.py", line 82, in bbb_browser #69

Closed bhuvankrishna closed 4 years ago

bhuvankrishna commented 4 years ago

When starting the docker I am getting an error at line 82 related to Send Message browser.find_elements_by_css_selector('[aria-label="Send message"]')[0].click()

To Reproduce Steps to reproduce the behavior:

  1. Clone the latest master
  2. Copy examples/docker-compose.yml.example to docker-compose.yml
  3. Edit the file and add the required paramenters. My file has these parameters and commented out others
version: '3.3'
services:
  bbb-streamer:
    image: aauzid/bigbluebutton-livestreaming
    container_name: liveStreaming
    environment:
      # BigBlueButton Server url:
      - BBB_URL=https://<instance url>/bigbluebutton/api
      # BigBlueButton secret:
      - BBB_SECRET=<secret>
      # BigBlueButton meetingID:
      - BBB_MEETING_ID=<Meeting ID>
      - BBB_STREAM_URL=rtmp://<streamurl>/app/
      # Timezone (default: Europe/Vienna):
      - TZ=<timezone>
#    volumes:
#      - ./videodata:/video
  1. I started docker-compose up. I did not use -d to see if any errors are shown.
  2. And this erorr is shown

Output of the error

Traceback (most recent call last):
liveStreaming   |   File "stream.py", line 164, in <module>
liveStreaming   |     bbb_browser()
liveStreaming   |   File "stream.py", line 82, in bbb_browser
liveStreaming   |     browser.find_elements_by_css_selector('[aria-label="Send message"]')[0].click()
liveStreaming   |   File "/usr/local/lib/python3.6/dist-packages/selenium/webdriver/remote/webelement.py", line 80, in click
liveStreaming   |     self._execute(Command.CLICK_ELEMENT)
liveStreaming   |   File "/usr/local/lib/python3.6/dist-packages/selenium/webdriver/remote/webelement.py", line 633, in _execute
liveStreaming   |     return self._parent.execute(command, params)
liveStreaming   |   File "/usr/local/lib/python3.6/dist-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
liveStreaming   |     self.error_handler.check_response(response)
liveStreaming   |   File "/usr/local/lib/python3.6/dist-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
liveStreaming   |     raise exception_class(message, screen, stacktrace)
liveStreaming   | selenium.common.exceptions.ElementClickInterceptedException: Message: element click intercepted: Element <button aria-label="Send message" aria-disabled="false" class="md--Q7ug4 buttonWrapper--x8uow sendButton--Z93EzE" type="submit" position="bottom" id="tippy-46">...</button> is not clickable at point (500, 1025). Other element would receive the click: <div class="ReactModal__Overlay ReactModal__Overlay--after-open overlay--Z7FUVK">...</div>
liveStreaming   |   (Session info: chrome=84.0.4147.125)
liveStreaming   | 
liveStreaming exited with code 1

Desktop (please complete the following information):

I tried to comment the line 82 browser.find_elements_by_css_selector('[aria-label="Send message"]')[0].click() and build a new image and try to run I get another error on line 87 which is browser.find_elements_by_id('chat-toggle-button')[0].click()

I think line 87 has to do with hiding chat window. I am not sure how to trace what went wrong.

voidspacexyz commented 4 years ago

This issue potentially comes when you have download video or chat stream enabled. I disabled the same and it works smooth.

But does audio stream work ? I found the audio stream also not working.

bhuvankrishna commented 4 years ago

Should I explicitly mention in docker-compose.yml to disable chat and download?

bhuvankrishna commented 4 years ago

Commenting this section has worked but since we are not toggling userlist it is shown. I will try to toggle it and see if it work in the next test.

#    browser.find_elements_by_css_selector('[aria-label="Send message"]')[0].click()                                                  

#    if args.chat:                                                                                                                    
#        browser.execute_script("document.querySelector('[aria-label=\"User list\"]').parentElement.style.display='none';")           
#    else:                                                                                                                            
#        browser.find_elements_by_id('chat-toggle-button')[0].click()                                                                 
#        browser.find_elements_by_css_selector('button[aria-label="Users and messages toggle"]')[0].click() 
mtsonline commented 4 years ago

just do not specify download or chat if you do not need it.

we could not find the problem of the audio issue, we are facing this on some systems, not on all though. There is an open pr that removes alsa - we will have a look at it - maybe this solves the problem as sideeffect.;-)

showing userlist and other parts of the screen should be made optional. just a few lines of code and with the new join url of the last version this could be done via custom css easyly. maybe someone could have a look at this?

bhuvankrishna commented 4 years ago

I did not specify download or chat. As you can see the first post where I gave the docker-compose.yml file that I used. I only have the basic requirements but still unable to to get it working.

mtsonline commented 4 years ago

...so could we sort out your problems a bit ... clearing up the issues in this thread wuld help to fix things I guess :-)

please try to sum up what the open issues are. thanks

bhuvankrishna commented 4 years ago

I did a fresh clone of the repo and copied the docker-compose.yml. Now its working but audio is not working. Anyway since the issue is related to running the docker. I am closing this issue.