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

selelnium_timeout #65

Closed alis-maroc closed 4 years ago

alis-maroc commented 4 years ago

Hi This error still here, tested on two servers without issues !!! I test evry things on others issues but no way !!! I have vps on aws, and dedicated server, both gives some error !!!

sudo docker-compose up Starting liveStreaming ... done Attaching to liveStreaming liveStreaming | INFO:root:Starting browser!! liveStreaming | INFO:root:Open BBB and hide elements!! liveStreaming | INFO:root:create_meeting... liveStreaming | INFO:root:get_join_url... liveStreaming | Traceback (most recent call last): liveStreaming | File "stream.py", line 157, in liveStreaming | bbb_browser() liveStreaming | File "stream.py", line 75, in bbb_browser liveStreaming | WebDriverWait(browser, selelnium_timeout).until(element) liveStreaming | File "/usr/local/lib/python3.6/dist-packages/selenium/webdriver/support/wait.py", line 80, in until liveStreaming | raise TimeoutException(message, screen, stacktrace) liveStreaming | selenium.common.exceptions.TimeoutException: Message: liveStreaming | liveStreaming exited with code 1

Thanks to give solution...

mtsonline commented 4 years ago

as you already commented on ... possible duplicate of #44

nobody here will be able to help you without more details, other than "timeout"

as you can see in the closed threads, there are some things you shouldn't do and if you follow them it should work. If it does not, even if the requirements where met, we probably won't find a solution though.

best would be to remove selenium at all and create a join url that bypasses the echoteswt ... but that would need some time to code it ... maybe someone can provide a pr for that.

the problem is, that the userdata parameters of bbb which would allow for this, have no effect on moderators. this said, it no longer would be possible to join as moderator after removing selenium. Anyway, I cannot see any case where this should be necessary...

Only the create / start meeting call would have to be done as moderator - but the user would not have to bypass the echotest, the meeting would be started before that and the window could be closed and an attendee user could join.

so if you or anybody has the time to change a few lines to follow this idea, we could solve this forever

mtsonline commented 4 years ago

here what would have to be used after creating / starting the meeting with the current calls.

in both python scripts (the main and the chat one) instead of the selenium part this join url should be used. the join as moderator option would have to be removed at all...

from bigbluebutton_api_python import util as bbbUtil 
            bbbUrl = bbbUtil.UrlBuilder(BBB_URL,BBB_SECRET) 

            joinParams['userdata-bbb_auto_join_audio'] = "true" 
            joinParams['userdata-bbb_enable_video'] = 'false' 
            joinParams['userdata-bbb_listen_only_mode'] = "false" 
            joinParams['userdata-bbb_skip_check_audio'] = 'true' 
            meeting['joinDirectUrl'] = bbbUrl.buildUrl("join", params=joinParams) 
alis-maroc commented 4 years ago

Hi, Thank you for response...

I have bbb installed with greenlight, and landing page modified here: https://online.alis.asso.ma

I follow steps mentionned in readme, and have this error, i dont know where is problem exactly ?

As many, i am not very hard on coding, this is why if in explanation members can give more details..

For example for this solution, and thanks again for help,:

from bigbluebutton_api_python import util as bbbUtil bbbUrl = bbbUtil.UrlBuilder(BBB_URL,BBB_SECRET)

        joinParams['userdata-bbb_auto_join_audio'] = "true" 
        joinParams['userdata-bbb_enable_video'] = 'false' 
        joinParams['userdata-bbb_listen_only_mode'] = "false" 
        joinParams['userdata-bbb_skip_check_audio'] = 'true' 
        meeting['joinDirectUrl'] = bbbUrl.buildUrl("join", params=joinParams) 

shall i put this code as is, or change some parameters ? and where exactly put it on files ?

I can give root access if any can help me on this, because this solution for stream to youtube or other is very good, and we would think team for sharing code...

mtsonline commented 4 years ago

...you cannot put the code as is into any place. someone with python experience will have to take it as startpoint and modify the code. There are some users who may be able to do it here - hope someone finds the time to do it ... will last longer until we find the time to do so.

alis-maroc commented 4 years ago

Hi, Good news...!! I success to resolve problem, it was meeting id, wrong id, and docker-compose up try to create it ... I use get_meetings.py in examples, and get correct id for meeting after i lunched it from greenlight panel..

And stream success to youtube

mtsonline commented 4 years ago

great that you solved your problem ... anyway - hope someone can help to get ridd of selenium ;-)

have fun streaming cheers