Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can I run this without using Docker? #27

Open
DavidWalley opened this issue Sep 10, 2019 · 6 comments
Open

Can I run this without using Docker? #27

DavidWalley opened this issue Sep 10, 2019 · 6 comments

Comments

@DavidWalley
Copy link

I am trying to get LTI 1.3 working as simply as possible. Docker and docker-compose are two things I would rather not learn as they add to the time to get this working.

Please add some instructions for those of us trying to simplify.

@MartinLenord
Copy link
Collaborator

The code will work on its own if you already have apache/php on your machine. Just copy the src folder into your web directory and hit it from there.

The docker is advised because it prevents any issues with different configurations/versions of PHP. You can just run the one command in the readme

There is also a composer branch https://github.com/IMSGlobal/lti-1-3-php-library/tree/composer bit the branch is still experimental. There is an example of it being used here https://github.com/IMSGlobal/lti-1-3-php-library/blob/composer/src/game_example/composer.json

@DavidWalley
Copy link
Author

Thanks, but I have copied the src folder. What do you mean "hit it from there"? What URL do I hit?

Also, in the README, you say "This can be found in each example tool's code at db/configs/local.json. To configure your registration add a JSON object into the local.json file in the following format."
I cannot find local.json. Do I create it?

Sorry to be a pest, but your project might be the only working example of LTI 1.3 on the net, if I can get it to work.

@MartinLenord
Copy link
Collaborator

You will have to configure the tool into the platform you are testing with
The urls will likely be something like
OIDC Login URL http://localhost/game_example/login.php
LTI Launch URL http://localhost/game_example/game.php
Provided that everything is running on port 80
You will have to create the local.json. You can use the same format as https://github.com/IMSGlobal/lti-1-3-php-library/blob/master/src/game_example/db/configs/example.json or just edit that file too

Depending on which platform you are using, you may need to expose the tool over https. Something like ngrok is good for that if you don't have a server

@DavidWalley
Copy link
Author

DavidWalley commented Sep 12, 2019

I have created local.json, and set up ngrok. I have lots of questions and am looking for step-by-step documentation. Your example code looks promising, but I cannot continue unless there is some light at the end of this tunnel.

For some context - I am trying to implement LTI 1.3; I would like to inspect working code in any language; I know PHP 5, but do not intend on using it (so upgrading PHP, installing docker, composer, etc., is all just wasted time for me); I am looking for the minimal code that works.

So, in the hope that you won't abandon me, my questions are:

  • What do I do with the OIDC Login URL?
  • What do I do with LTI Launch URL?
  • In local.json, what is < issuer> if I am running on localhost?
  • What is <client_id>? What is "the aud"?
  • What is <auth_login_url>? I.e., is the platform's OIDC login endpoint the same as OIDC Login URL?
  • What is <auth_token_url>, the platform's service authorization endpoint?
  • What is <key_set_url>, i.e., the platform's JWKS endpoint?
  • What is <path_to_private_key>, i.e., what private key?
  • What is <deployment_id>? Is the second instance of <deployment_id> the same thing?
  • Is there a commit point that is simpler but works?
  • Is there documentation anywhere on the net for this?

@roy-at-binate
Copy link

@MartinLenord please answer this questions. I am also looking for a complete solution. And it would be better to have a Laravel package.

snake pushed a commit to snake/lti-1-3-php-library that referenced this issue Jan 19, 2022
Fix PHP notice that results from attempted access to uncached access …
@adydev15
Copy link

@MartinLenord please answer this questions. I am also looking for a complete solution. And it would be better to have a Laravel package.

@roy-at-binate
Did you find anything relative ? as i am also looking for solution to be integrated in Laravel .

@MartinLenord It would be good if we have some more detailed insights to utilize this on Laravel as well.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants