Git Product home page Git Product logo

Comments (22)

soraxas avatar soraxas commented on July 17, 2024

Hi @ZennXR thanks for reporting!

There should not be any needs for domain\un or what not. The login details should be the same as the one you would use in https://prod.lcs.uwa.edu.au/ess/login.jsp. Can you try if you can login on this page? And if so, what's the page it shows afterwards? Cheers

from echo360.

ZennXR avatar ZennXR commented on July 17, 2024

Thanks for getting back to me Oscar!

That login page errors stating the login details are incorrect (they are not). The uni uses a SSO page that you can log in to and then go in to echo (LCS). I think its the way the SSO passes the creds to the LCS or something...
Here is the SSO page https://www.lms.uwa.edu.au/

Thanks,

from echo360.

soraxas avatar soraxas commented on July 17, 2024

Ah I guess that would be the reason for the script not working. My uni also uses SSO but still maintains its ability to login from echo360 using the same credentials. I'm guessing the same is not true for your uni.

For now, I think I will have to figure out a way to allow capturing SSO creds from a different website, before accessing the actual echo360 page.

from echo360.

ZennXR avatar ZennXR commented on July 17, 2024

Damn... Any idea how long something like that would take?
The only thing close to a work around i have come up with so far was to pull just the audio as its clearly listed in the networking tab when in dev tools in chrome...

from echo360.

soraxas avatar soraxas commented on July 17, 2024

Hey!
I have just implemented a way for setting up credentials needed before proceeding with the rest of the script. You can use that ability to first log in with your SSO (i.e. go to https://prod.lcs.uwa.edu.au/ess/login.jsp and login). Then, simply continue the script and it should be able to use that creds.

You can follow the instructions here. Let me know how it goes!

from echo360.

ZennXR avatar ZennXR commented on July 17, 2024

Ok so i tested it and i think i might not have explained this correctly.
The UWA SSO page is https://www.lms.uwa.edu.au/.
Its not the prod.lcs srv.
The script is now loading the echo prod.lcs login page that my uni has disabled direct login for

from echo360.

soraxas avatar soraxas commented on July 17, 2024

You can enter that url https://www.lms.uwa.edu.au/ from that chrome browser that pops up, enter your creds into it, login, and after you successful logged in, type continue back in the original terminal and press enter.

from echo360.

ZennXR avatar ZennXR commented on July 17, 2024

These are the two responses i got back

C:\Users\user>"C:\Users\user\Downloads\echo360-master (1)\echo360-master\run.bat" https://prod.lcs.uwa.edu.au/ess/portal/section/196798 --setup-credential

DevTools listening on ws://127.0.0.1:12863/devtools/browser/4c3adbb1-15e9-41fc-91b7-4b4f28b3fd7f
>>> Download will use "ChromeDriver" webdriver from LOCAL executable <<<
> Type 'continue' and press [enter]
[6692:3324:0904/150005.221:ERROR:latency_info.cc(163)] Surface::TakeLatencyInfoFromFrame, LatencyInfo vector size 101 is too big.

and

C:\Users\user>"C:\Users\user\Downloads\echo360-master (1)\echo360-master\run.bat" https://prod.lcs.uwa.edu.au/ess/portal/section/196798 --setup-credential
=================================================================
Binary file of chromedriver not found, will initiate a download process now...
>> Downloading chromedriver binary file for "win32"
100% [..........................................................................] 3378230 / 3378230
>> Extracting archive file "chromedriver_win32.zip"
Done!
=================================================================

DevTools listening on ws://127.0.0.1:12052/devtools/browser/f960d080-ba0b-4e53-80db-0ba1f74ea9d1
>>> Download will use "ChromeDriver" webdriver from LOCAL executable <<<
> Type 'continue' and press [enter]
Continue
> Type 'continue' and press [enter]
continue
> Type 'continue' and press [enter]
>> Logging into "https://prod.lcs.uwa.edu.au/ess/portal/section/196798"... Credentials needed...
Unikey:

from echo360.

soraxas avatar soraxas commented on July 17, 2024

Can I ask that from the same browser: after you login from at https://www.lms.uwa.edu.au/, can you access https://prod.lcs.uwa.edu.au/ess/portal/section/196798 without the needs to login?

from echo360.

ZennXR avatar ZennXR commented on July 17, 2024

No, still asks for creds... :(

from echo360.

soraxas avatar soraxas commented on July 17, 2024

Oh.. I was originally thinking to capture via manual login. For example, for my case one of the course usually requires credentials:

$ ./run.sh https://view.streaming.sydney.edu.au:8443/ess/portal/section/041698d6-f43a-4b09-a39a-b90475a63530
>>> Download will use "ChromeDriver" webdriver from LOCAL executable <<<
>> Logging into "https://view.streaming.sydney.edu.au:8443/ess/portal/section/041698d6-f43a-4b09-a39a-b90475a63530"... Credentials needed...
Unikey:

but after I used the new method (i.e. manually logging into required website first so that the creds are stored in the browser already), credentials are not needed;

$ ./run.sh https://view.streaming.sydney.edu.au:8443/ess/portal/section/041698d6-f43a-4b09-a39a-b90475a63530 --setup-credential
>>> Download will use "ChromeDriver" webdriver from LOCAL executable <<<
> Type 'continue' and press [enter]
continue
> Type 'continue' and press [enter]
>> Logging into "https://view.streaming.sydney.edu.au:8443/ess/portal/section/041698d6-f43a-4b09-a39a-b90475a63530"... INFO: No need to login :)
Done!
>> Retrieving echo360 Course Info...  2/13 videos

from echo360.

soraxas avatar soraxas commented on July 17, 2024

Do you know what website do you normally need to login before being able to access echo360?

from echo360.

ZennXR avatar ZennXR commented on July 17, 2024

Normally i go to the SSO at https://www.lms.uwa.edu.au/ before i do anything it will redirect to https://sso.uwa.edu.au/siteminderagent/forms/uwalogin.fcc?TYPE=33554433&REALMOID=06-6ef26642-2da1-4428-9c58-3ee3d4e111c1&GUID=&SMAUTHREASON=0&METHOD=GET&SMAGENTNAME=-SM-GCS23xIxgS7fdRlcwRobZbcKcGiz2HARAVD4LGRn6JtGwfdc1G0BnNt9BwOjIZgtJ9SRUO%2b9A7TRrHTxoGYqXK0A3Vgwllbu&TARGET=-SM-HTTPS%3a%2f%2fblackboardsso%2ewebservices%2euwa%2eedu%2eau%2fBlackBoardSSO%2easpx%3fenv%3dprod

Once i log in i am at the main LMS page where i can see my units etc. The url is https://lms.uwa.edu.au/webapps/portal/execute/tabs/tabAction?tab_tab_group_id=_1_1#

I then go into the unit and on the unit splash page i can go to the recorded lecturers. the url is https://prod.lcs.uwa.edu.au:8443/ess/lti/v1/launch/BLACKBOARD/3ed0854c-55d0-4d3d-9b08-cd2e119ea27c and using your method of removing the iframe, the new URL is https://prod.lcs.uwa.edu.au/ess/portal/section/196798

I then add --setup-credential at the end and then the start the script a new window with ;data pops up then it redirects to https://prod.lcs.uwa.edu.au/ess/login.jsp.
I cant log in to that so i did as you recommended and, in the same window, went to the lms.uwa.edu.au page and then logged in.

If i go back to the script and continue it gets the errors as above.
If i go to the prod.lcs after i logged in, in the same window, it asks for login details.

from echo360.

soraxas avatar soraxas commented on July 17, 2024

@ZennXR thanks so much for your detailed description!

So to explain further, the windows that pops up with --setup-credential is the main webdriver that the script uses (this window is basically the browser that the script uses to navigate and capture each video download links). If this window is able to access your course page, then the script should be able to successfully download videos from your echo360 system.

I think the last thing that I can recommend you to try is:

  1. From that poped windows, navigates to https://www.lms.uwa.edu.au/, and login.
  2. Perform the same actions that you had described above (including going to LMS page, going to unit splash page, etc.), so that you end up at https://prod.lcs.uwa.edu.au/ess/portal/section/196798. (this window should be the one that says Chrome is being controlled by automated test software)
  3. Switch back to the terminal. Type continue and press enter.

If step 2 is successful, and able to access the weblinlk that you started the script with, step 3 should not be asking for login creds... Hope its okay

from echo360.

ZennXR avatar ZennXR commented on July 17, 2024

No, thank you for helping!

Got to the page with the videos and this is what i got:

DevTools listening on ws://127.0.0.1:12392/devtools/browser/826fa79a-62f2-44de-b3e5-866582b47d41
>>> Download will use "ChromeDriver" webdriver from LOCAL executable <<<
> Type 'continue' and press [enter]
continue
> Type 'continue' and press [enter]
>> Logging into "https://prod.lcs.uwa.edu.au/ess/portal/section/196798"... INFO: No need to login :)
Done!
>> Retrieving echo360 Course Info... Unable to parse course videos from JSON (course_data)
Exception: 'section'

from echo360.

soraxas avatar soraxas commented on July 17, 2024

Oh! it seems like there is some progress compare to what we had before :)

I think all it's left is some parsing issue. Would you be able to provide me the page source of a particular site to see what's wrong?

So, from a normal browser, first login to:
https://prod.lcs.uwa.edu.au/ess/portal/section/196798
Then, go to the page:
https://prod.lcs.uwa.edu.au/ess/client/api/sections/196798/section-data.json?pageSize=100
... and provide me the page source, thanks!

Basically this is how the script retrieve the videos data, from the format {}/ess/client/api/sections/{}/section-data.json?pageSize=100".format(self._hostname, self._uuid)

As an example, the echo360 site at: (this one does not needs creds)
http://recordings.engineering.illinois.edu/ess/portal/section/115f3def-7371-4e98-b72f-6efe53771b2a
in fact can allow us to acces its video data at:
http://recordings.engineering.illinois.edu/ess/client/api/sections/115f3def-7371-4e98-b72f-6efe53771b2a/section-data.json?pageSize=100

from echo360.

ZennXR avatar ZennXR commented on July 17, 2024

Hey sorry for the late reply.
Im not much of a web guy but i think i have what you asked for haha.
I just got it from here - Let me know if you need anything else listed there.

I had to go to https://prod.lcs.uwa.edu.au/ess/portal/section/196798 because the other one just gives me a 401 error {"errorMessage":"Invalid user session.","error":401}
Also, because i cant log in to the prod.lcs.uwa directly i just logged into the SSO as per normal.

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<!-- Copyright 2005-2014 Echo360 Inc. -->
<html>
<head>
    <meta http-equiv="content-type" content="text/html;charset=UTF-8">
    <title>EchoCenter</title>

    <meta name="HandheldFriendly" content="True">
    <meta name="MobileOptimized" content="320">
    <!--<meta name="viewport" content="width=device-width, target-densitydpi=160dpi, initial-scale=1.0">-->
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
    <meta http-equiv="cleartype" content="on">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

    <!--<link rel="stylesheet" media="print" href="css/print.css">-->
    <link rel="stylesheet" media="screen" href="css/main.css">
    <!--[if IE]>
    <link rel="stylesheet" media="screen" href="css/ie.css"><![endif]-->
    <!--[if gte IE 8]>
    <link rel="stylesheet" media="screen" href="css/ie9.css"><![endif]-->
    <link rel="stylesheet" media="screen" href="css/jqueryui.smoothness.css">
    <link rel="stylesheet" media="screen" href="css/ui.jqgrid.css">
    <link rel="stylesheet" media="screen" href="css/jqplot.css">
</head>

<body class="echo360-body clearfix">
<table id="loader-table">
    <tr>
        <td id="loader-cell">
            <div id="ec-loader"></div>
        </td>
    </tr>
</table>
<div role="main" id="main"></div>



<script src="../echocenter-build/js/lib/almond.js"></script>
<script type="text/javascript" src="../echocenter-build/js/main.js"></script>

</body>
</html>

from echo360.

soraxas avatar soraxas commented on July 17, 2024

Hey! :)
Thanks for getting back to me. Unfortunately, that page is not the one that causes the parsing error.
You can view the tutorial that I quickly recorded here for accessing the video data.

But basically, you need to:

  1. First access to https://prod.lcs.uwa.edu.au/ess/portal/section/196798 via your usual method (from your uni SSO)
  2. Then go to https://prod.lcs.uwa.edu.au/ess/client/api/sections/196798/section-data.json?pageSize=100 to access the video data

You cannot skip the first step because it requires you to first go to the link to establish a cookie before you are authenticated to access the json data. That's the reason why in the youtube link, going to the second link without the first will say that you are not authorised to access it.

But of course, the one I showed does not need to login, but in your case you should access the echo360 with you usual way, and then afterwards go to the second link. To save the source you can simply right click and save as the html file :)

from echo360.

ZennXR avatar ZennXR commented on July 17, 2024

I just made a quick recording of what happens when i try to do the same thing. Still no data :(

https://www.useloom.com/share/84b0aa4761774f68813285077daa3988

from echo360.

ZennXR avatar ZennXR commented on July 17, 2024

Hey man, any luck yet with what i should do next?

from echo360.

ZennXR avatar ZennXR commented on July 17, 2024

from echo360.

soraxas avatar soraxas commented on July 17, 2024

Hey @ZennXR thanks for following up on this.
Apology for the late reply on this, have been busy with working for some deadlines for the past two weeks.

Regarding your situation, it is really hard to debug what is happening from your end as I do not have access. I'm sure that there would be ways to overcome, as my script is essentially a browser emulator that can perform things that a normal browser can., i.e., should be able to access the videos.
However, working remotely and blindly is hard and I currently do not have valuable time to work on it.

Do you happen to know a bit about Python? I can let you know how my script works so that you can try to make the script works on uwa too.

from echo360.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.